Commit Graph

121 Commits

Author SHA1 Message Date
leozwang@webrtc.org
9165f1fe91 Changed to use std::sort
Review URL: https://webrtc-codereview.appspot.com/356003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1488 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-20 01:39:13 +00:00
tina.legrand@webrtc.org
d71a11c15e Fixing Coverity issues in Audio Coding Module
10198: Out-of-bounds read in acm_isac.cc
10251: Unintended sign extension in acm_resampler.cc
10273: Uninitialized pointer field in acm_amr.cc
10274: Uninitialized pointer field in acm_amrwb.cc
10275: Uninitialized scalar field in acm_dtmf_detection.cc
10276: Uninitialized pointer field in acm_g722.cc
10277: Uninitialized pointer field in acm_g7221.cc
10278: Uninitialized pointer field in acm_g7221c.cc
10279: Uninitialized pointer field in acm_g729.cc
10280: Uninitialized pointer field in acm_g7291.cc
10281: Uninitialized pointer scalar in acm_generic_codec.cc
10282: Uninitialized pointer field in acm_gsmfr.cc
10283: Uninitialized scalar field in acm_isac.cc
10284: Uninitialized pointer field in acm_opus.cc
10285: Uninitialized scalar field in acm_resampler.cc
10286: Uninitialized pointer field in acm_speex.cc
10287: Uninitialized scalar field in audio_coding_module_impl.cc
10581: Unintended sign extension in audio_coding_module_impl.cc

Additional change: removed unused function and member from ACMResampler.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1471 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-19 13:22:22 +00:00
bjornv@webrtc.org
ab2bb82ac9 VAD refactor: int return value for Init.
For consistency and as part of style, the return value of WebRtcVad_Init() has been changed to int.

Impact:
 1) audio_processing, audio_coding, a test in CNG, functionTest in audio_conference_mixer, a test in net_eq all used int values. Hence, unaffected.
 2) Function pointers in net_eq changed.
 3) The VADInit in neteq/dsp.c boiled down to typecast into int anyhow, which now is removed.

TEST=vad_unittests, neteq_unittests
Review URL: https://webrtc-codereview.appspot.com/355003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1453 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-18 14:51:02 +00:00
andrew@webrtc.org
975e4a33c6 Fix gcc warnings triggered by -Wextra.
TEST=build and audio_coding_unittests and audio_coding_module_test on Linux

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1445 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-17 19:27:33 +00:00
henrik.lundin@webrtc.org
33d5f69d5e Fix issue 218 with new solution
This one is slightly more elegant and efficient.

BUG=http://code.google.com/p/webrtc/issues/detail?id=218
TEST=

Review URL: http://webrtc-codereview.appspot.com/344009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1420 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-13 07:46:50 +00:00
henrik.lundin@webrtc.org
053c7991e3 Add minimum waiting time to NetEQ metrics
Adding minWaitingTimeMs to ACMNetworkStatistics and to
NetworkStatistics. Also adding unittest.

TEST=audio_coding_unittests

Review URL: http://webrtc-codereview.appspot.com/350006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1408 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-12 14:16:44 +00:00
kjellander@webrtc.org
7f3c724e12 Renaming 47 files from .cpp to .cc
In addition to our naming guidelines, this will cause these files to get parsed by Sonar, and to make searching/grepping the source using file extensions easier in the future.

BUG=
TEST=Compiling on Linux.

Review URL: http://webrtc-codereview.appspot.com/348005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1405 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-12 10:23:41 +00:00
andrew@webrtc.org
83c7f6db0e Add missing file to iSAC gyp.
TBR=kma@webrtc.org
TEST=Linux build

Review URL: http://webrtc-codereview.appspot.com/344008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1394 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-11 20:16:32 +00:00
andrew@webrtc.org
921321ff62 Fix unused-variable warning in iSAC.
TBR=kma@webrtc.org
TEST=build on Linux

Review URL: http://webrtc-codereview.appspot.com/348006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1393 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-11 19:50:20 +00:00
kma@webrtc.org
badf2b8044 Optimized an AR function in iSAC fix for ARMv7 (not Neon) platforms.
Bit exact. Speed doubled.
Review URL: http://webrtc-codereview.appspot.com/327001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1392 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-11 18:01:39 +00:00
tina.legrand@webrtc.org
6b6ff558a8 Implementation if mono-to-stereo and vice versa in ACM.
Added stereo-to-mono and mono-to-stereo tests to end of TestStereo.cpp.

BUG=Aim to resolve issue 207, "Investigate stereo capture handling in modules"
TEST=audio_coding_module_test

Review URL: http://webrtc-codereview.appspot.com/345002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1385 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-11 10:12:54 +00:00
tina.legrand@webrtc.org
ac4eb046e3 Added registration of RED and CNG to NetEq slave.
Bug found when working on issue 221. Missing registration of CNG was the cause of the bad audio (master and slave out of sync) reported in the issue.

NOTE! File has not been refactored to follow Google style.

BUG=http://code.google.com/p/webrtc/issues/detail?id=221

Review URL: http://webrtc-codereview.appspot.com/342006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1372 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-10 13:59:55 +00:00
henrik.lundin@webrtc.org
d4e8c0b3ff Fixing Issue 218
Taking care of the case when the raw waiting times vector from
NetEQ is zero length.

Also adding a new unittest to cover this case.

BUG=http://code.google.com/p/webrtc/issues/detail?id=218
TEST=AcmNetEqTest.TestZeroLengthWaitingTimesVector

Review URL: http://webrtc-codereview.appspot.com/349003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1370 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-10 13:46:06 +00:00
kma@webrtc.org
746f9e31c0 Changed build settings for ARMv5 in Android.
I found some issues in building ARMv5 with ICM. This CL includes fixes,
and a design change which now will exclude any NEON libraries unless 
the build is for dynamic detection or for Neon specifically.
Review URL: http://webrtc-codereview.appspot.com/330021

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1335 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 17:47:57 +00:00
henrik.lundin@webrtc.org
d047b2e7f6 Enabling NetEQ unittest for more platforms
Removing platform limitations for NetEqDecodingTest:TestBitExactness
and NetEqDecodingTest:TestNetworkStatistics. New reference files
where provided in revision 6 of the resources, which allows us
to enable these tests.

BUG=
TEST=neteq_unittests linux32/64, win32/64, mac32

Review URL: http://webrtc-codereview.appspot.com/329027

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1332 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 16:10:23 +00:00
pwestin@webrtc.org
c450a19669 Removed Version function from all modules.
TBR=henrik_a
Review URL: http://webrtc-codereview.appspot.com/329023

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1330 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 15:00:12 +00:00
henrik.lundin@webrtc.org
d439870473 Adding two new network metrics to NetEQ
Clock-drift (in parts-per-million) and peaky-jitter mode status.
Both metrics are propagated to the VoE API. Tests are added
in the NetEQ unittests, and to some extent in ACM unittests
and VoE tests.

Introducing a proper translation between structs NetworkStatistics
and ACMNetworkStatistics.

Note: The file neteq_network_stats.dat in resources must be updated
for the unittests to pass.

Review URL: http://webrtc-codereview.appspot.com/337005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1328 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 13:09:55 +00:00
turaj@webrtc.org
a574b1c617 The inline implementation of WebRtcIsac_lrint(), which was implemented in several files, is now os_specific_inline.h. Define guards are modified according to WebRtc OS macros.
This resolves BUG=issue137.
Review URL: http://webrtc-codereview.appspot.com/269014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1323 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-04 02:26:23 +00:00
henrik.lundin@webrtc.org
6c877363f7 Fix formatting for some NetEQ test tools
Format and lint for RTPchange.cc, RTPcat.cc and RTPanalyze.cc.

Review URL: http://webrtc-codereview.appspot.com/329024

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1313 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-03 10:03:19 +00:00
pwestin@webrtc.org
ebcb6421b1 Cleaned up leaky symbols in G722.
Review URL: http://webrtc-codereview.appspot.com/333017

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1287 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:20:06 +00:00
pwestin@webrtc.org
d8f8b32521 Cleaned up leaky symbols in iSAC.
Review URL: http://webrtc-codereview.appspot.com/329014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1286 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-22 12:19:43 +00:00
kjellander@webrtc.org
5490c71a1b Converted to gtest, writing output files properly and no longer uses exceptions.
This test now runs and fails as a gtest should (previously it always
exited with 0 even if the tests failed).
The audio_coding_module_test target no longer uses exceptions in the generated project.
Output files are written to our global output folder, using
testsupport/fileutils.h.

BUG=
TEST=audio_coding_module_test on all platforms, in Debug+Release

Review URL: http://webrtc-codereview.appspot.com/334004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1266 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-21 13:34:18 +00:00
henrik.lundin@webrtc.org
dbba1f969f Packet waiting-time statistics
Adding new statistics API to NetEQ, reporting the waiting time
for each frame. The output is raw waiting time for the frames
that have been decoded since the last statistics report (or
maximum 100 frames). The statistics are reset on each query.

Implemented functionality in ACM to query NetEQ for the raw
waiting times, and process it to produce max, average and
median.

Updating common_types.h and VoiceEngine tests to include the
new metrics.

Unit tests are also added for NetEQ and AcmNetEq.

Review URL: http://webrtc-codereview.appspot.com/328011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1251 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 15:45:05 +00:00
tina.legrand@webrtc.org
5efcad1758 We used the wrong syntax for "new", which generated a warning/error building with clang.
Review URL: http://webrtc-codereview.appspot.com/336003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1241 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-20 09:05:55 +00:00
tina.legrand@webrtc.org
398af2337b Solving issue 178, errorbuild warnings on Mac.
This CL continues the work of solving issue 178. A small change in one file.
Review URL: http://webrtc-codereview.appspot.com/330006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1227 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-19 07:36:07 +00:00
tina.legrand@webrtc.org
9775a30859 Added variable to catch return value.
Review URL: http://webrtc-codereview.appspot.com/329004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1218 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-16 11:15:46 +00:00
tina.legrand@webrtc.org
554ae1ad4e Changes to solve warnings on Mac, issue #178.
Review URL: http://webrtc-codereview.appspot.com/320005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1216 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-16 10:09:04 +00:00
kma@webrtc.org
ee36b9587d corrected android makefile for isac build.
Review URL: http://webrtc-codereview.appspot.com/321013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1200 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-15 00:18:45 +00:00
kma@webrtc.org
6a17340db5 Review URL: http://webrtc-codereview.appspot.com/318014
git-svn-id: http://webrtc.googlecode.com/svn/trunk@1197 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 22:16:57 +00:00
kma@webrtc.org
a30093bb85 Added one file associated with check in in r1192.
Review URL: http://webrtc-codereview.appspot.com/320012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1194 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 19:57:23 +00:00
kma@webrtc.org
f0a964dc0a Optimized WebRtcIsacfix_NormLatticeFilterMa() function for iSAC fix for ARM Neon
architecture with intrinsics and assembly code. The total iSAC codec speech improved
about 3~5%.

Notes
(1) The Neon version after this optimization is not bit-exact with the generic
C version. The out quality, however, is not worse as verified by test vectors ouput,
and undertandably in theory (32bit x 32bit in Neon is more accurate than the approximation
C code in the generic version).
(2) In Android, a isac neon library will be built. Along with some new function structures,
it is partly for preparation of introducing a run time detection of Neon architecture soon.
Review URL: http://webrtc-codereview.appspot.com/268016

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1192 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 18:59:43 +00:00
kma@webrtc.org
6601902504 Introduced WebRtcSpl_SatW32ToW16 to iSAC fix, for Android platforms.
Review URL: http://webrtc-codereview.appspot.com/315005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1190 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 18:41:07 +00:00
leozwang@webrtc.org
f147bbc878 Change codec test app lib dependency from webrtc lib to codec library
Review URL: http://webrtc-codereview.appspot.com/317009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1189 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-14 18:22:41 +00:00
henrik.lundin@webrtc.org
6198624815 Remove warnings on Mac (Issue 178)
Remove an if-else that can never execute the else statement.
Remove double parenthesis.

BUG=http://code.google.com/p/webrtc/issues/detail?id=178
TEST=

Review URL: http://webrtc-codereview.appspot.com/318004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1146 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-09 13:58:17 +00:00
henrik.lundin@webrtc.org
d03718d1e4 Use ResourcePath in NetEQ unittest
Review URL: http://webrtc-codereview.appspot.com/320001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1130 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-08 11:42:43 +00:00
henrik.lundin@webrtc.org
598ad06432 Fixing compiler warning in NetEQ
With some compiler settings, a warning was issued for NetEQ,
saying that pw16_randVec was accessed out of bounds.
This did never happen in practice, but this change makes the
compiler understand this.

Review URL: http://webrtc-codereview.appspot.com/309001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1121 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-07 11:52:09 +00:00
henrik.lundin@webrtc.org
44ef3774ce Fixing a compiler error in NetEQ
This error would only arise when compiling without support for
DTMF (which is not the default config).

Review URL: http://webrtc-codereview.appspot.com/310001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1118 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-07 10:43:25 +00:00
perkj@webrtc.org
6b1bfd6c5e Changed webrtc::ACMCodecDB::neteq_decoders_ to a const array.
BUG=
TEST=

Review URL: http://webrtc-codereview.appspot.com/304003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1092 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 12:48:19 +00:00
henrik.lundin@webrtc.org
e26aad4a9e Disable NetEQ unittest for Windows
Disable NetEqDecodingTest::TestNetworkStatistics for Windows.
It was never tested for Windows. Something is causing it to
fail, probably need different set of test vectors.

Review URL: http://webrtc-codereview.appspot.com/302003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1089 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-02 10:27:14 +00:00
tina.legrand@webrtc.org
f64162c335 Adding const to a number of constant tables. Setting some tables to static.
Patch set 2: Renaming static const tables. They no longer need the prefix WebRtc_Isac...
Review URL: http://webrtc-codereview.appspot.com/301001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1073 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-12-01 13:01:39 +00:00
henrik.lundin@webrtc.org
524eb48081 Removing deprecated NetEQ APIs
Removing WebRtcNetEQ_GetPreferredBufferSize and
WebRtcNetEQ_GetCurrentDelay and all dependent APIs.

Review URL: http://webrtc-codereview.appspot.com/289006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1063 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-30 16:21:22 +00:00
xians@webrtc.org
0dffc6449a To be able to get webrtc into chrome, we need to reduce the size of the binary and the usage of memory.
This patch disbale some codecs which are not considered necessary. 
Review URL: http://webrtc-codereview.appspot.com/299001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1062 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-30 15:35:44 +00:00
henrik.lundin@webrtc.org
fc9b903fbe Enable NetEQ statistics unit testing
Adding test target NetEqDecodingTest::TestNetworkStatistics.
Update neteq_unittest to get files from resources folder.
Update DEPS file to get resources revision 2.

Review URL: http://webrtc-codereview.appspot.com/291013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1050 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-29 15:38:27 +00:00
henrik.lundin@webrtc.org
2d8125dd1a Testing NetEQ network statistics
Implementing helper function for new unit test
NetEqDecodingTest::TestNetworkStatistics. The test itself
remains to be defined. (Will be added in a coming CL.)
This change required some refactoring of the test code
to avoid excessive code duplication.

Review URL: http://webrtc-codereview.appspot.com/295009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1049 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-29 14:30:28 +00:00
henrik.lundin@webrtc.org
0fcc2eb368 Cleaning up neteq_unittest
- Conforming to testing standards.
- Fixing a way of generating new reference output files.
- ifdef the test to run only on linux 64-bit
- Renaming unittest source file.
- Renaming test vectors

Review URL: http://webrtc-codereview.appspot.com/296007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1028 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-25 13:43:42 +00:00
henrik.lundin@webrtc.org
789da89d37 Fix a valgrind warning in NetEQ
The special cases for packet sizes <= 10 ms (one case for each
sample rate) resulted in reading outside of the pw16_decoded
vector. This is now fixed by making sure that WebRtcSpl_DownsampleFast
gets correct input and output vector lengths.

Review URL: http://webrtc-codereview.appspot.com/295008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1027 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-25 12:35:31 +00:00
henrik.lundin@webrtc.org
4257790d2d NetEQ-related bug in ACM
Fixing a bug when creating new NetEQ slave instances in ACM.
The old code called WebRtcNetEQ_GetCurrentDelay() for the
master instance to get a delay value for WebRtcNetEQ_SetExtraDelay().
This is wrong, since WebRtcNetEQ_GetCurrentDelay() reports on the
current total buffer length, while WebRtcNetEQ_SetExtraDelay() is
the extra delay that is desired to in order to sync with video.

The fix includes keeping the extra delay value in a member variable
in the ACMNetEQ class.

Review URL: http://webrtc-codereview.appspot.com/295001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1001 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 13:04:05 +00:00
kjellander@webrtc.org
543c3eaa46 Fixing Release compilation errors
Review URL: http://webrtc-codereview.appspot.com/267026

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1000 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 12:20:35 +00:00
henrik.lundin@webrtc.org
89ab652250 Cleaning up NetEQ statistics
Removed struct MCUStats_t and all references to it.
Removed totalDiscardedPackets and totalFlushedPackets
from the PacketBuf_t struct.

Review URL: http://webrtc-codereview.appspot.com/293001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@999 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 11:06:05 +00:00
henrik.lundin@webrtc.org
df10de4b27 Removing statistics API from NetEQ
Removing WebRtcNetEQ_GetJitterStatistics(),
WebRtcNetEQ_ResetJitterStatistics(), and the associated
struct WebRtcNetEQ_JitterStatistics. The change ripples
through all the way to the VoiceEngine API.

Review URL: http://webrtc-codereview.appspot.com/285002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@998 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-11-23 09:36:23 +00:00