e65d9d974c
Fix an unitialized variable warning.
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/35819004
Patch from Sebastien Marchand <sebmarchand@chromium.org >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8118 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-21 22:05:12 +00:00
c78d81ae89
Re-land "Support 48kHz in AEC"
...
Doing something similar for the band 16-24kHz to what is done for the band 8-16kHz. The only difference is that there is no comfort noise added in this band. Could not test how this sounds because there are no aecdumps with 48kHz sample rate as nfar as I know.
Tested for 32kHz sample rate and the output is bitexact with how it was before this CL.
Original: https://webrtc-codereview.appspot.com/28319004/
Reverted: https://webrtc-codereview.appspot.com/33949004/
BUG=webrtc:3146
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/41549004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8116 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-21 19:10:55 +00:00
e81c5d6d7e
Fix TransientDetectorTest in modules_unittests on Android ARM64
...
BUG=webrtc:4200
R=kjellander@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/39569004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8115 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-21 18:01:28 +00:00
ee0c100d54
Revert 8080 "Support 48kHz in AEC"
...
> Support 48kHz in AEC
>
> Doing something similar for the band 16-24kHz to what is done for the band 8-16kHz. The only difference is that there is no comfort noise added in this band. Could not test how this sounds because there are no aecdumps with 48kHz sample rate as nfar as I know.
> Tested for 32kHz sample rate and the output is bitexact with how it was before this CL.
>
> BUG=webrtc:3146
> R=andrew@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/28319004
TBR=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/33949004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8100 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-20 10:22:49 +00:00
a32d15448d
Disable tests failing on Android ARM64 (Nexus9).
...
BUG=4198,4199,4200
TBR=andrew@webrtc.org
TESTED=Printed using #pragma message to check that the define was properly used.
Review URL: https://webrtc-codereview.appspot.com/33919004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8090 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-19 12:46:01 +00:00
64d3c4b9ac
Support 48kHz in AEC
...
Doing something similar for the band 16-24kHz to what is done for the band 8-16kHz. The only difference is that there is no comfort noise added in this band. Could not test how this sounds because there are no aecdumps with 48kHz sample rate as nfar as I know.
Tested for 32kHz sample rate and the output is bitexact with how it was before this CL.
BUG=webrtc:3146
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28319004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8080 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 19:52:05 +00:00
d82f55d2a7
Only adapt AGC when the desired signal is present
...
Take the 50% quantile of the mask and compare it to certain threshold to determine if the desired signal is present. A hold is applied to avoid fast switching between states.
is_signal_present_ has been plotted and looks as expected. The AGC adaptation sounds promising, specially for the cases when the speaker fades in and out from the beam direction.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28329005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8078 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 18:07:21 +00:00
5a92b78e86
Add beamforming to audioproc_float utility.
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/41469004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8069 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 01:28:36 +00:00
6b6301588e
Move ring_buffer to common_audio.
...
In preparation for adding a C++ wrapper in common_audio. Also, change
the return type of Init to void and call it from Create.
R=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/37619004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8068 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-15 00:09:53 +00:00
2ebfac5649
Remove COMPILE_ASSERT and use static_assert everywhere
...
COMPILE_ASSERT is no longer needed now that we have C++11's
static_assert.
R=aluebs@webrtc.org , andrew@webrtc.org , hellner@chromium.org , henrike@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/39469004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8058 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 10:51:54 +00:00
86e1e487e7
Move system_wrappers.gyp files to the proper directory.
...
Build targets should not refer to non-subpaths as was happening before when
source/system_wrappers.gyp refers to ../interface/ files.
R=kjellander@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/37609004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8057 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 09:30:52 +00:00
d6e84d9d13
Always copy processed audio to output buffer in ProcessStream.
...
In the old AudioFrame ProcessStream API, input and output buffers were shared.
Now that the buffers are distinct, the input must be copied to the
output even when no processing occurred.
R=andrew@webrtc.org
Committed: https://code.google.com/p/webrtc/source/detail?r=78de5010d167d1e375e05d26177aad43c2e2de08
Review URL: https://webrtc-codereview.appspot.com/41459004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8052 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-14 01:33:54 +00:00
3df38b442f
Unify the two copies of compile_assert.h
...
This patch basically deletes webrtc/base/compile_assert.h (which is
the more outdated copy) and moves
webrtc/system_wrappers/source/compile_assert.h to take its place.
R=aluebs@webrtc.org , andrew@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36719004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8048 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-13 11:37:48 +00:00
46323b3786
Remove useless AudioProcessing::Create() overload.
...
R=aluebs@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36739004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8046 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-13 06:48:06 +00:00
a7add19cf4
audio_processing: Replaced macro WEBRTC_SPL_MUL_16_16 with * in high_pass_filter
...
The macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) ((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definition on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_armv7.h and common_audio/signal_processing/include/spl_inl_mips.h)
The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
BUG=3348,3353
TESTED=locally on Mac and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/37569004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8044 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 21:12:29 +00:00
a525c98ca5
Fix parallelizability in ApmTests.
...
Using temporary filenames instead of fixed ones permits them to run in
parallel.
BUG=chromium:445880
R=andrew@webrtc.org , kjellander@webrtc.org
TEST=third_party/gtest-parallel/gtest-parallel -r100 -w100 out-asan/out/Debug/modules_unittests --gtest_filter=*ApmTest*:*CommonFormats*
Review URL: https://webrtc-codereview.appspot.com/35709004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8041 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-12 17:31:18 +00:00
2693a54614
Add WEBRTC_BEAMFORMER define to BUILD.gn
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/38559004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8034 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 23:26:13 +00:00
758d6d431e
audio_processing/aecm: Removed usage of macro WEBRTC_SPL_MUL_16_16
...
The macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) ((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definition on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_armv7.h and common_audio/signal_processing/include/spl_inl_mips.h)
The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
BUG=3348, 3353
TESTED=locally on Mac and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36639004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8025 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-08 17:52:56 +00:00
dec649cbab
audio_processing/ns: Replaced WEBRTC_SPL_MUL_16_16 macro with *
...
The macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) ((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definition on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_armv7.h and common_audio/signal_processing/include/spl_inl_mips.h)
The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
BUG=3348, 3353
TESTED=locally on Mac and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/35619004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8024 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-08 17:34:33 +00:00
5e5b32706a
audio_processing/agc: Removed usage of macro WEBRTC_SPL_MUL_16_16 in legacy/agc
...
The macro is in C defined as
#define WEBRTC_SPL_MUL_16_16(a, b) ((int32_t) (((int16_t)(a)) * ((int16_t)(b))))
(For definition on ARMv7 and MIPS, see common_audio/signal_processing/include/spl_inl_armv7.h and common_audio/signal_processing/include/spl_inl_mips.h)
The replacement consists of
- avoiding casts to int16_t if inputs already are int16_t
- adding explicit cast to <type> if result is assigned to <type> (other than int or int32_t)
BUG=3348, 3353
TESTED=locally on Mac and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/39389004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8023 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-08 17:25:34 +00:00
fb7a039e9d
Use array geometry in Beamformer
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/35559004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8000 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-05 21:58:58 +00:00
e5a921a82d
Use tmp files in file_utils_unittests
...
The static file names were breaking when executing tests in parallel. This fixes it.
BUG=4138
R=andrew@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/34639004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7997 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-05 18:45:22 +00:00
bac0012120
Extend delay estimation window in AEC to 500 ms on all platforms
...
On non-Android the delay estimator in audio_processing/aec has solely been used for logging purposes. The maximum possible observed delay has been 236 ms. We have seen longer delays for which the delay estimate at best ends up at 236 ms, but can also be 'random'. reported delays are clamped to 500 ms.
This cl extends the delay estimation window to match that.
BUG=4086, 3504, 4113
TESTED=locally on Linux and trybots
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36569004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7989 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-02 09:23:49 +00:00
3a70625caf
audio_processing: Added back ATTRIBUTE_UNUSED lost in r7877
...
BUG=N/A
TESTED=Now it builds with aec_debug_dump=1 on Mac
TBR=pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/35629004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7986 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-01 22:04:12 +00:00
ae643ce280
Wire up Beamformer in AudioProcessing
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/38449004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7969 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-19 19:57:34 +00:00
0c39e91cc8
Merge beamformer
...
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/34529004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7958 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 22:22:04 +00:00
1090a6eccf
Remove obsolete target_arch == armv7.
...
Also, use arm_version >= 7 so things will continue to work when building
for ARMv8 and higher targets.
BUG=3906
R=kjellander@webrtc.org , tkchin@webrtc.org , zhongwei.yao@arm.com
Review URL: https://webrtc-codereview.appspot.com/38379004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7957 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 21:36:18 +00:00
f832a6d090
Remove _t from function pointer typedefs.
...
_t are reserved in POSIX.
R=bjornv@webrtc.org
BUG=162
Review URL: https://webrtc-codereview.appspot.com/34539004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7947 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 09:56:09 +00:00
e468bc9e60
Rename _t struct types in audio_processing.
...
_t names are reserved in POSIX.
R=bjornv@webrtc.org
BUG=162
Review URL: https://webrtc-codereview.appspot.com/34509005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7943 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 09:11:33 +00:00
08df9b2841
Add a manageable command-line tool for AudioProcessing.
...
This is the start of a replacement for the venerable and unwieldly
process_test.cc (aka audioproc). It will be limited to:
- Reading WAV or aecdebug protobuf files.
- Calling the float AudioProcessing interface.
- Requiring aecdebug files for running bi-directional stream
components (e.g. AEC).
This initial version only handles WAV files.
R=aluebs@webrtc.org , bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/35479004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7918 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 20:57:15 +00:00
cf6d0b64ef
Add 48kHz support to AGC
...
Doing the same for the 16-24kHz band than was done in the 8-16kHz.
Results look and sound as nice.
Originally reviewed here:
https://webrtc-codereview.appspot.com/26339004/
BUG=webrtc:3146
R=andrew@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28299004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7917 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 20:56:09 +00:00
451a133f44
Add AGC manager tests.
...
R=bjornv@webrtc.org
BUG=4098
Review URL: https://webrtc-codereview.appspot.com/35539005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7914 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 14:48:47 +00:00
b395a5ea65
audio_processing: Moved legacy AGC code to webrtc/modules/audio_processing/agc/legacy/
...
include/ is renamed to legacy/ and analog_agc.* and digital_agc.* moved into the directory.
BUG=
R=andrew@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36479004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7909 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-16 10:38:10 +00:00
96a626262a
Remove 20ms support in AGC
...
Today, 10ms is the standard chunk length used in whole AudioProcessing, so this was only adding unnecessary complexity and maintainance.
Removing it doesn't change the bahavior in any use case of today.
R=andrew@webrtc.org , bjornv@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28249004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7904 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 21:54:50 +00:00
a7f77720cb
Merge in AGC manager and AGC tools.
...
R=bjornv@webrtc.org
BUG=4098
Review URL: https://webrtc-codereview.appspot.com/37379004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7902 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 16:33:16 +00:00
3440fe1bc5
Use webrtc_root instead of DEPTH for iSAC.
...
Un-breaks chromium.webrtc.fyi. Broken as Chromium doesn't have webrtc/
checked out in root.
TBR=bjornv@webrtc.org ,tommi@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/28289004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7897 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 10:56:50 +00:00
788acd17ad
Merge audio_processing changes.
...
R=aluebs@webrtc.org , bjornv@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/32769004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7893 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-15 09:41:24 +00:00
27d106bcf7
Move the downmixing out of AudioBuffer
...
This provides more flexibility if some component in AudioProcessing wants to operate before downmixing.
Now the AudioProcessing does only track the processing rate, but not the processing number of channels. This is tracked by the AudioBuffer itself and can be changed at any time to one smaller or equal the input number of channels. For each chunk it is reset to input number of channels and the end it should be equal to the output number of channels.
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28169004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7879 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-11 17:09:21 +00:00
5f162c8509
Merge AEC changes.
...
R=bjornv@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/34459004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7877 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-11 13:46:59 +00:00
c5ebbd98f5
Support 48kHz in Noise Suppression
...
Doing the same for the 16-24kHz band than was done in the 8-16kHz.
Results look and sound as nice.
BUG=webrtc:3146
R=andrew@webrtc.org , bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/29139004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7865 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-10 19:30:57 +00:00
d1fac61e8f
Remove need for assembly offset generation in aecm and ns module.
...
All *neon.S files in aecm and ns modules have been removed. We need no
assembly offset generation now.
Pass byte to byte conformance test for aecm and ns test in audioproc
between new NEON (written in intrinsics) version and C version on both
ARMv7 and ARM64.
BUG=3580
R=andrew@webrtc.org , jridges@masque.com
Change-Id: I05d43d0c04d00bead65ca8c8fda25f0a42394b2b
Review URL: https://webrtc-codereview.appspot.com/32229004
Patch from Zhongwei Yai <zhongwei.yao@arm.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7800 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-03 17:54:38 +00:00
a7384a1126
Simplify audio_buffer APIs
...
Now there is only one API to get the data or the channels (one const and one no const) merged or by band.
The band is passed in as a parameter, instead of calling different methods.
BUG=webrtc:3146
R=andrew@webrtc.org , bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/27249004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7790 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-03 01:06:35 +00:00
1751ee7d32
Remove -flax-vector-conversions flag for ARM NEON building.
...
Pass compilation on both ARMv7 and ARM64. The generated
binary (audioproc) is byte to byte (with symbol striped) same as
before. The output of audioproc -aecm is also byte to byte same between
C and NEON version on ARMv7 and ARM64.
Change-Id: Ibdf40fe085f6bad1311f59bf9318bbcf37dd7ce5
BUG=3850
R=andrew@webrtc.org , jridges@masque.com
Review URL: https://webrtc-codereview.appspot.com/30239004
Patch from Zhongwei Yao <zhongwei.yao@arm.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7783 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-02 19:36:14 +00:00
ac68ef9ad4
Clear 2 unused functions in audio processing aecm module.
...
unused functions:
WebRtcAecm_WindowAndFFTNeon
WebRtcAecm_InverseFFTAndWindowNeon
BUG=3580
R=andrew@webrtc.org
Change-Id: I12c50a8706d40f9ea98208b5733c00ede7b1f435
Review URL: https://webrtc-codereview.appspot.com/30269004
Patch from Zhongwei Yao <zhongwei.yao@arm.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7782 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-02 18:33:52 +00:00
cc144deaab
Make bands vector in SplittingFilter Analysis const
...
BUG=webrtc:3146
R=kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/30229004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7761 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-28 00:26:27 +00:00
8789376cd3
Move ChannelBuffer class to channel_buffer file
...
No change in functionallity.
BUG=webrtc:3146
R=andrew@webrtc.org , bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/28109004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7760 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-27 23:40:25 +00:00
79b9eba3ab
Implement 3 band splitting filter bank by upsampling and splitting twice into 2 bands
...
Implemented the 3 bands splitting filter bank by:
1. Upsample by 4/3.
2. Split twice into 2 bands.
3. Discard upper most band, because it is empty anyway.
A unittest was also implemented:
1. Generate a signal from presence or absence of sine waves of different frequencies.
2. Split into 3 bands and check their presence or absence.
3. Recombine the bands.
4. Calculate delay (as it is an IIR it depends on frequency).
5. Check that the cross correlation of input and output is high enough at that delay.
BUG=webrtc:3146
R=andrew@webrtc.org , bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/31029004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7754 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-26 20:21:38 +00:00
a56a2c57cf
Enabling building with NEON on ARM64
...
This patch enables NEON on ARM64 platform. Passed building both on
Android ARMv7 and Android ARM64.
BUG=3580
R=andrew@webrtc.org , jridges@masque.com
Review URL: https://webrtc-codereview.appspot.com/25069004
Patch from Zhongwei Yao <zhongwei.yao@arm.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7751 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-26 17:01:40 +00:00
1153322cf8
Build fix for MIPS Android Webview build.
...
Excluding optimizations to support MIPS32R6 platform for Android Webview build (see also https://code.google.com/p/webrtc/source/detail?r=7580 ).
R=andrew@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/32459004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7729 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-21 16:28:32 +00:00
087da13fe8
Add empty 3 band splitting filter API
...
This is only an empty API that will never be used. For now is 48kHz not supported in AudioProcessing. For that it needs to be added in InitializeLocked. But before the 3 band filter bank needs to be populated.
BUG=webrtc:3146
R=bjornv@webrtc.org , kwiberg@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/30139004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7715 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-17 23:01:23 +00:00