Commit Graph

227 Commits

Author SHA1 Message Date
c0ba4392f1 common_audio: Removes macro WEBRTC_SPL_SHIFT_W16
We should avoid macros in general (see style guide). This shift macro is not a severe one, since there is a check for negativity.

BUG=3348,3353
TESTED=trybots and manually
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15799004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6591 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-03 13:38:53 +00:00
38214d53db EchoCancellationImpl::ProcessRenderAudio: Use float samples directly
This patch lets EchoCancellationImpl::ProcessRenderAudio ask the given
AudioBuffer for float sample data directly, instead of asking for
int16 samples and then converting manually.

Since EchoCancellationImpl::ProcessRenderAudio takes a const
AudioBuffer*, it was necessary to add some const accessors for float
data to AudioBuffer.

R=aluebs@webrtc.org, andrew@webrtc.org, bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6590 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-03 09:47:33 +00:00
6d21ddca5f audio_processing/aec: Refactors NonLinearProcessing to prepare for NEON optimizations
Puts functionality necessary to calculate sub-band coherences into a function.

BUG=3131
TESTED=trybots
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/16789004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6570 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-01 10:03:42 +00:00
59adb1dcd7 Neon version of cftmdl_128()
The performance gain on a Nexus 7 reported by audioproc is ~2.3

The output is bit exact.

R=bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19829004

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6568 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30 19:34:33 +00:00
9825afc3bd Add ExperimentalNs support in Config
R=andrew@webrtc.org, xians@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17829004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6567 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30 17:39:53 +00:00
cd9b90ab53 Neon version of cft1st_128()
The performance gain on a Nexus 7 reported by audioproc is ~2%

See comments regarding the output.

R=bjornv@webrtc.org, cd@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/21679004

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6564 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30 12:05:18 +00:00
d5075bdbb5 Neon version of FilterFar()
The performance gain on a Nexus 7 reported by audioproc is ~3.5%.

The output is bit exact.

BUG=3131
TESTED=verified performance manually, passed trybots
R=bjornv@webrtc.org, cd@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12799005

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6535 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-25 12:15:46 +00:00
04fbc38c4a Neon version of ScaleErrorSignal()
The performance gain on a Nexus 7 reported by audioproc is ~4.7%

The output is NOT bit exact. Any difference seen is +-1.

BUG=3131
R=bjornv@webrtc.org, cd@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12779004

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6529 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-24 10:25:00 +00:00
f6d37de466 Fix array declarations in aec_core.c
Was causing warnings in Chromium such as:

warning C4742: 'WebRtcAec_overDriveCurve' has different alignment in 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core_sse2.c' and 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core.c': 4 and 16
warning C4744: 'WebRtcAec_overDriveCurve' has different type in 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core_sse2.c' and 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core.c': 'array (260 bytes)' and '__declspec(align(16)) array (260 bytes)'
warning C4742: 'WebRtcAec_weightCurve' has different alignment in 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core_sse2.c' and 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core.c': 4 and 16
warning C4744: 'WebRtcAec_weightCurve' has different type in 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core_sse2.c' and 'E:\src\buildbot\build\slave\fake_slave\build\src\third_party\webrtc\modules\audio_processing\aec\aec_core.c': 'array (260 bytes)' and '__declspec(align(16)) array (260 bytes)'

BUG=https://code.google.com/p/chromium/issues/detail?id=336620
R=andrew@webrtc.org, cd@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15869004

Patch from Sebastien Marchand <sebmarchand@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6525 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-23 22:40:58 +00:00
1227ab89a7 GN: Add BUILD.gn files + kjellander to OWNERS
This should work as a foundation for all the work that is
left to do to make the parts of WebRTC that Chromium uses
to build with GN.

I implemented some the smaller modules myself in this CL.
The remaining work (TODO's in the .gn files) will be distributed
to various team members.

I'm adding myself to OWNERS files for BUILD.gn files in all the
directories where I'm adding a BUILD.gn file.

BUG=3441
TEST=
Successful compilation of WebRTC as standalone:
gn gen out/Default --args="build_with_chromium=false" && ninja -C out/Default
gn gen out/Default --args="build_with_chromium=false is_clang=true clang_use_chrome_plugins=false" && ninja -C out/Default

I built successfully from a Chromium checkout (with
https://codereview.chromium.org/321313006/ applied) using:
gn gen out/Default && ninja -C out/Default webrtc

R=brettw@chromium.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6523 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-23 19:21:07 +00:00
b6ebe75806 Disables tests that breaks Android bots
BUG=
TBR=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15859004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6520 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-23 09:14:03 +00:00
304ca76be1 Revert 6481 and 6482
Revert 6482 "Update webrtc to fix unpack_lib expansion."
Revert 6481 "Update generated asm offsets scripts."

The roll has not been successful. Reverted based on the request of the
committer.


TBR=turaj

Review URL: https://webrtc-codereview.appspot.com/17759004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6495 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-19 17:08:46 +00:00
84f8ec1f9c Changes to tests and tools in audio_processing.
- Disables ApmTest.EchoCancellationReportsCorrectDelays
This test relys completely on the structure of how reported system delays are handled in AEC. In addition it assumes a fix setup of delay logging buffers. This test should be refactored.

- Adds flag to turn off reported_delay in audioproc
Now it is feasible to turn on and off the use of reported system delays.

BUG=N/A
R=aluebs@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/16749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6492 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-19 12:14:33 +00:00
5c3f4e3b0f Fixes and re-enables tests disabled on Android
Several tests were disabled in r6325 and r6326. Also, see issue 3445. This CL fixes the remaining four of the audio_processing related ones. Affects the tests:
- SystemDelayTest.CorrectDelayAfterStableBufferBuildUp
- SystemDelayTest.CorrectDelayDuringDrift
- SystemDelayTest.ShouldRecoverAfterGlitch
- ApmTest.EchoCancellationReportsCorrectDelays

The tests assumes reported delays are used, which now is explicitly set.

BUG=3445
TESTED=trybots
R=aluebs@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19769004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6489 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-19 09:51:29 +00:00
a19b930b5b Update webrtc to fix unpack_lib expansion.
Add on fix for:https://webrtc-codereview.appspot.com/12789004/

*NOTE* This CL will break the Android bots as they are built in a
Chromium checkout, which will pull in old libvpx DEPS. They will
cycle to green when we roll libvpx into Chromium. We must do the
rolls in this order because we have to land webrtc and libvpx at
the same time into Chromium.

BUG=377062
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/20729004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6482 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-18 19:20:45 +00:00
8f06a8aeb0 Update generated asm offsets scripts.
Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:278063
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
https://codereview.chromium.org/325313007/
https://codereview.chromium.org/346563002/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

*NOTE* This CL will break the Android bots as they are built in a
Chromium checkout, which will pull in old libvpx DEPS. They will
cycle to green when we roll libvpx into Chromium. We must do the
rolls in this order because we have to land webrtc and libvpx at
the same time into Chromium.

BUG=377062
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12789004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6481 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-18 17:38:08 +00:00
b947d954a5 Neon version of FilterAdaptation()
The performance gain on a Nexus 7 reported by audioproc is ~5.2%.

The output is bit exact.

Measured total of 15% speed gain on N7 compared to C.

R=bjornv@webrtc.org, cd@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17699004

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6480 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-18 14:55:49 +00:00
ec869bf781 Revert 6473 "Update generated asm offsets scripts."
The roll has not been successful. Reverted based on the request of the committer.

> Update generated asm offsets scripts.
> 
> Libvpx updated the unpack scripts to fix building dependencies.
> 
> Roll libvpx 269083:277778
> See https://codereview.chromium.org/295313002/
> https://codereview.chromium.org/298063002/
> https://codereview.chromium.org/305533008/
> https://codereview.chromium.org/305703002/
> https://codereview.chromium.org/298383003/
> https://codereview.chromium.org/302863004/
> https://codereview.chromium.org/320923003/
> https://codereview.chromium.org/325313007/
> for the libvpx changes.
> 
> See https://codereview.chromium.org/313243004/
> for the WebView changes.
> 
> *NOTE* This CL will break the Android bots as they are built in a
> Chromium checkout, which will pull in old libvpx DEPS. They will
> cycle to green when we roll libvpx into Chromium. We must do the
> rolls in this order because we have to land webrtc and libvpx at
> the same time into Chromium.
> 
> BUG=377062
> TBR=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/15809004

TBR=fgalligan@google.com

Review URL: https://webrtc-codereview.appspot.com/18589004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6475 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-17 19:07:56 +00:00
32196decd6 Update generated asm offsets scripts.
Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:277778
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
https://codereview.chromium.org/325313007/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

*NOTE* This CL will break the Android bots as they are built in a
Chromium checkout, which will pull in old libvpx DEPS. They will
cycle to green when we roll libvpx into Chromium. We must do the
rolls in this order because we have to land webrtc and libvpx at
the same time into Chromium.

BUG=377062
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15809004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6473 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-17 17:55:23 +00:00
b099a6f9ab Adds aluebs@webrtc.org as owner to audio_processing
BUG=N/A
TESTED=trybots
R=tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17709004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6445 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-16 10:30:58 +00:00
721f970cba common_audio: Removes macro WEBRTC_SPL_LSHIFT_U16
We should avoid macros in general (see style guide) and the shift ones are particular dangerous since they assume that the user apply a non-negative shift.

Related CL: https://webrtc-codereview.appspot.com/16669004

BUG=3348,3353
TESTED=trybots and manually on linux
R=turaj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19719004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6444 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-16 10:30:14 +00:00
af6f02f7bd Neon version of OverdriveAndSuppress()
audioproc reports the average frame time going from 279us to 255us with the test data used.

the output does not match the c version, but the difference seen is +-1.

Performance gain on Nexus7: 8.8%

BUG=3131
TESTED=trybots and manually
R=bjornv@webrtc.org, cd@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19539004

Patch from Scott LaVarnway <slavarnw@gmail.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6433 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13 14:50:23 +00:00
8e256eec4f Revert 6415 "Update generated asm offsets scripts."
> Update generated asm offsets scripts.
> 
> This is the same CL as https://webrtc-codereview.appspot.com/16629004/
> Relanding and TBR from previous lgtm.
> 
> Libvpx updated the unpack scripts to fix building dependencies.
> 
> Roll libvpx 269083:275816
> See https://codereview.chromium.org/295313002/
> https://codereview.chromium.org/298063002/
> https://codereview.chromium.org/305533008/
> https://codereview.chromium.org/305703002/
> https://codereview.chromium.org/298383003/
> https://codereview.chromium.org/302863004/
> https://codereview.chromium.org/320923003/
> for the libvpx changes.
> 
> See https://codereview.chromium.org/313243004/
> for the WebView changes.
> 
> *NOTE* This CL will break the Android bots as they are built in a
> Chromium checkout, which will pull in old libvpx DEPS. They will
> cycle to green when we roll libvpx into Chromium. We must do the
> rolls in this order becuase we have to land webrtc and libvpx at
> the same time into Chromium.
> 
> BUG=377062
> TBR=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/17689004

TBR=fgalligan@google.com

Review URL: https://webrtc-codereview.appspot.com/13709004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6423 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 23:03:17 +00:00
27f062ae6f Update generated asm offsets scripts.
This is the same CL as https://webrtc-codereview.appspot.com/16629004/
Relanding and TBR from previous lgtm.

Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:275816
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

*NOTE* This CL will break the Android bots as they are built in a
Chromium checkout, which will pull in old libvpx DEPS. They will
cycle to green when we roll libvpx into Chromium. We must do the
rolls in this order becuase we have to land webrtc and libvpx at
the same time into Chromium.

BUG=377062
TBR=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17689004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6415 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 14:59:28 +00:00
7e3d62d709 Revert 6411 "Revert 6407 "Revert 6405 "Update generated asm offs..."
Turns out the previous revert was based on invalid assumptions.
The libvpx in Chromium was reverted in 
http://chromegw.corp.google.com/viewvc/chrome?view=rev&revision=271259
which ends up with libvpx r269083. Therefore we should restore
that same libvpx revision for WebRTC, which this revert will do.

> Revert 6407 "Revert 6405 "Update generated asm offsets scripts.""
> 
> > Revert 6405 "Update generated asm offsets scripts."
> > 
> > TBR=fgalligan@google.com
> > BUG=N/A
> > 
> > Review URL: https://webrtc-codereview.appspot.com/20639004
> 
> TBR=henrike@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/15739004

TBR=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15749004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6413 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 11:07:07 +00:00
c01cc3d3a8 Revert 6407 "Revert 6405 "Update generated asm offsets scripts.""
> Revert 6405 "Update generated asm offsets scripts."
> 
> TBR=fgalligan@google.com
> BUG=N/A
> 
> Review URL: https://webrtc-codereview.appspot.com/20639004

TBR=henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15739004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6411 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 08:48:34 +00:00
286cd7683c Revert 6405 "Update generated asm offsets scripts."
TBR=fgalligan@google.com
BUG=N/A

Review URL: https://webrtc-codereview.appspot.com/20639004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6407 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 00:38:32 +00:00
4aeb94186a Update generated asm offsets scripts.
Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:275816
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

BUG=377062
R=andrew@webrtc.org, michaelbai@chromium.org

Review URL: https://webrtc-codereview.appspot.com/16629004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6405 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 17:12:51 +00:00
18026abd82 common_audio/signal_processing: Removes macro WEBRTC_SPL_RSHIFT_U16
This macro is only used at a few places and implies a cast to uint16_t before right shifting. All places already use uint16_t. Further, the amount of shifts applied in the macro has no sanity check for negativity, makes the macro dangerous to use.

BUG=3348,3353
TESTED=trybots and manually
R=kwiberg@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/16669004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6393 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 06:53:20 +00:00
3f83072c26 modules/audio_processing: Adds a config for reported delays
There are platforms and devices where the reported delays are untrusted and we currently solve that with an extended filter length and a slightly more conservative delay handling.
With this change we give the user the possibility to turn off reported system delay values completely.

- Includes new unit tests.

TESTED=trybots and manual testing
R=aluebs@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13629004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6391 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 04:48:11 +00:00
12cd443752 Noise suppression: Change signature to work on floats instead of ints
Internally, it already worked on floats. This patch just changes the
signature of a bunch of functions so that floats can be passed
directly from the new and improved AudioBuffer without converting the
data to int and back again first.

(The reference data to the ApmTest.Process test had to be modified
slightly; this is because the noise suppressor comes immediately after
the echo canceller, which also works on floats. If I truncate to
integers between the two steps, ApmTest.Process doesn't complain, but
of course that's exactly the sort of thing the float conversion is
supposed to let us avoid...)

BUG=
R=aluebs@webrtc.org, bjornv@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13519004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6385 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 11:13:09 +00:00
ed7edb8e89 Enables DelayCorrection tests
The fix has been done elsewhere and the test pass.

BUG=3445
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15679007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6371 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 10:02:05 +00:00
cb0ea43e57 audio_processing: Forces extended filter to be used in splitting filter test.
The behavior differ between "normal" and "extended" modes when using AEC. In the extended filter mode nothing is processed until we have received a farend frame. This is exactly what is needed in this part of the splitting filter test.
On Android, we do not use the normal mode, which made the test to fail.

BUG=3445
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12679004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6368 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 08:21:52 +00:00
b51d3ea593 Revert 6341 "Fixes and enables SystemDelayTests."
> Fixes and enables SystemDelayTests.
> 
> The root cause for failure was that the delay handling of reported delays was bypassed on Android, whereas the tests assumes that part of AEC to be run.
> This CL checks if it is in use.
> 
> BUG=3445
> R=kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/12689005

TBR=bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13589004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6343 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 13:41:33 +00:00
1f971b5788 Fixes and enables SystemDelayTests.
The root cause for failure was that the delay handling of reported delays was bypassed on Android, whereas the tests assumes that part of AEC to be run.
This CL checks if it is in use.

BUG=3445
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12689005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6341 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 10:58:55 +00:00
aafd7a88c5 The correct fix of workaround in r6261.
The CL also includes same changes to filterbanks.c in iSAC fix and aecm_core_c.c

BUG=3370,3395,3439
TESTED=trybots
R=fdegans@chromium.org, glaznev@webrtc.org, kwiberg@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6337 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 08:53:51 +00:00
147f4fe3c0 Disables SystemDelayTest.CorrectDelayDuringDrift on Android
Should have been part of https://webrtc-codereview.appspot.com/19629004/

BUG=3445
R=henrik.lundin@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/21599004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6326 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-04 13:17:58 +00:00
b616e1211f Disables some modules_unittests on Android.
BUG=3445
R=henrik.lundin@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19629004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6325 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-04 12:12:58 +00:00
8e4401b5a0 Reformat integer accessors to look like their float counterparts
The new format is at least as easy to read, and takes less space.

BUG=
R=aluebs@webrtc.org, bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/16539004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6311 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-03 10:04:13 +00:00
c0035a67a1 Remove an optimization that's no longer worth the extra complexity it causes
The data_ optimization was a way to operate on the data directly
instead of copying it, applicable in the mono, non-float case. Since a
few audio_processing steps are already using floats (with more
hopefully to come), we don't end up benefiting from the optimization
anyway, so we might as well remove it.

BUG=
R=aluebs@webrtc.org, bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15539004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6307 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-03 09:10:06 +00:00
2812b59acd Re-enables CommonFormats test for Android.
It seems like this was a one time only and not a flaky test.

BUG=3376
TESTED=trybots
R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15649005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6298 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-02 11:27:29 +00:00
6e732c6765 Revert 6272 "Update generated asm offsets scripts."
Revert since it fails webrtc-in-chromium Android bots.

> Update generated asm offsets scripts.
>
> Libvpx updated the unpack scripts to fix building dependencies.
>
> Roll libvpx 269083:273304
> See https://codereview.chromium.org/295313002/
> https://codereview.chromium.org/298063002/
> https://codereview.chromium.org/305533008/
> https://codereview.chromium.org/305703002/
> https://codereview.chromium.org/298383003/
> https://codereview.chromium.org/302863004/
> for the libvpx changes.
>
> BUG=377062
> R=andrew@webrtc.org, michaelbai@chromium.org
>
> Review URL: https://webrtc-codereview.appspot.com/12579008

TBR=fgalligan@google.com

Review URL: https://webrtc-codereview.appspot.com/12649004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6282 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-30 09:19:03 +00:00
2a8efa8971 Update generated asm offsets scripts.
Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:273304
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
for the libvpx changes.

BUG=377062
R=andrew@webrtc.org, michaelbai@chromium.org

Review URL: https://webrtc-codereview.appspot.com/12579008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6272 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-29 17:08:34 +00:00
f15c14be22 Echo canceler: Saturate output to guarantee it'll be in the allowed range
r6138 (https://webrtc-codereview.appspot.com/18399005/) somewhat
ill-advisedly removed the saturation step at the end of
aec_core.c:NonLinearProcessing(); this patch restores it.

BUG=
R=andrew@webrtc.org, bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/18479004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6263 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-28 11:47:08 +00:00
be4ab99a53 Disabling RealFFTTest.RealAndComplexMatch and AudioProcessingTest.Formats as they currently are broken with gcc 4.8.
BUG=3370
R=bjornv@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14569004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6197 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-20 12:42:01 +00:00
725e582461 Use the new gyp_var_prefix local variable set by gyp instead of the
global GYP_VAR_PREFIX set by the makefiles, since the latter is not
guaranteed to still be the same value at the time the command is
executed. Also, use abspath instead of realpath to convert paths to
absolute, since realpath expands to the empty string if the target file
doesn't exist, complicating build debugging.

BUG=
R=andrew@webrtc.org, torne@chromium.org

Review URL: https://webrtc-codereview.appspot.com/12559004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6186 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-16 17:56:10 +00:00
d5da25063c Revert "Revert "Audio processing: Feed each processing step its choice
of int or float data"

This reverts commit 6142.

R=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/17519004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6172 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-15 11:17:21 +00:00
21299d4e00 Remove the use of AudioFrame::energy_ from AudioProcessing and VoE.
We want to remove energy_ entirely as we've seen that carrying around
this potentially invalid value is dangerous.

Results in the removal of AudioBuffer::is_muted(). This wasn't used in
practice any longer, after the level calculation moved directly to
channel.cc

Instead, now use ProcessMuted() in channel.cc, to shortcut the level
computation when the signal is muted.

BUG=3315
TESTED=Muting the channel in voe_cmd_test results in rms=127.
R=bjornv@webrtc.org, kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/12529004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6159 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-14 19:00:59 +00:00
b1a66d166c Revert "Audio processing: Feed each processing step its choice of int or float data"
This reverts r6138.

tbr=kwiberg@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/13509004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6142 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-14 09:39:56 +00:00
934a265a47 Audio processing: Feed each processing step its choice of int or float data
Each audio processing step is given a pointer to an AudioBuffer, where
it can read and write int data. This patch adds corresponding
AudioBuffer methods to read and write float data; the buffer will
automatically convert the stored data between int and float as
necessary.

This patch also modifies the echo cancellation step to make use of the
new methods (it was already using floats internally; now it doesn't
have to convert from and to ints anymore).

(The reference data to the ApmTest.Process test had to be modified
slightly; this is because the echo canceller no longer unnecessarily
converts float data to int and then immediately back to float for each
iteration in the loop in EchoCancellationImpl::ProcessCaptureAudio.)

BUG=
R=aluebs@webrtc.org, andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/18399005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6138 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-14 09:01:35 +00:00