andrew@webrtc.org
0a4ca8f0bb
Move internal aec_core defines out of header.
...
TBR=turaj@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1915004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4440 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 08:13:08 +00:00
kma@webrtc.org
f87177a757
To fix a bug in InverseFFTAndWindow() function in AECM.
...
It's a bufer overwritting issue, and thus Android AppRTCDemo app was broken (reported by Ami).
Tested with audioproc offline test. Bit-exact.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1889004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4415 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-26 23:43:33 +00:00
kma@webrtc.org
b6a6a24fda
Updated WebRtcNsx_PrepareSpectrumNeon() in accordance with the new real FFT interface in APM. For reference, you can check https://webrtc-codereview.appspot.com/1830004/diff/92001/webrtc/modules/audio_processing/ns/nsx_core.c , line 594 "static void PrepareSpectrumC()".
...
Tested with audioproc. Bit exact.
R=andrew@webrtc.org , johannkoenig@google.com
Review URL: https://webrtc-codereview.appspot.com/1859004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4411 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-26 16:24:34 +00:00
andrew@webrtc.org
61e596fc49
Add a Config class interface to AudioProcessing for passing options.
...
Pass the Config down to all AudioProcessing components.
Also add an EchoCancellationImplWrapper to optionally create different
EchoCancellationImpls.
BUG=2117
TBR=turaj@webrtc.org
TESTED=git try
Review URL: https://webrtc-codereview.appspot.com/1843004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4400 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-25 18:28:29 +00:00
kma@webrtc.org
fc8aaf02e1
Formalized Real 16-bit FFT for APM.
...
It also prepares for introducing Real 16-bit FFT Neon code from Openmax to SPL. CL https://webrtc-codereview.appspot.com/1819004/ takes care of that, but this CL is a prerequisite of that one.
Tested audioproc with an offline file. Bit exact.
R=andrew@webrtc.org , rtoy@google.com
Review URL: https://webrtc-codereview.appspot.com/1830004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4390 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-24 17:38:23 +00:00
henrike@webrtc.org
a950300b0e
Disables unit tests that don't work on Android for Android.
...
BUG=N/A
R=andrew@webrtc.org , kjellander@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1747004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4306 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-08 18:53:54 +00:00
pbos@webrtc.org
d900e8bea8
Proper spacing for end-of-namespace comments.
...
BUG=
R=mflodman@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1760006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 15:12:26 +00:00
pbos@webrtc.org
c66aaaf921
Rename unit_test.{cc,h} under module_unittest.
...
Squelches the following Windows trybot warning:
warning LNK4042: object specified more than once; extras ignored
BUG=
R=andrew@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1758004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4288 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 07:56:33 +00:00
henrike@webrtc.org
83cebb25d7
Removes unused main function that is poluting the build.
...
BUG=N/A
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1728005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4276 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-27 18:31:13 +00:00
kjellander@webrtc.org
63e988856e
Merge more tests into modules_{unit,integration}tests.
...
A new test target named 'modules_integrationtests' is created
and the following test targets were merged into it:
* audio_coding_module_test
* test_fec
* video_coding_integrationtests
* vp8_integrationtests
A couple of other targets were merged into modules_unittests:
* audio_coding_unittests
* audioproc_unittest
* common_unittests
* video_coding_unittests
* video_processing_unittests
* vp8_unittests
I wasn't able to merge audio_decoder_unittests and neteq_unittests due to
conflicts with different defines in these tests.
Some tests that have special requirements aren't merged into
modules_integrationtests yet. I took the opportunity to rename them
since the bot configs will need to be update anyway:
* audio_device_test_api -> audio_device_integrationtests
* video_capture_module_test -> video_capture_integrationtests
* video_render_module_test -> video_render_integrationtests
Exclude files were added for modules_integrationtests to make sure
the memcheck and tsan bots doesn't tests that are too slow
(audio_coding_module_test and vp8_integrationtests were previously
disabled on those bots).
Suppressions for AudioCodingModuleTest needed to be added to get
modules_integrationtests to pass memcheck (even if the test is
excluded from execution).
BUG=1843
TEST=local execution on Linux and trybots (passing except the merged tests of course)
R=andrew@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1656004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4228 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-14 20:09:44 +00:00
pbos@webrtc.org
8c34ceeef1
Include "gtest/gtest.h", not by full path, on WEBRTC_ANDROID_PLATFORM_BUILD
...
BUG=
TBR=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1571004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4119 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 09:24:03 +00:00
pbos@webrtc.org
7fad4b8c9f
Include files from webrtc/.. paths in audio_processing/
...
BUG=1662
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1559004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4116 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-28 08:11:59 +00:00
andrew@webrtc.org
342353780d
Consolidate common_audio into a single target.
...
In principle should reduce gyp processing time, but the difference was not measurable. In any case, it's a good simplification that aligns with having a single common_video target.
R=bjornv@webrtc.org , kma@webrtc.org , tina.legrand@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1375004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3928 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-30 23:43:26 +00:00
andrew@webrtc.org
dff69c56b0
Add AEC suppression level option to audioproc.
...
TBR=bjornv
Review URL: https://webrtc-codereview.appspot.com/1368007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3927 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-30 23:01:09 +00:00
andrew@webrtc.org
1acb3b33bc
Add comfort noise disabling and routing mode selection to audioproc.
...
TBR=bjornv
Review URL: https://webrtc-codereview.appspot.com/1358004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3907 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-26 00:39:27 +00:00
pbos@webrtc.org
b7192b8247
WebRtc_Word32 -> int32_t in audio_processing/
...
BUG=314
Review URL: https://webrtc-codereview.appspot.com/1307004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3809 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 07:50:54 +00:00
henrika@webrtc.org
19da719a5f
Resolves TSan v2 reports data races in voe_auto_test.
...
--- Note that I will add more fixes to this CL ---
BUG=1590
Review URL: https://webrtc-codereview.appspot.com/1286005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3770 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-05 14:34:57 +00:00
andrew@webrtc.org
c83a00ad49
Add some VoE and AudioProcessing mocks.
...
Includes a bit of shared helpers in fake_common.h.
Review URL: https://webrtc-codereview.appspot.com/1221004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3722 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-25 21:20:38 +00:00
kma@webrtc.org
31829a7baf
Fixed initialization of SPL in echo_control_mobile.
...
BUG=8403556 (a possible fix)
Review URL: https://webrtc-codereview.appspot.com/1220004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3687 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-19 00:25:01 +00:00
bjornv@webrtc.org
04ecd49ec5
Truncated delay quality to avoid negative return values
...
This forces the output of last_delay_quality to the interval [0, 1] in Q14.
BUG=none
TESTED=audioproc_unittest, trybot
Review URL: https://webrtc-codereview.appspot.com/1211004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3675 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-18 14:15:12 +00:00
kma@webrtc.org
33f22d01f0
Fixed a crash issue in NSX module.
...
Run time error message for function WebRtcNsx_PrepareSpectrumNeon(): "Bad access at: 0x4f535c: vst1.16{d16, d17, d18, d19}, [r2], r12"
Cause: "anaLen" was defined as int16_t and should have been read as such in assembly function WebRtcNsx_PrepareSpectrumNeon().
Fix: Changed anaLen's definition to int in the header file instead.
BUG=b/8382174
Review URL: https://webrtc-codereview.appspot.com/1202004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3669 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-14 21:44:12 +00:00
kma@webrtc.org
2951a6df4a
Fixed an assembly code error in AECM for ARMv7.
...
Possibly related to an AECM quality issue encountered at Chrome testing.
No bug was logged.
Review URL: https://webrtc-codereview.appspot.com/1160006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3631 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-07 18:25:34 +00:00
andrew@webrtc.org
52b57cc0d5
Fix debug file buffer bug introduced in r3574.
...
This correctly uses int16_t rather than float. Only affects the debug
file buffer, not the production code path.
TBR=bjornv
Review URL: https://webrtc-codereview.appspot.com/1162008
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3626 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-07 00:45:50 +00:00
bjornv@webrtc.org
91d11b3cdd
Adds new AEC API to audio_processing.
...
One unit test added.
Tested with audioproc_unittest and trybots
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1154004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3613 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-05 16:53:09 +00:00
bjornv@webrtc.org
7f95732fe2
AEC Refactoring: Removes lint warning
...
Changed inlude order.
TBR=andrew@webrtc.org
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1156004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3604 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-04 23:47:39 +00:00
andrew@webrtc.org
6be1e934ad
Properly error check calls to AudioProcessing.
...
Checks must be made with "!= 0", not "== -1". Additionally:
* Clean up the function calling into AudioProcessing.
* Remove the unused _noiseWarning.
* Make the other warnings bool.
BUG=chromium:178040
Review URL: https://webrtc-codereview.appspot.com/1147004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3590 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-01 18:47:28 +00:00
andrew@webrtc.org
78693fe37c
Return an error when greater than 16 kHz is used with AECM.
...
BUG=chromium:178040
Review URL: https://webrtc-codereview.appspot.com/1146005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3587 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-01 16:36:19 +00:00
bjornv@webrtc.org
132c15de30
AEC Refactoring:
...
* Adds pointer to low level AecCore struct.
* Adds a simple unit test of this new call.
Tested with audioproc_unittest, trybots
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1121006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3577 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-27 21:03:41 +00:00
kma@webrtc.org
83561fb173
Fixed a bug in WebRtcNsx_PrepareSpectrumNeon() for NS in ARM Neon platform.
...
No written bug report.
Tested with Nexus-S. Issue disappeared with the change.
Review URL: https://webrtc-codereview.appspot.com/1126006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3575 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-27 01:16:44 +00:00
andrew@webrtc.org
91f325586d
Refactor WebRtc_CreateBuffer to return the instance.
...
Review URL: https://webrtc-codereview.appspot.com/1140005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3574 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-27 00:35:06 +00:00
andrew@webrtc.org
9fbd9ca849
Force a memcpy directly from the AEC ring buffer.
...
Review URL: https://webrtc-codereview.appspot.com/1140004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3570 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-25 23:31:56 +00:00
andrew@webrtc.org
9ae1354e25
Refactor ring_buffer interface, add a feature and a test.
...
* Add a RingBuffer typedef.
* Add the ability to force a memcpy by passing a null ptr. In some cases,
we know we want a memcpy. This allows us to skip a potential
intermediate memcpy.
* Add a stress test.
Review URL: https://webrtc-codereview.appspot.com/1111004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3567 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-25 17:07:35 +00:00
kma@webrtc.org
2f9bd247ad
Ported assembly coding in APM from Android to iOS.
...
Bugs=none
Test=trybots, and offline file bit-exact tests.
Review URL: https://webrtc-codereview.appspot.com/1066009
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3563 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-23 04:16:59 +00:00
bjornv@webrtc.org
60f83131e4
AEC refactoring: Moved typedefs to _internal.h
...
* This was actually part of r3553
* Tested with audioproc_unittest, trybots
TBR=andrew@webrtc.org
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1118005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3556 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-21 16:12:24 +00:00
bjornv@webrtc.org
56a9ec30e9
Refactoring AEC: AecCore struct made private
...
* Added aec_core_internal.h for private variables.
* Moved aec_t struct to aec_core_internal.h
* Name change aec_t -> AecCore
* Moved additional declarations to aec_core_internal.h
* Tested with audioproc_unittest and trybots
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1117004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3553 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 22:38:47 +00:00
bjornv@webrtc.org
71e91f3b64
Refactor AEC: PowerLevel
...
* Style changes
* Tested with audioproc_unittest and trybots
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1116005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3551 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 19:24:50 +00:00
bjornv@webrtc.org
4d1cfae622
Added a pointer getter to the system_delay variable.
...
Tested with audioproc_unittest, trybots
TEST=None
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1101015
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3549 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 17:31:38 +00:00
bjornv@webrtc.org
47b274de44
Refactoring AEC: Added a SetConfigCore function
...
* Configuraion parameters now passed down the AEC Core struct.
* Tested with audioproc_unittest and on trybots.
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1098014
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3548 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 17:09:47 +00:00
bjornv@webrtc.org
716fd90ff2
Moved out buffer handling to ProcessFrame()
...
Tested with audioproc_unittest, trybots and verified bit exactness on recording data base.
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1110006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3547 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 16:59:41 +00:00
bjornv@webrtc.org
ee7202f7a4
Removed unused get_config function. The configuration is already stored and handled in the audio processing module, so there is no need for this functionality.
...
Tested with audioproc_unittest and on trybots.
TEST=none
BUG=none
Review URL: https://webrtc-codereview.appspot.com/1103016
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3546 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-20 16:36:59 +00:00
bjornv@webrtc.org
0a480cbe4d
Added getter for far_time_buf in AEC. Only used in AEC debug dump.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1110005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3539 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-19 21:41:27 +00:00
bjornv@webrtc.org
5fc829200c
This refactoring CL moves the nlp_mode member value from aecpc_t to aec_t, since it it never used at that level. Further, I removed two suppression variables by depending on nlp_mode directly.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1095007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3538 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-19 21:06:52 +00:00
bjornv@webrtc.org
cea70f4055
* Name change
...
* Removed WebRtcAec_ function name prepending on private function.
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1096012
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3537 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-19 21:03:10 +00:00
bjornv@webrtc.org
b4cd342eb9
This refactoring CL contains an API to get low level echo metrics stats.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1107007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3523 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-15 18:40:34 +00:00
bjornv@webrtc.org
21a2fc902d
This Cl includes
...
* A getter for echo_state
* Style changes, such as changes to int where appropriate
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1093011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3522 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-15 17:01:03 +00:00
bjornv@webrtc.org
325f625137
Moved the actual calculations to aec_core to avoid passing up low level members.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1103011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3521 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-15 15:21:02 +00:00
bjornv@webrtc.org
6f6acd9f80
Duplicated sampling frequency multiplier to aecpc_t struct to avoid a getter.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1099011
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3517 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-14 21:17:12 +00:00
bjornv@webrtc.org
7267ffde56
Moved debug file handling to aec_core from echo_cancellation.c. This removes dependency on low level member variables.
...
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1093010
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3515 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-14 17:56:23 +00:00
bjornv@webrtc.org
3e10249f20
Added delay estimation test to audio processing unit tests.
...
The test verifies that we get proper delay metrics when inserting delayed versions of the same file to far-end and near-end.
Failure of the test has been verified through a missmatch between AEC delay buffer size and test buffer size.
Also added a missing file rewind to another test and removed some lint warnings.
TEST=audioproc_unittest, trybots
BUG=None
Review URL: https://webrtc-codereview.appspot.com/1100004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3514 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-14 15:29:09 +00:00
kjellander@webrtc.org
00ab7cf4fd
Fix perf output for audioproc and iSAC fixed-point tests
...
The measurement and trace entries had been mixed up in the calls to webrtc::test::PrintResult, resulting in the plotted graphs were named after the metric. The parameter names are quite confusing which probably led to this.
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1093007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3496 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-11 12:33:03 +00:00