224 Commits

Author SHA1 Message Date
kma@webrtc.org
0221b78e2e Added run time ARM-Neon detection feature in SPL functions.
Review URL: https://webrtc-codereview.appspot.com/728010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2721 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-09-08 00:09:26 +00:00
kma@webrtc.org
3c1f96f279 Fixed several places for compiler warnings.
To reproduce, use compiler arm-linux-androideabi-gcc (GCC) 4.6.x-google 20120106 (prerelease).
Review URL: https://webrtc-codereview.appspot.com/762011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2712 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-09-06 16:20:03 +00:00
kma@webrtc.org
9b1cf54a4a Change the dependency of ARM code from on Android to on ARM.
Review URL: https://webrtc-codereview.appspot.com/759004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2699 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-09-03 21:22:28 +00:00
kma@webrtc.org
94771cb6a0 Change preprocessor define WEBRTC_ANDROID into WEBRTC_ARCH_ARM, for ARM platform depended code.
Review URL: https://webrtc-codereview.appspot.com/735010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2674 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-28 04:09:50 +00:00
kma@webrtc.org
7611791ade Added unit tests for several SPL macros/functions, and detailed all factors
contributing to bit-not-exact between ARM assembly and generic C versions
in iSAC and SPL, by code comments.
Review URL: https://webrtc-codereview.appspot.com/741004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2673 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-28 00:43:55 +00:00
kma@webrtc.org
afdcc2c845 Added unit test for a filter bank function in iSAC-Fix, with some optimization
in the assembly code.
Review URL: https://webrtc-codereview.appspot.com/754004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2670 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-27 23:54:13 +00:00
kma@webrtc.org
d81d906adf Fixed a bug in the C code in a filterbank function in iSAC-fix, and further optimized ARM code.
The bug was introduced in the last CL during optimization.

With the new inine ARM assembly, the resulted assembly code of the loop is 28 instructions, compared to 47 lines by the original.

The optimized (with WEBRTC_ARCH_ARM_V7A defined in This file) and un-optimized code (with WEBRTC_ARCH_ARM_V7A not defined in This file) are bit-exact.
Review URL: https://webrtc-codereview.appspot.com/748004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2651 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-22 05:13:09 +00:00
leozwang@webrtc.org
510c1e36fe Read ptypes.txt from /sdcard on android
BUG=
TEST=local
Review URL: https://webrtc-codereview.appspot.com/733011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2648 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-21 15:17:12 +00:00
tina.legrand@webrtc.org
ba46804417 Moving to use data files in resources, for ACM.
The files are removed in a separate CL.

BUG=issue737

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2625 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-17 10:38:28 +00:00
kma@webrtc.org
a15ea4965e Added isac WebRtcIsacfix_CalculateResidualEnergy() into dynamic Neon detection for
Android NDK platform.
Review URL: https://webrtc-codereview.appspot.com/722009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2621 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-16 15:43:57 +00:00
tina.legrand@webrtc.org
6b01bfdc92 Remove version function from ACM codec database.
BUG=461
TEST=audio_coding_module_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2619 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-16 08:17:32 +00:00
kma@webrtc.org
620a2563d0 Fixed a bug in Coverity (fileInstanceId=1323160).
Review URL: https://webrtc-codereview.appspot.com/724007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2616 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-15 16:49:16 +00:00
kma@webrtc.org
8e75e6092d Separated WebRtcIsacfix_PitchFilterCore() out from isac-fix pitch_filter.c into its
own files for generic C and ARMv6.
Also renamed file pitchfilter_armv6.S to pitch_filter_armv6.S, to be consistent with
others.
Review URL: https://webrtc-codereview.appspot.com/722008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2608 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-13 23:24:10 +00:00
kma@webrtc.org
de91bf7cdc Changed compiler assert code so that it can be used by both C and C++ source files.
Review URL: https://webrtc-codereview.appspot.com/733005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2597 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-11 00:13:25 +00:00
andrew@webrtc.org
6a16e74f9f Move iSAC -> isac.
BUG=none
TEST=trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2584 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-09 18:35:39 +00:00
kma@webrtc.org
ccb7cc6175 Added unittest for iSAC-Fix.
Only one function in this version.
Review URL: https://webrtc-codereview.appspot.com/713006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2575 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-08 18:26:19 +00:00
kma@webrtc.org
f388fcc67e Added dynamic Neon detect in isac-fix for Android NDK build, and thus fixed a build error in the last version.
Review URL: https://webrtc-codereview.appspot.com/726004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2567 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-07 01:20:51 +00:00
kma@webrtc.org
715509890c Added run time detection of Neon architecture in iSAC-fix.
Review URL: https://webrtc-codereview.appspot.com/715004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2563 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-06 21:04:34 +00:00
kma@webrtc.org
2d4c4ae553 Optimization of function CalculateResidualEnergy() for iSAC-fix in ARM Neon platforms.
Bit not exact with the previous version, but result quality is not worse.
Review URL: https://webrtc-codereview.appspot.com/687005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2559 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-03 21:46:05 +00:00
andrew@webrtc.org
686a731c18 Fix error when receiving an already sent timestamp from VoE.
BUG=issue715
TEST=automatic rapid switching between 32 kHz stereo and 16 kHz mono codecs in voe_cmd_test does not repro.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2547 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-02 03:26:14 +00:00
andrew@webrtc.org
d7a71d0719 Prepare to roll Chromium to 149181.
- This roll brings in VS2010 by default. The buildbots
  need updating (issue710).
- We'll roll to 149181 later (past current Canary) to fix
  a Mac gyp issue:
  https://chromiumcodereview.appspot.com/10824105
- Chromium is now using a later libvpx than us. We should
  investigate rolling our standalone build.
- Fix set-but-unused-warning
- Fix -Wunused-private-field warnings on Mac.

TBR=kjellander@webrtc.org
BUG=issue709,issue710
TEST=trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2544 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-01 01:40:02 +00:00
andrew@webrtc.org
f5a91fdfab Make some build settings more flexible.
BUG=issue676
TEST=trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2524 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-23 16:28:02 +00:00
andrew@webrtc.org
d41f59a23f Fix Mac-gcc warnings.
Resolves:
- warning: allocating zero-element array
- warning: suggest a space before ‘;’ or explicit braces around empty
  body in ‘for’ statement

BUG=none
TEST=build on Mac-gcc, trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2519 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-16 17:05:47 +00:00
turaj@webrtc.org
837bc7b44c ilbc: Make the decode input array const
Review URL: https://webrtc-codereview.appspot.com/667009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2518 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-14 00:34:54 +00:00
kma@webrtc.org
ff2f861c71 Corrected one error for Android build.
Also added iSAC in the default build in Android, to test any build errors in iSAC in platform build in buildbot.
Review URL: https://webrtc-codereview.appspot.com/684004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2505 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-10 21:37:49 +00:00
kma@webrtc.org
adf8ddf4aa Assembly coding for pitch filter in iSAC for ARMv6.
Review URL: https://webrtc-codereview.appspot.com/631004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2501 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-10 19:30:57 +00:00
kma@webrtc.org
e2c16a83bc Optimized a filter bank function in iSAC/fix for ARM.
Review URL: https://webrtc-codereview.appspot.com/631008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2500 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-10 17:59:44 +00:00
kma@webrtc.org
d2f71003af correct one build error in linux.
Review URL: https://webrtc-codereview.appspot.com/681005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2498 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-09 23:34:58 +00:00
kma@webrtc.org
72f8a6d77b Optimized PCorr2Q32() in iSAC with intrinsics in ARM Neon platform.
Review URL: https://webrtc-codereview.appspot.com/634004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2497 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-09 23:27:02 +00:00
turaj@webrtc.org
01ad75888a ilbc: Mark untouched input arrays as const
Review URL: https://webrtc-codereview.appspot.com/662004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2490 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-03 21:35:46 +00:00
turaj@webrtc.org
8d59e70434 In this CL four pitch-filters are integrated into a single function. I have kept the interfaces unchanged so there was no need to modify any other file. A test is uploaded to show how this CL is tested. The test engages all the functions affected by this CL and compares their output with the version of iSAC before this change. This CL is bit-exact. Furthermore, I ran iSAC release test and diff results with previous version. The test file will not be commited, as running it requires a hack in old iSAC to. Hence you don't need to code-review it.
test = bit-exact with previous version of iSAC verified by iSAC Release test and the test written specifically to test functions affected by this CL.
Review URL: https://webrtc-codereview.appspot.com/611004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2470 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-29 18:17:53 +00:00
tina.legrand@webrtc.org
3ddc974039 Handle VAD/DTX in a correct way if running stereo ACM.
BUG=issue573
TEST=audio_coding_module_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2449 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-27 09:25:50 +00:00
andrew@webrtc.org
4ecea3e105 Downmix before resampling in capture and render paths.
We previously had an error when a mono capture device was used with
a stereo codec. This is prevented by avoiding any remixing in
AudioProcessing. Instead, capture side downmixing is now done before
resampling. Upmixing can now be handled properly by AudioCoding,
since the AudioProcessing error condition has been removed.

On the render side, downmixing now occurs before resampling. Ideally
this would be handled still earlier in the chain. Similarly, downmixing
for the AudioProcessing reference data occurs before resampling. This
code has been refactored into RemixAndResample, with a comprehensive
unittest added in output_mixer_unittest.cc.

BUG=issue624
TEST=manually through voe_cmd_test, by using mono and stereo capture
and render devices with mono and stereo codecs. voice_engine_unittest,
voe_auto_test.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2448 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-27 03:25:31 +00:00
andrew@webrtc.org
81cf5e4752 Move test to src/test.
- Refer to top-level directories by <(DEPTH), e.g. <(DEPTH)/testing.
- Remove now unneeded third_party_root.

TBR=henrike@webrtc.org
BUG=none
TEST=trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2446 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-27 01:41:54 +00:00
henrike@webrtc.org
643be71700 Adds variable for third party directory.
BUG=348
TEST=Manual testing in Chrome and WebRTC workspace.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2439 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-25 10:48:58 +00:00
kma@webrtc.org
173538faa3 Refactored function WebRtcIsacfix_GetLpcCoef() in iSAC-fix.
One reason behind it is for further optimization of it in ARM.
Review URL: https://webrtc-codereview.appspot.com/646012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2429 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-20 17:17:15 +00:00
wu@webrtc.org
2259f855ea Remove unused member variables found by clang's -Wunused-private-field.
No intended behavior change.

On behavior of thakis@chromium.org.

BUG=
TEST=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2425 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-19 14:56:50 +00:00
bjornv@webrtc.org
b38fca1ec2 VAD Refactoring: API change of return value from int16_t to int.
This CL change the return int on Process() to meet Google Style. The change affects audio_coding and neteq.

Tests have been changed accordingly and the code has been tested on trybots, vad_unittests, audioproc_unittest, audio_coding_unittests, audio_coding_module_test and neteq_unittests.

BUG=None
TEST=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2423 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-19 11:03:32 +00:00
tina.legrand@webrtc.org
50d5ca5bf2 Refactoring of TestAllCodecs
ACM testing consists of seven individual tests. Up til now we haven't used gtest everywhere, and many of the tests needs some rewriting to follow the style guide.

I've started with this tests, doing formatting, adding the test as a separate test which can now either succeed of fail in a proper way.

Still to do in this test is handling of input file, but that will be changed in a separate CL, because all tests uses the  PCMFile class that will be affected by the change.

BUG=none
TEST=audio_coding_module_test, ACM_AUTO_TEST and ACM_TEST_ALL_CODECS.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2416 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-18 13:35:52 +00:00
tina.legrand@webrtc.org
5e7ca608d5 Use new fileutil functions for trace in ACM
I this CL I have changed to use filutil functions in the ACM tests. I have also reformated the file Tester.cc, and fixe one minor bug in TestAllCodecs.cc.

BUG=issue195
TEST=audio_coding_module_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2394 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-12 07:16:24 +00:00
tina.legrand@webrtc.org
fa7138f889 Change CriticalSectionScoped to use pointer constructor
BUG=issue183
TEST=audio_coding_module_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2384 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-08 10:51:28 +00:00
tina.legrand@webrtc.org
90af7f841c Changing Celt to run on 20 msec frames
BUG=none
TEST=-

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2377 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-07 08:57:27 +00:00
bjornv@webrtc.org
d2acea6b30 Minor style changes
Original CL=577007

Tested on trybots.

BUG=None
TEST=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2362 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-05 08:09:23 +00:00
turaj@webrtc.org
ba108aee21 This CL contains some refactoring. Spectrum coding is main place that is affected. Therefore, I have bit-exactness test, test_spectrum_
coding.c, to be sure about the changelist. You can go through the test to be sure the changes are tested. However, I don't intend to commi
t the test, as it would be a source of confusion and requires hack to iSAC to be able to run the test. It is basically a one-time test. 

The part which not covered in this test is where we limit payload for super-wideband bit-stream. I'll add a test for that as well. 

I kept format changes at minimum in all files except isac.c, which was in bad shape, and coding changes were minimum. I'm planning to uplo
ad following patches to this CL where I try to address formatting issues. But I don't intend to change variable names, for the moment. 

The refactoring is not yet finished, so you would find part of the code which could be cleaned up, especially KLT transforms in entropy_co
ding.c
Review URL: https://webrtc-codereview.appspot.com/580004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2359 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-04 20:04:58 +00:00
tina.legrand@webrtc.org
77fd39aa99 ACM PCM16B, fixing a copy-and-paste error.
Review URL: https://webrtc-codereview.appspot.com/631006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2355 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-04 11:47:49 +00:00
leozwang@webrtc.org
354b0ed015 Check return result of fwrite [Audio Module]
Description:
On ChromeOS/ARM, compiler enforces to check return result of a function.
Currently, we don't check return result of fwrite, it causes building errors.

The following files need to patch. The patch should be similar, before I patch all
of them, I will start with 2 files, please take a quick look, if the patch is OK,
I will continue and upload a new patch that covers all of them.
it to all of them.
Review URL: https://webrtc-codereview.appspot.com/566016

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2345 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-01 17:46:21 +00:00
kma@webrtc.org
c3b2683bf4 Refactored the pitch filter function in iSAC-fix. One important purpose is to prepare the function for assembly optimization in ARM platforms.
Note that,
(1) The main change is a new function PitchFilter() replacing a couple of common code blocks. Next step will be the assembly coding of this function in ARM.
(2) Resulted code is not bit exact with the original. The only reason is replacing two saturation blocks (lines 197 and 208) for the case of "type == 2" with the general case (line 147 and 159). The change makes the code more consistent, and I think the original code might just be a bug. I raised the issue in an email to Turaj and Bjorn last week.
Listening test might be needed. I will send the resulted files to Turaj for this purpose.
(3) I used Astyle to make the code more stylish, but didn't try extra effort to correct all the code style details.  Local code style consistency was considered for new code. So this is not a full and final refactor project (will leave that to future refactoring).
Review URL: https://webrtc-codereview.appspot.com/573009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2344 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-01 17:00:07 +00:00
tina.legrand@webrtc.org
5b4f36db88 ACM: Too short char vector
Revision 2340 failed on Linux Release, and the problem was that we allocated a too short vector for the output file name.

BUG=r2340 failed on Linux release
TEST=audio_coding_module_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2343 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-01 14:51:28 +00:00
tina.legrand@webrtc.org
4517585db5 Adding separate payload types for stereo modes
BUG=Issue 452
TEST=audio_coding_test, voe_auto_test, voe_cmd_test

Edit: adding Patrik to review:
src/modules/rtp_rtcp/source/rtp_receiver.cc
...and Shijing to review:
src/voice_engine/main/source/channel.cc
src/voice_engine/main/test/cmd_test/voe_cmd_test.cc

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2340 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-06-01 09:27:35 +00:00
andrew@webrtc.org
36ccce4f58 Remove documentation folders.
Review URL: https://webrtc-codereview.appspot.com/606007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2329 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-05-30 17:28:24 +00:00