142 Commits

Author SHA1 Message Date
peah
b59ff8952f This CL provides improved parameter tuning for the level controller as well as some further minor changes.
It does:
-Handle saturations in a better manner by adding different gain change
step sizes for upwards and downwards changes, as well as when there
is saturation.
-Handle conditions with initial noise-only regions in a better way by
setting a high initial peak level estimate which is gradually reduced until
certainty about the peak level is achieved.
-Limit the maximum gain to limit noise amplification, and to reflect that it
initially is intended to be used in cascade with the fixed digital AGC mode.
-Lower the maximum allowed stationary noise floor to reduce the risk of
excessive noise amplification.
-Lower the target gain to reduce the risk of causing the AEC on the other
end to fail due to high playout levels triggering nonlinearities.
This also reduces the risk for saturation.
-Handle the noise-only regions in a better manner.

NOTRY=true
TBR=aleloi
BUG=webrtc:5920

Review-Url: https://codereview.webrtc.org/2111553002
Cr-Commit-Position: refs/heads/master@{#13350}
2016-06-30 16:19:41 +00:00
peah
ca4cac7e74 New module for the adaptive level controlling functionality in the audio processing module
NOTRY=true
TBR=aluebs@webrtc.org
BUG=webrtc:5920

Review-Url: https://codereview.webrtc.org/2090583002
Cr-Commit-Position: refs/heads/master@{#13333}
2016-06-29 22:26:19 +00:00
Alejandro Luebs
a3c51ea9f4 Revert "Pull out the PostFilter to its own NonlinearBeamformer API"
This reverts commit b983112bc7686ed4276def4c9215c498444c6bdd.

It was breaking dependencies.
TBR=aluebs@webrtc.org
BUG=

Review URL: https://codereview.webrtc.org/2110503002 .

Cr-Commit-Position: refs/heads/master@{#13316}
2016-06-28 17:38:41 +00:00
Alejandro Luebs
b983112bc7 Pull out the PostFilter to its own NonlinearBeamformer API
This is done to avoid having a nonlinear component in the AEC path.
Now the linear delay and sum is run before the AEC and the postfilter after it.

R=henrik.lundin@webrtc.org, peah@webrtc.org

Review URL: https://codereview.webrtc.org/1982183002 .

Cr-Commit-Position: refs/heads/master@{#13314}
2016-06-28 17:02:57 +00:00
tommi
a6219cc3ef FileWrapper[Impl] modifications and actually remove the "Impl" class.
This is a somewhat involved refactoring of this class. Here's an overview of the changes:

* FileWrapper can now be used as a regular class and instances allocated on the stack.
* The type now has support for move semantics and copy isn't allowed.
* New public ctor with FILE* that can be used instead of OpenFromFileHandle.
* New static Open() method.  The intent of this is to allow opening a file and getting back a FileWrapper instance.  Using this method instead of Create(), will allow us in the future to make the FILE* member pointer, to be const and simplify threading (get rid of the lock).
* Rename the Open() method to is_open() and make it inline.
* The FileWrapper interface is no longer a pure virtual interface.  There's only one implementation so there's no need to go through a vtable for everything.
* Functionality offered by the class, is now reduced.  No support for looping (not clear if that was actually useful to users of that flag), no need to implement the 'read_only_' functionality in the class, since file APIs implement that already, no support for *not* managing the file handle (this wasn't used).  OpenFromFileHandle always "manages" the file.
* Delete the unused WriteText() method and don't support opening files in text mode.  Text mode is only different on Windows and on Windows it translates \n to \r\n, which means that files such as log files, could have a slightly different format on Windows than other platforms.  Besides, tools on Windows can handle UNIX line endings.
* Remove FileName(), change Trace code to manage its own path.
* Rename id_ member variable to file_.
* Removed the open_ member variable since the same functionality can be gotten from just checking the file pointer.
* Don't call CloseFile inside of Write.  Write shouldn't be changing the state of the class beyond just attempting to write.
* Remove concept of looping from FileWrapper and never close inside of Read()
* Changed stream base classes to inherit from a common base class instead of both defining the Rewind method. Ultimately, Id' like to remove these interfaces and just have FileWrapper.
* Remove read_only param from OpenFromFileHandle
* Renamed size_in_bytes_ to position_, since it gets set to 0 when Rewind() is called (and the size actually does not change).
* Switch out rw lock for CriticalSection. The r/w lock was only used for reading when checking the open_ flag.

BUG=

Review-Url: https://codereview.webrtc.org/2054373002
Cr-Commit-Position: refs/heads/master@{#13155}
2016-06-15 17:30:18 +00:00
Alejandro Luebs
c9b0c26e0c Surface the IntelligibilityEnhancer on MediaConstraints
R=henrika@webrtc.org, peah@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1952123003 .

Cr-Commit-Position: refs/heads/master@{#12763}
2016-05-16 22:32:45 +00:00
aluebs
11d4a42ce5 Compensate for the compression gain in the IntelligibilityEnhancer
The render signal that reaches the IE is already normalized and compressed by an AGC on the far-end capture processing. Because the noise estimation is done before the AGC compression, we need to compensate for this gain in the IE to be able to compare these 2 powers.

Review-Url: https://codereview.webrtc.org/1913603002
Cr-Commit-Position: refs/heads/master@{#12549}
2016-04-28 21:58:38 +00:00
aluebs
eb3603bd5e Don't always downsample to 16kHz in the reverse stream in APM
The first approach landed here: https://codereview.webrtc.org/1773173002
But it was partially reverted, because it affected the AEC performance, here: https://codereview.webrtc.org/1867483003/
The main difference of this approach is that it doesn't use the 3-band splitting filter in the reverse stream, which seems to be the culprit of the AEC regression.
Also, the 2-band splitting filter has been used for the 32kHz case for a long time without any problem, and this is expanded in the CL to cover the 48kHz case as well.

BUG=webrtc:5725
TBR=tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1865633005

Cr-Commit-Position: refs/heads/master@{#12451}
2016-04-20 22:28:01 +00:00
peah
7789fe7ab1 Added a protobuf field for the audio processing module to store the status of temporary experimental features that
are active in the module and its submodules.

BUG=webrtc:5778, webrtc:5777

Review URL: https://codereview.webrtc.org/1886233003

Cr-Commit-Position: refs/heads/master@{#12371}
2016-04-15 08:19:47 +00:00
peah
c7bdf8a729 Added storing of the reverse output rate and number of channels in APM protobuf recordings.
Support for reading the newly added fields will be added in a another CL.

BUG=webrtc:5759, webrtc:5724

Review URL: https://codereview.webrtc.org/1878533002

Cr-Commit-Position: refs/heads/master@{#12316}
2016-04-11 14:05:56 +00:00
peah
423d236a54 As the ClosestNativeRate method returns the closest native
rate that is higher than the specified rate, and not
the closest native rate the need for a name change has been
raised. This CL addresses that.

BUG=webrtc:5298

Review URL: https://codereview.webrtc.org/1863023002

Cr-Commit-Position: refs/heads/master@{#12302}
2016-04-09 23:06:59 +00:00
peah
dc2242d351 Added a query function for whether submodules are enabled
that can be called from the render side without making APM
singlethreaded.

This CL is addressing the problems with high render-side
call duration that were triggered by the CL
https://codereview.webrtc.org/1844583003

BUG=webrtc:5736

Review URL: https://codereview.webrtc.org/1859243002

Cr-Commit-Position: refs/heads/master@{#12266}
2016-04-06 16:31:07 +00:00
peah
0bf612b3ec This CL is partially reverting the effects that
were added in https://codereview.webrtc.org/1773173002.

The reason for the revert is that for some scenarios
that CL causes problems in the coherence estimate used
in the AEC, which in turn causes echo leakage.

The reason for not reverting the actual CL is that
it would cause subsequent CLs to be reverted as well.
Therefore the choice was made to in this CK
instead revert the effects of that CL.

With the changes in this CL, the behavior is bitexact
to what it was before the CL mentioned above.

TBR=aluebs@webrtc.org

BUG=webrtc:5725

Review URL: https://codereview.webrtc.org/1867483003

Cr-Commit-Position: refs/heads/master@{#12259}
2016-04-06 09:47:52 +00:00
Alejandro Luebs
63a2c13d6d Only split into bands when the reverse stream is analyzed in the APM
BUG=596079
R=henrik.lundin@webrtc.org, peah@webrtc.org

Review URL: https://codereview.webrtc.org/1844583003 .

Cr-Commit-Position: refs/heads/master@{#12187}
2016-04-01 01:04:47 +00:00
aluebs
b031955770 Deprecate AudioProcessing::AnalyzeReverseStream(AudioFrame) API
Review URL: https://codereview.webrtc.org/1783693005

Cr-Commit-Position: refs/heads/master@{#12045}
2016-03-18 03:39:57 +00:00
aluebs
da116c4c37 Use ProcessReverseStream in VoiceEngines OutputMixer
Review URL: https://codereview.webrtc.org/1776363002

Cr-Commit-Position: refs/heads/master@{#12044}
2016-03-17 23:43:35 +00:00
aluebs
df6416aa50 Dont always downsample to 16kHz in the reverse stream in APM
TBR=tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1773173002

Cr-Commit-Position: refs/heads/master@{#12024}
2016-03-17 01:26:42 +00:00
aluebs
776593b139 Reland: Drop the 16kHz sample rate restriction on AECM and zero out higher bands
Landed originally here: https://codereview.webrtc.org/1774553002/
Revertede here: https://codereview.webrtc.org/1781893002/

TBR=solenberg@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1777093004

Cr-Commit-Position: refs/heads/master@{#12005}
2016-03-15 21:05:05 +00:00
peah
b58a158fce Removed the AudioProcessing dependency in EchoCancellerImpl.
This CL removes the dependency of AudioProcessing in
EchoCancellerImpl. It is breaking the public APM API by
having a different error code behavior so please review it
carefully. I made a comment about the API breaking change
in the code section of this CL.

BUG=webrtc:5337

Review URL: https://codereview.webrtc.org/1770823002

Cr-Commit-Position: refs/heads/master@{#11998}
2016-03-15 16:34:28 +00:00
peah
253534d1bd Removed the dependency on AudioProcessingImpl in EchoControlMobileImpl
BUG=webrtc:5351

Review URL: https://codereview.webrtc.org/1803433003

Cr-Commit-Position: refs/heads/master@{#11995}
2016-03-15 11:32:37 +00:00
peah
b8fbb54291 Removed the dependency on AudioProcessingImpl in GainControlImpl
BUG=webrtc:5353

Review URL: https://codereview.webrtc.org/1801003002

Cr-Commit-Position: refs/heads/master@{#11994}
2016-03-15 09:28:12 +00:00
peah
737f4b8d12 Removed the ProcessingComponent class
BUG=

Review URL: https://codereview.webrtc.org/1772553002

Cr-Commit-Position: refs/heads/master@{#11950}
2016-03-11 07:05:37 +00:00
peah
bfa971198d Removed the dependency in GainControlImpl on the ProcessingComponent class
BUG=webrtc:5353

Review URL: https://codereview.webrtc.org/1768943002

Cr-Commit-Position: refs/heads/master@{#11949}
2016-03-11 05:09:11 +00:00
peah
bb9edbd048 Removing dependency of the EchoControlMobileImpl class on ProcessingComponent.
BUG=webrtc:5351

Review URL: https://codereview.webrtc.org/1772453002

Cr-Commit-Position: refs/heads/master@{#11945}
2016-03-10 20:56:50 +00:00
perkj
dfc2870380 Revert of Drop the 16kHz sample rate restriction on AECM and zero out higher bands (patchset #3 id:40001 of https://codereview.webrtc.org/1774553002/ )
Reason for revert:
Breaks Android it looks like.
See your own try jobs and
https://build.chromium.org/p/client.webrtc/builders/Android32%20Tests%20%28L%...

Original issue's description:
> Drop the 16kHz sample rate restriction on AECM and zero out higher bands
>
> The restriction has been removed completely and AECM now supports any
> number of higher bands. But this has been achieved by always zeroing out the
> higher bands, instead of applying a constant gain which is the average over half
> of the lower band (like it is done for the AEC), because that would be
> non-trivial to implement and we don't want to spend too much time on AECM, since
> we want to get rid of it in the long term anyway.
>
> R=peah@webrtc.org, solenberg@webrtc.org, tina.legrand@webrtc.org
>
> Committed: https://crrev.com/f687d53aabee0523ce6e9e0636163af8df120e41
> Cr-Commit-Position: refs/heads/master@{#11931}

TBR=peah@webrtc.org,turaj@webrtc.org,tina.legrand@webrtc.org,solenberg@webrtc.org,aluebs@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.webrtc.org/1781893002

Cr-Commit-Position: refs/heads/master@{#11932}
2016-03-10 00:23:32 +00:00
Alex Luebs
f687d53aab Drop the 16kHz sample rate restriction on AECM and zero out higher bands
The restriction has been removed completely and AECM now supports any
number of higher bands. But this has been achieved by always zeroing out the
higher bands, instead of applying a constant gain which is the average over half
of the lower band (like it is done for the AEC), because that would be
non-trivial to implement and we don't want to spend too much time on AECM, since
we want to get rid of it in the long term anyway.

R=peah@webrtc.org, solenberg@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1774553002 .

Cr-Commit-Position: refs/heads/master@{#11931}
2016-03-09 15:38:09 +00:00
Alex Luebs
57ae82929a Convert IntelligibilityEnhancer to multi-threaded mode
BUG=581029
R=henrik.lundin@webrtc.org, peah@webrtc.org, turaj@webrtc.org

Review URL: https://codereview.webrtc.org/1766383002 .

Cr-Commit-Position: refs/heads/master@{#11929}
2016-03-09 15:24:41 +00:00
Alex Luebs
5b830fed07 Drop the restriction on same forward and reverse sample rate on the AudioFrame interface of the APM
R=peah@webrtc.org

Review URL: https://codereview.webrtc.org/1766233003 .

Cr-Commit-Position: refs/heads/master@{#11913}
2016-03-08 17:00:08 +00:00
aluebs
4c279b852c Drop 48kHz sample rate support in the APM for ARM architecture
The 3-band splitting filter is highly complex on this architecture. Today this is not a problem, because on those platforms we mostly use AECM which forces us to downsample to 16kHz anyway, but this is a way of guarding against it. In the long term we want to optimize the 3-band splitting filter for ARM architectures, but for now we can just disable it.

Review URL: https://codereview.webrtc.org/1766103002

Cr-Commit-Position: refs/heads/master@{#11900}
2016-03-08 09:48:25 +00:00
asapersson
a2c58e2198 Switch to use new implementation in metrics.h for gathering statistics.
Sparse macro replaced for all audio histograms that have a constant name.

BUG=webrtc:5283

Review URL: https://codereview.webrtc.org/1762863003

Cr-Commit-Position: refs/heads/master@{#11885}
2016-03-07 09:53:08 +00:00
peah
b624d8c852 Removed the inheritance from ProcessingComponent for EchoCancellerImpl.
BUG=webrtc:5352

Committed: https://crrev.com/3af0a009f8a7f2dfb630a4f4730044cbbd95bee8
Cr-Commit-Position: refs/heads/master@{#11876}

Review URL: https://codereview.webrtc.org/1761813002

Cr-Commit-Position: refs/heads/master@{#11881}
2016-03-05 11:01:22 +00:00
solenberg
92586f08e5 Revert of Removed the inheritance from ProcessingComponent for EchoCancellerImpl. (patchset #4 id:60001 of https://codereview.webrtc.org/1761813002/ )
Reason for revert:
Breaks all bots, e.g. https://uberchromegw.corp.google.com/i/client.webrtc/builders/Android32%20Builder/builds/6356/steps/compile/logs/stdio

Looks like a missing rebase before landing. Resolve and try again.

Original issue's description:
> Removed the inheritance from ProcessingComponent for EchoCancellerImpl.
>
> BUG=webrtc:5352
>
> Committed: https://crrev.com/3af0a009f8a7f2dfb630a4f4730044cbbd95bee8
> Cr-Commit-Position: refs/heads/master@{#11876}

TBR=solenberg@webrtc.org,peah@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5352

Review URL: https://codereview.webrtc.org/1764293002

Cr-Commit-Position: refs/heads/master@{#11877}
2016-03-04 20:29:08 +00:00
peah
3af0a009f8 Removed the inheritance from ProcessingComponent for EchoCancellerImpl.
BUG=webrtc:5352

Review URL: https://codereview.webrtc.org/1761813002

Cr-Commit-Position: refs/heads/master@{#11876}
2016-03-04 20:13:38 +00:00
peah
20028c49c9 Removing the use of the soon-to-be-removed echo_cancellation_impl
api function that directly returns aec_core.

BUG=webrtc:5201

Review URL: https://codereview.webrtc.org/1695743004

Cr-Commit-Position: refs/heads/master@{#11875}
2016-03-04 19:51:03 +00:00
kwiberg
c2b785df5d Replace scoped_ptr with unique_ptr in webrtc/common_audio/
(This is a re-land---without the real_fourier.h changes---of 11716, which was reverted in 11726.)

BUG=webrtc:5520

Review URL: https://codereview.webrtc.org/1731153002

Cr-Commit-Position: refs/heads/master@{#11742}
2016-02-24 13:22:40 +00:00
peah
8df5d4f15b Moved the AEC C code to be built using C++.
In order for the change to be reviewable, the
move was made into two steps consisting of the
first two patches in this CL.

Step 1 (patch set 1):
-Changed file types to use .cc
-Changed buildfiles to use the new files
-Changed C code inclusion to properly match the changed
 file formats (removed and added extern "C" declarations).
-Changed implicit void-> nonvoid casts that are
 illegal in C++ to be explicit.

Step 2 (patch set 2):
-Changed all the warnings reported when uploading the CL.
-The warnings about formatting of the assembly optimized
 code were not addressed though.

BUG=webrtc:5201

Review URL: https://codereview.webrtc.org/1713923002

Cr-Commit-Position: refs/heads/master@{#11727}
2016-02-23 22:35:03 +00:00
kjellander
e80f9d0218 Revert of Replace scoped_ptr with unique_ptr in webrtc/common_audio/ (patchset #4 id:60001 of https://codereview.webrtc.org/1712513002/ )
Reason for revert:
Breaks downstream compilation using webrtc/common_audio/real_fourier.h. Let's chat tomorrow on how to coordinate a re-land.

Original issue's description:
> Replace scoped_ptr with unique_ptr in webrtc/common_audio/
>
> BUG=webrtc:5520
>
> Committed: https://crrev.com/79d7a499c0c3e1de8f5ad1138236f0386701053f
> Cr-Commit-Position: refs/heads/master@{#11716}

TBR=henrik.lundin@webrtc.org,kwiberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5520

Review URL: https://codereview.webrtc.org/1726043002

Cr-Commit-Position: refs/heads/master@{#11726}
2016-02-23 21:33:39 +00:00
kwiberg
79d7a499c0 Replace scoped_ptr with unique_ptr in webrtc/common_audio/
BUG=webrtc:5520

Review URL: https://codereview.webrtc.org/1712513002

Cr-Commit-Position: refs/heads/master@{#11716}
2016-02-23 09:26:52 +00:00
Alejandro Luebs
18fcbcf48c Use VAD to get a better speech power estimation in the IntelligibilityEnhancer
R=henrik.lundin@webrtc.org, turaj@webrtc.org

Review URL: https://codereview.webrtc.org/1693823004 .

Cr-Commit-Position: refs/heads/master@{#11713}
2016-02-22 23:57:45 +00:00
peah
253d8fa82c Simplified the function for detecting whether capture data is modified.
BUG=

Review URL: https://codereview.webrtc.org/1701843004

Cr-Commit-Position: refs/heads/master@{#11704}
2016-02-22 10:00:13 +00:00
kwiberg
88788adcfd Replace scoped_ptr with unique_ptr in webrtc/modules/audio_processing/
BUG=webrtc:5520

Review URL: https://codereview.webrtc.org/1710483002

Cr-Commit-Position: refs/heads/master@{#11684}
2016-02-19 15:04:56 +00:00
peah
be61562bfb Moved the GainControlForNewAGC class to be a separate file.
Apart from being motivated in order to make the source files shorter
this is needed when separating the APM submodules structs into
separate files.

BUG=

Review URL: https://codereview.webrtc.org/1678813002

Cr-Commit-Position: refs/heads/master@{#11611}
2016-02-14 00:40:53 +00:00
aluebs
c466badd86 Using the NS noise estimate for the IE
Review URL: https://codereview.webrtc.org/1672343002

Cr-Commit-Position: refs/heads/master@{#11559}
2016-02-10 20:03:05 +00:00
kjellander
78ddd733b0 Update path for audioproc_debug proto output.
This will make it align with protoc tools that use the relative
path from the project root to the files in the output path.
Having this, no hacks will need to be applied downstream.

TBR=henrik.lundin@webrtc.org
NOTRY=True

Review URL: https://codereview.webrtc.org/1673263002

Cr-Commit-Position: refs/heads/master@{#11540}
2016-02-09 16:13:16 +00:00
ivoc
d66b44d565 Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
Original review: https://codereview.webrtc.org/1413483003/

The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.

TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
BUG=webrtc:4741
Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
Cr-Commit-Position: refs/heads/master@{#11093}

Review URL: https://codereview.webrtc.org/1540103002

Cr-Commit-Position: refs/heads/master@{#11267}
2016-01-15 11:06:41 +00:00
Peter Kasting
6955870806 Convert channel counts to size_t.
IIRC, this was originally requested by ajm during review of the other size_t conversions I did over the past year, and I agreed it made sense, but wanted to do it separately since those changes were already gargantuan.

BUG=chromium:81439
TEST=none
R=henrik.lundin@webrtc.org, henrika@webrtc.org, kjellander@webrtc.org, minyue@webrtc.org, perkj@webrtc.org, solenberg@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

Review URL: https://codereview.webrtc.org/1316523002 .

Cr-Commit-Position: refs/heads/master@{#11229}
2016-01-13 00:26:55 +00:00
aluebs
b2328d11dc Remove additional channel constraints when Beamforming is enabled in AudioProcessing
The general constraints on number of channels for AudioProcessing is:
num_in_channels == num_out_channels || num_out_channels == 1

When Beamforming is enabled and additional constraint was added forcing:
num_out_channels == 1

This artificial constraint was removed by adding upmixing support in CopyTo, since it was already supported for the AudioFrame interface using InterleaveTo.

Review URL: https://codereview.webrtc.org/1571013002

Cr-Commit-Position: refs/heads/master@{#11215}
2016-01-12 04:32:32 +00:00
aluebs
2a34688f86 Make Beamforming dynamically settable for Android platform builds
Review URL: https://codereview.webrtc.org/1563493005

Cr-Commit-Position: refs/heads/master@{#11213}
2016-01-12 02:04:33 +00:00
asapersson
53805324c0 Rename RTC_HISTOGRAM_* macros to RTC_HISTOGRAM_*_SPARSE_* to indicate that these are for infrequent updates.
This implementation will be replaced by a faster one and sparse will be removed.

BUG=webrtc:5283

Review URL: https://codereview.webrtc.org/1530913002

Cr-Commit-Position: refs/heads/master@{#11099}
2015-12-21 09:46:25 +00:00
ivoc
a4df27b671 Revert of Reland "Added option to specify a maximum file size when recording an AEC dump." (patchset #2 id:20001 of https://codereview.webrtc.org/1541633002/ )
Reason for revert:
Compile error on Android needs to be fixed before relanding.

Original issue's description:
> Reland "Added option to specify a maximum file size when recording an AEC dump.", commit ae2c5ad12afc8cc29fe9c59dea432b697b871a87.
>
> The revert of the original CL was commit 36d4c545007129446e551c45c17b25377dce89a4.
> Original review: https://codereview.webrtc.org/1413483003/
>
> The original CL changes a function on audio_processing.h that is used by Chrome, this CL adds back the old function.
>
> NOTRY=true
> TBR=glaznev@webrtc.org, henrik.lundin@webrtc.org, solenberg@google.com, henrikg@webrtc.org, perkj@webrtc.org
> BUG=webrtc:4741
>
> Committed: https://crrev.com/f4f5cb09277d5ef6aeac8341e5f54a055867803a
> Cr-Commit-Position: refs/heads/master@{#11093}

TBR=glaznev@webrtc.org,henrik.lundin@webrtc.org,solenberg@google.com,henrikg@webrtc.org,perkj@webrtc.org,kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4741

Review URL: https://codereview.webrtc.org/1537213002

Cr-Commit-Position: refs/heads/master@{#11094}
2015-12-19 18:14:18 +00:00