Commit Graph

243 Commits

Author SHA1 Message Date
7ee3efb0d8 Disable Receiver unittests on Android.
BUG=
TBR=minyue@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4909 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 00:05:15 +00:00
6ea3d1cc9e ACM test are modified to run with both ACM1 and ACM2.
Beside the changes in test files. acm2/acm_generic_codec.cc and acm2/audio_coding_module_impl.cc are modified to fix a bug.

Also, nack{.cc, .h, _unittest.cc} are removed form main/sourc as nack files in both ACM1 and ACM2 are essentially identical.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4908 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 21:44:33 +00:00
2a97317953 Fix include of isolate.gypi
Recent changes in GYP seem to have broken our previous
"hack" for getting the GYP rule for .isolate files
imported from the Chromium build/isolate.gypi.

The best solution for now is to remove the hack
and check in a copy of Chromium's src/build/isolate.gypi
in WebRTC's build/ dir instead. A similar approach is
used for our build/protoc.gypi file.

TEST=On Linux, I successfully ran:
gclient runhooks
ninja -C out/Release
and verified a bunch of .isolated files were created in
out/Release (which didn't happen before this patch).

I also renamed the build/isolate.gypi from Chromium to
ensure that our own is used and not that one (in case any
paths would be incorrect).

I also ran build/gyp_chromium in a Chromium checkout
with WebRTC in third_party/webrtc having this patch applied
to ensure GYP processing was still working.

Finally, I verified that the same project generation and
compilation from a Chromium checkout worked the way we build
our Android native tests, using:
. build/android/envsetup.sh
GYP_DEFINES="$GYP_DEFINES include_tests=1 enable_tracing=1" gclient runhooks
ninja -C out/Release android_builder_webrtc

BUG=1916
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4907 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 19:31:16 +00:00
4887114af7 Remove templatization of the AudioVector test
This CL converts the unit tests for AudioVector from typed tests to
regular tests. It is in preparation for removing templatization for
AudioVector in an upcoming CL.

BUG=1363
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4903 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 15:07:28 +00:00
a6101d76f4 Update sampling rate and number of channels of NetEq4 if decoder is changed.
We encounter a sample-underrun if NetEq is initialized with a sampling rate fs =16000 and receive Opus packets with frame-size less than 5 ms. The reason is as follows.

Let say NetEq buffer has 4 packets of Opus each of size 2.5ms this means that internally timestamp of packets incremented by 80 (internally Opus treated as 32 kHz codec). Given the initial sampling rate of NetEq, at the first time that it wants to fetch packets, it targets to fetch 160 samples. Therefore, it will only extracts 2 packets. Decoding these packets give us exactly 160 samples (5 ms at 32 kHz), however, upon decoding the first packet the internal sampling rate will be updated to 32 kHz. So it is expected that sync buffer to deliver 320 samples while it does only have 160 samples (or maybe few more as it starts with some zeros). And we encounter and under-run.

Even if we ignore the under-run  "assert(sync_buffer_->FutureLength() >= expand_->overlap_length())" (neteq_impl.cc::811) is trigered. I'm not sure what happens if we remove this assert perhaps NetEq will work fine in subsequent calls. However the first under-run is blocking ACM2 test to pass.

Here I have a solution to update sample rate as soon as a packet is inserted, if required. It not a very efficient approach as we do the same reset in NetEqImpl::Decode().

It is a bit tricky to reproduce this because the TOT ACM tests do not run ACM2. In https://webrtc-codereview.appspot.com/2192005/ I have a patch to run both ACMs. To reproduce the problem, one can patch that CL and run

$ out/Debug/modules_tests --gtest_filter=AudioCodingModuleTest.TestOpus

Note that we would not encounter any problem if NetEq4 is initiated with 32000 Hz sampling rate. You can test this by setting |kNeteqInitSampleRateHz| to 32000 in webrtc/modules/audio_coding/main/acm2/acm_receiver.cc

BUG=
R=andrew@webrtc.org, henrik.lundin@webrtc.org, kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4896 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 22:01:09 +00:00
522227012d Reset audio bufer if codec changes, b/10835525.
If there is audio in a codec's audio buffer and sample-rate or number of channels change the audio buffer has to reset. Otherwise, the amount of audio in the buffer is misinterpreted any syncronization between 10ms audio blocks and their associated timestamps is lost.

For instance, assume changing from stereo to mono when there is 10ms stereo in the buffer. The "new" codec will interpret this as 20 ms audio, therefore, 2 blocks of 10 ms, but there is only one timestamp. This will results in  ACMGenericCodec::in_timestamp_ix_write_ updated to a negative number after an encode is performed.

The drawback with this solution is that if packet-size of the codec is changed then audio buffer is reset wich is not necessary. We accept this as it is a rare case in practice that clients of ACM re-register send codecs to change packet-size.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4887 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 01:17:37 +00:00
fd11bbfb56 NetEq4: Removing templatization for AudioMultiVector
This saves approx 6% runtime for neteq4_speed_test.
$ time out/Release/neteq4_speed_test --runtime_ms=50000000

BUG=1363
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4885 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 20:38:44 +00:00
6ad6a07fd3 Support for CELT in NetEq4.
BUG=1359
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4884 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 20:07:39 +00:00
4cd76221dc Revert 4876 "Support for CELT in NetEq4."
> Support for CELT in NetEq4.
> 
> BUG=1359
> R=henrik.lundin@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2291004

TBR=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4879 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 12:25:45 +00:00
a20a22a0bd Support for CELT in NetEq4.
BUG=1359
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4876 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-28 16:31:25 +00:00
137b3793d9 Only use -lm on Linux in ISAC.
Remove unneeded WEBRTC_LINUX define.

BUG=crbug.com/298656
TESTED=Passed trybots.
R=wjia@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4865 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-27 18:16:28 +00:00
7b75ac6756 Sync-packet insertion into NetEq4. This is related to r3883 & r4052 for NetEq 3.
BUG=
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4850 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-26 00:27:56 +00:00
3fdeddb59a Disable a NetEq unittest on Android. The test tries to register iSAC-swb as send codec and fails.
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4845 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 22:19:22 +00:00
3e7703640f Remove unused constants, so chrome can enable a warning for that. Patch from thakis@
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4844 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 22:05:05 +00:00
0c0fae8a5e Re-enable verbose logging in NetEq4.
Using neteq4_speed_test there no complexity penalty is observed when verbose
logging is enabled.

BUG=2317
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4841 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 17:42:17 +00:00
d6a7a5f385 Small fixes to run ACM2 tests.
BUG=
R=minyue@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4836 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 01:09:23 +00:00
ff43c85ef1 API add to set background noise mode.
Background noise mode.

BUG=
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4835 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 00:07:27 +00:00
eb524d997b Remove deprecated AudioCodingModule::Destroy.
Have Channel hold a pointer rather than reference, and shorten the name.

TESTED=trybots
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4820 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 23:02:24 +00:00
63fe8e1f38 Enable SetInitialPlayoutDelay on Android.
Background:
In Chrome mirroring which uses 500ms buffering mode,
audio video mismatch happens in the begining because of the lack of the api.

BUG=b/10538425
TEST=pass 'git try' except tests which is aleady broken in the bot. pass 'build/android/test_runner.py gtest -s modules_tests --verbose --release  -f *InitialPlayoutDelayTest*'
R=henrika@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4807 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 05:42:22 +00:00
10e6cc7e23 VAD changes ported to ACM2.
This CL ports the relevant parts of  https://code.google.com/p/webrtc/source/detail?r=4625 to ACM2.

BUG=
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4804 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-20 16:38:26 +00:00
362a55e7b0 Address Windows 64-bits warnings.
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4803 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-20 16:25:28 +00:00
76fe9309b9 Use link_settings instead of all_dependent_settings to pacify xcode gyp generator
Should unbreak e.g. http://chromegw/i/chromium.webrtc.fyi/builders/Mac%20%5Blatest%20WebRTC%20trunk%5D/builds/2396

R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4796 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 21:11:08 +00:00
ccddd0a941 Roll webrtc's chromium_revision 217707:224141
Also adds -lm for executables depending on isac since the newer clang in the
newer chromium revision requires it, and -lstdc++ for dependencies of the objc lib because newer gyp links with gcc instead of g++ for non-C++-containing libs.

R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4795 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 20:27:32 +00:00
a03e34e9ab Heap-use-after-free in WebRtcNetEQ_RecInRTPStruct
Pointer to released memory was not set to NULL, which means
you could get a heap-us-after-free in the code. It happens if one of the slaves of NetEq is deleted, but we keep trying to decode packets.

BUG=
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4792 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 13:32:14 +00:00
532f3dc548 Compile ACM2 and ACM1.
First patch set is the same as patch set 3 of http://review.webrtc.org/2237004/

-Make ACM1 to depend on ACM2.
-Remove APIs to set and get background noise mode. There is no VoE call to these
APIs.
-Remove APIs to set and get receive side VAD mode. There is no VoE call to these
APIs, and NetEq 4, doesn't support them.
-Remove callback for in-band DTMF detection. ACM doesn't support in-band DTMF
detection.
-Use acm_common_defs.h everywhere required.
-Complete ACM factory method.
-Update ACMCodecDatabase of ACM2. CNG full-band need to be define-guarded.
Remove dynamic payload-type assignment.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4785 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 00:12:23 +00:00
0d5da25e6c NetEq4: Making a few more members scoped_ptrs
This CL converts a few members in NetEqImpl form regular pointers
to scoped_ptrs.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4783 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 21:12:38 +00:00
5a43370cdb Dedicated speed test for NetEq3
This is the same test as was aleready implemented for NetEq3 in r4763.

BUG=1363
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4782 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 20:58:33 +00:00
1c77dfd521 Revert r4772 "Compile ACM1 and ACM2."
Breaks Android build.

TBR=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4777 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 12:34:05 +00:00
40d3fc65f5 NetEq4: Make some DSP operation classes member variables
This CL reduces the memory allocations by making the instances of
Accelerate, PreemptiveExpand, Normal and Merge member variables in
NetEqImpl.

This change reduced the allocation count by 20,000 in the bit-exactness
test.

BUG=Issue 1363
TEST=out/Debug/modules_unittests
--gtest_filter=NetEqDecodingTest.TestBitExactness

R=andrew@webrtc.org, minyue@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4776 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 12:19:50 +00:00
367baa6eb3 Compile ACM1 and ACM2.
-Make ACM1 to depend on ACM2.
-Remove APIs to set and get background noise mode. There is no VoE call to these APIs.
-Remove APIs to set and get receive side VAD mode. There is no VoE call to these APIs, and NetEq 4, doesn't support them.
-Remove callback for in-band DTMF detection. ACM doesn't support in-band DTMF detection.
-Use acm_common_defs.h everywhere required.
-Complete ACM factory method.
-Update ACMCodecDatabase of ACM2. CNG full-band need to be define-guarded. Remove dynamic payload-type assignment.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4772 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 00:36:11 +00:00
d1fc5d4e17 Dedicated speed test for NetEq4
This CL implements a new speed test application for NetEq4.
The application runs a minimum of overhead in order to
highlight the performance of NetEq itself.

BUG=1363
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4763 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-17 08:38:02 +00:00
48af652ea5 Prepare to compile ACM1 and ACM2.
ACM1 code is wrapped in namespace acm1. Inculde paths and define guards of ACM2 source codes are corrected. gypi file of ACM2 is changed so that ACM1 will later on depends on ACM2.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4743 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-13 23:06:59 +00:00
7959e16cc2 ACM2 integration with NetEq 4.
nack{.cc, .h, _unittest.cc} are basically copies from main/source/ folder, with cpplint warning cleaned up.

BUG=
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4736 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 18:30:26 +00:00
e509f943ed This issue is related to
https://chromereviews.googleplex.com/9908014/

I was thinking about shipping ACM2 from the signal repository. There seems to be too many changes in one CL.

BUG=
R=andrew@webrtc.org, turaj@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4733 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 17:03:00 +00:00
89df092807 Make the destructor of AudioCodingModule public.
This allows the type to be used with a scoped_ptr. Remove all calls to
the deprecated Destroy() from tests.

R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4731 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 01:27:43 +00:00
256b83146c Removes function that is not used anywhere but somehow still causing library load issues on Android Release build.
BUG=2364
R=andrew@webrtc.org, fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4728 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 20:43:13 +00:00
036b7436df Adding APIs. These APIs are not implemented yet, they are to help developement of ACM.
Un-implemented APIs.

TBR=henrik.lundin@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4725 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 18:45:02 +00:00
eda189be14 Remove redundant STR_CASE_CMP macro definitions.
R=minyue@webrtc.org, turaj@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4711 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 17:50:10 +00:00
31b4a5ac82 Recognize armv7 target_arch for ios support in webrtc common.gyp
BUG=2343
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4684 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 16:46:36 +00:00
9080518a39 Restore severity precondition to logging.h.
I mistakenly ommitted the checks when logging.h was ported from
libjingle to webrtc. This caused a significant CPU cost for logs which
were later filtered out anyway.

Verified with LS_VERBOSE logging in neteq4, running:
$ out/Release/modules_unittests \
--gtest_filter=NetEqDecodingTest.TestBitExactness \
--gtest_repeat=50 > time.txt
$ grep "case ran" time.txt | grep "[0-9]* ms" -o | sort

Results on a MacBook Retina, averaged over 5 runs:
Verbose logs disabled:                          666 ms
Exisiting implementation, verbose logs enabled: 944 ms (1.42x)
New implementation, verbose logs enabled:       673 ms (1.01x)

BUG=2314
R=henrik.lundin@webrtc.org, henrike@webrtc.org, kjellander@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4682 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 16:40:43 +00:00
164c4f71ba Add clockdrift to RtpGenerator
RtpGenerator is a help class for NetEq testing. This change
add the possibility to simulate clockdrift. If no clockdrift is
set, the default is 0 (i.e., no drift).

R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4680 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 12:16:38 +00:00
36439bf906 NetEq4: Small change to reduce allocs in AudioMultiVector
This change reduced the allocation count by 20000 in the bit-exactness
test.

BUG=Issue 1363
TEST=out/Debug/modules_unittests --gtest_filter=NetEqDecodingTest.TestBitExactness
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4678 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 06:02:56 +00:00
65abb6b1ed Revert 4671 "Enable SetInitialPlayoutDelay on Android."
Tests enabled in r4671 failed:
build.chromium.org/p/client.webrtc/builders/Android%20Tests/builds/31/steps/slave_steps/logs/stdio

> Enable SetInitialPlayoutDelay on Android.
> 
> Background:
> In Chrome mirroring which uses 500ms buffering mode,
> audio video mismatch happens in the begining because of the lack of the api.
> 
> BUG=b/10538425
> TEST=pass 'git try' except tests which is aleady broken in the bot. pass 'build/android/test_runner.py gtest -s modules_tests --verbose --release  -f *InitialPlayoutDelayTest*'
> R=henrika@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2144004

TBR=dwkang@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4672 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 07:47:39 +00:00
310ac91d2a Enable SetInitialPlayoutDelay on Android.
Background:
In Chrome mirroring which uses 500ms buffering mode,
audio video mismatch happens in the begining because of the lack of the api.

BUG=b/10538425
TEST=pass 'git try' except tests which is aleady broken in the bot. pass 'build/android/test_runner.py gtest -s modules_tests --verbose --release  -f *InitialPlayoutDelayTest*'
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4671 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 01:19:12 +00:00
8fb89533af Correcting two nits in InputAudioFile
First, the fread function returns number of elements read, not
necessarily the number of bytes. In this case, it is the number
of samples. Second, a spelling mistake was corrected.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4658 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-03 08:43:28 +00:00
b3e905cd91 Disable all LS_VERBOSE logging in NetEq4
This reduces exectution time of NetEqDecodingTest.TestBitExactness
with almost 30% and reduces the allocation count (from valgrind)
with almost 50% for the same test.

An issue has been created to re-enable logs when logging performance
is improved; see https://code.google.com/p/webrtc/issues/detail?id=2317.

BUG=1363
TEST=out/Release/modules_unittests --gtest_filter=NetEqDecodingTest.TestBitExactness
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4652 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 09:41:06 +00:00
c487c6abb0 NetEq4: Make the algorithm buffer a member variable
This reduces the alloc count by more than 100,000 for
NetEqDecodingTest.TestBitExactness.

BUG=1363
TEST=out/Release/modules_unittests --gtest_filter=NetEqDecodingTest.TestBitExactness
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4651 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 07:59:30 +00:00
45d2840623 Zero comfort noise for stereo insted of assertion.
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4645 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-30 15:37:08 +00:00
3170b5750f Reorder and add critical section to the public method NetEqImpl::PacketBufferStatistics().
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4644 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-30 15:36:53 +00:00
d7301775f5 update neteq 4 to facilitate NACK
BUG=
R=turaj@webrtc.org, turajs@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4637 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-29 00:58:14 +00:00