Commit Graph

17 Commits

Author SHA1 Message Date
8271d04009 This CL introduces the new functionality for setting
the APM parameters to the high-pass filter.

The introduction will be done in three steps:
1) This CL which introduces the new scheme and
 changes the code in webrtcvoiceengine.cc to use it.
2) Introduce the scheme into upstream code.
3) Remove the HighPassFilter interface in APM.

BUG=webrtc::6220, webrtc::6296, webrtc::6297, webrtc::6181, webrtc::5298

Review-Url: https://codereview.webrtc.org/2415403002
Cr-Commit-Position: refs/heads/master@{#15197}
2016-11-22 15:24:59 +00:00
dedaf1ced7 Modify audio_processing_unittest to use ResourcePath instead of ProjectRootPath.
Move the resources to //resources and upload them to Google Storage.

BUG=webrtc:6727

Review-Url: https://codereview.webrtc.org/2508943004
Cr-Commit-Position: refs/heads/master@{#15152}
2016-11-18 12:52:31 +00:00
3e9a537601 Original CL: https://codereview.webrtc.org/2433153003/, commit 8b8d3e4c30e8ea3846b58dfd36d1fd35a7799df4.
Revert CL: https://codereview.webrtc.org/2456333002/, commit 48dfab5c58119a4e65c52506ed55f8de79725bcf.

The new function on the APM interface is no longer pure virtual.

BUG=webrtc:6525
TBR=solenberg@webrtc.org,peah@webrtc.org

Review-Url: https://codereview.webrtc.org/2458993002
Cr-Commit-Position: refs/heads/master@{#14827}
2016-10-28 14:55:39 +00:00
48dfab5c58 Revert of New statistics interface for APM (patchset #11 id:200001 of https://codereview.webrtc.org/2433153003/ )
Reason for revert:
This CL breaks internal dependencies.

Original issue's description:
> New statistics interface for APM
>
> This adds functions to enable and retrieve statistics from APM. These functions are not yet called, which will happen in a follow-up CL.
>
> BUG=webrtc:6525
>
> Committed: https://crrev.com/8b8d3e4c30e8ea3846b58dfd36d1fd35a7799df4
> Cr-Commit-Position: refs/heads/master@{#14810}

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

Review-Url: https://codereview.webrtc.org/2456333002
Cr-Commit-Position: refs/heads/master@{#14814}
2016-10-28 10:29:37 +00:00
8b8d3e4c30 New statistics interface for APM
This adds functions to enable and retrieve statistics from APM. These functions are not yet called, which will happen in a follow-up CL.

BUG=webrtc:6525

Review-Url: https://codereview.webrtc.org/2433153003
Cr-Commit-Position: refs/heads/master@{#14810}
2016-10-28 08:32:24 +00:00
c19f312f54 This CL adds functionality in the level controller to
receive a signal level to use initially, instead of the
default initial signal level.

The initial form of the CL
(https://codereview.webrtc.org/2254973003/) was reverted
due to down-stream  dependencies. These have been resolved,
but the CL needed to be revised according to the new scheme
for passing parameters to the audio processing module.
Therefore, please review this CL as if it is new.

TBR=aleloi@webrtc.org
BUG=webrtc:6386

Review-Url: https://codereview.webrtc.org/2337083002
Cr-Commit-Position: refs/heads/master@{#14579}
2016-10-07 21:54:15 +00:00
470c0887b3 Fix modules_unittests on iOS.
Some of the module tests were failing on iOS, causing them to be ignored
on the trybots. Specifically this CL:
- Skips some tests that should not run on the simulator
- Fixes iOS file system test helpers
- Fixes failing nalu parser unittest

BUG=webrtc:4752
R=henrika@webrtc.org, peah@webrtc.org, sprang@webrtc.org
TBR=tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#14472}
2016-10-03 11:13:33 +00:00
77eab70470 Enable the -Wundef warning for clang
NOPRESUBMIT=true
BUG=webrtc:6398

Review-Url: https://codereview.webrtc.org/2358993004
Cr-Commit-Position: refs/heads/master@{#14425}
2016-09-29 00:42:08 +00:00
9e2be5f292 webrtc/modules/audio_processing: Use RTC_DCHECK() instead of assert()
Review-Url: https://codereview.webrtc.org/2320053003
Cr-Commit-Position: refs/heads/master@{#14211}
2016-09-14 12:23:29 +00:00
f4022ffa1a 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.

This change landed originally at: https://codereview.webrtc.org/1982183002/

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

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

Cr-Commit-Position: refs/heads/master@{#13371}
2016-07-02 00:19:32 +00:00
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
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
58530ed246 Updating APM unittests on the echo metrics.
There were a series of changes in the calculation of echo metrics. There changes made the existing unittests lose, e.g., EXPECT_EQ become EXPECT_NEAR. It is good time to protect the echo calculation more strictly.

The change is not simply generating a new reference file and change EXPECT_NEAR to EXPECT_EQ. It strengthens the test as well. Main changes are

1. the old test only sample a metric at the end of processing, while the new test takes metrics during the call with a certain time interval. This gives a much stronger protection.

2. added protection of a newly added metric, called divergent_filter_fraction.

3. as said, use EXPECT_EQ (actually ASSERT_EQ) instead of EXPECT_NEAR as much as possible, even for float point values. This may be too restrictive. But it can be good to be restrictive at the beginning.

BUG=

Review-Url: https://codereview.webrtc.org/1969403003
Cr-Commit-Position: refs/heads/master@{#12871}
2016-05-24 12:50:29 +00:00
c7a6569713 Revert of Disable failing modules_unittests for UBSan. (patchset #1 id:40001 of https://codereview.webrtc.org/1915813002/ )
Reason for revert:
Fix upstream should've landed in our repository.

Original issue's description:
> Disable failing modules_unittests for UBSan.
>
> BUG=webrtc:5820
> TBR=pbos@webrtc.org
>
> Committed: https://crrev.com/c23bf2e54d922486254cdd7657aafceaa958ce25
> Cr-Commit-Position: refs/heads/master@{#12482}

TBR=kjellander@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5820

Review-Url: https://codereview.webrtc.org/1937153002
Cr-Commit-Position: refs/heads/master@{#12647}
2016-05-06 19:50:08 +00:00
c23bf2e54d Disable failing modules_unittests for UBSan.
BUG=webrtc:5820
TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12482}
2016-04-25 04:43:20 +00:00
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
3eeb2e89b3 Moved the audioprocessing unittest to the audio_processing folder
where the other audioprocessing unittests are located.

BUG=webrtc:5298

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

Cr-Commit-Position: refs/heads/master@{#12343}
2016-04-13 11:10:09 +00:00