Commit Graph

126 Commits

Author SHA1 Message Date
12dc1a38ca Switch C++-style C headers with their C equivalents.
The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-05 16:22:53 +00:00
7df9706a01 Add one API for implementing Initial delay.
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4475 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-02 18:07:13 +00:00
89c674053e Adds all unittests to android NDK-APK framework.
BUG=N/A
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4474 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-02 16:53:47 +00:00
7126b38d8f Handel zero correlation if at the same time distortion is also zero.
This is the conversation I had with Henrik Lundin regarding this problem.

Me:
In Expand::AnalyseSignal() we compute correlation and distortion, then calculate the ratio of correlation to distortion. There if distortion is zero we expect that correlation to be zero. Although in practice this might be true, I suppose we rarely hit into absolutely periodic signal, but in one of the tests the assertion in line 455 of expand.cc was triggered. The distortion is computed over a shorter length of the signal, while correlation is computed over longer segments. Therefore, I guess, if the signal has just enough zeros at the beginning we can end up in situation that distortion is zero but not the correlation. Do you agree? I didn't have time to attempt to solve this, but if my line of thought is correct, we should not have that assert. Perhaps, if correlation is zero we set the ratio to 0, otherwise, ratio would be the largest value of its own type. Any thoughts?

Henrik:
I agree with you. Go ahead with your solution.

R=minyue@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4448 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 16:05:09 +00:00
2d1a55caed Add some virtual and OVERRIDEs in webrtc/modules/audio_coding/
BUG=163
TBR=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4447 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 15:54:00 +00:00
fd7e3c52d8 Correcting Turaj's email.
TBR=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4432 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-30 17:25:07 +00:00
1a7b9b94be Cleanup WebRTC tracing
The goal of this change is to:
1. Remove unused tracing events.
2. Organize tracing events to facilitate measurement of end to end latency.

The major change in this CL is to use ASYNC_STEP such that operation
flow can be traced for the same frame.

R=marpan@webrtc.org, pwestin@webrtc.org, turaj@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4308 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-08 21:31:18 +00:00
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
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
45426eadf5 In call to Opus decoder: frame length too large
BUG=https://code.google.com/p/webrtc/issues/detail?id=1201
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4292 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 13:32:04 +00:00
f6f033f8bd Possible divide by 0 in ACM.
BUG=https://code.google.com/p/webrtc/issues/detail?id=1551
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4291 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 12:00:14 +00:00
b1698ab827 Error in update of read index in ACM
Fixing a bug where we increase read index with too few samples when the input is stereo.

BUG=https://code.google.com/p/webrtc/issues/detail?id=714
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4290 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 09:25:34 +00:00
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
fee739c224 Risk of division by zero.
bug=b9338699

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4223 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 20:10:06 +00:00
b097670264 G722_1/G722_1C codecs won't instantiate
BUG=issue1890
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4215 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 07:41:42 +00:00
a305e9612a Nack for audio.
R=stefan@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4188 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-06 19:00:09 +00:00
3942f3a985 Issue 1847, memcopy is wrong and unnecessary, it is sufficient to store the pointer before clearing the instance, and write back the pointer.
bug=issue1847

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4178 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 21:31:22 +00:00
9238de9d49 resolve b9050210. Avoid pushing sync packet before any packet received. Do not turn on AV-sync if initial delay is zero.
Also solve DTMF playout with Opus. 

issue=b9050210
Test=Manual by QA Team.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4176 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 19:18:39 +00:00
5156c94f89 Disable neteq_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1460
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4165 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:47:24 +00:00
b6e49aa3f2 Disable audio_decoder_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1459
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4164 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:47:04 +00:00
6eba2774c9 Disable audio_coding_unittests on Win x64 in code.
Having this failing test being disabled in code will make it
possible to add it on the bots again, and make thus no bot
configuration update needs to be communicated when it's fixed.

BUG=1458
TEST=Compiled with GYP_DEFINES=target_arch=x64 and ran the
test successsfully on Windows. Also ran regular trybots.

R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4163 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-04 05:46:37 +00:00
c1eb560a5c Replace the old resampler with SincResampler in the voice engine signal path.
* The old resampler was found to have a wraparound bug.
* Remove support for the old resampler from PushResampler.
* Use PushResampler in AudioCodingModule.
* The old resampler must still be removed from the file utility.

BUG=webrtc:1867,webrtc:827
TESTED=unit tests, Chrome using apprtc and voe_cmd_test to verify wrap-around is corrected, voe_cmd_test running through all supported codec sample rates and channels to verify good quality audio
R=henrika@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4156 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 19:00:29 +00:00
31c5f1c91a Remove ancient and unused CNG test.
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4154 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-03 16:07:07 +00:00
9aca5b34e1 Remove #pragma once
BUG=1830
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4130 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-29 13:19:09 +00:00
e46c8d3875 API to control target delay in NetEq jitter buffer. NetEq maintains the given delay unless channel conditions require a higher delay.
TEST=unit-test, manual, trybots.
R=henrik.lundin@webrtc.org, henrika@webrtc.org, mflodman@webrtc.org, mikhal@webrtc.org, stefan@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4087 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-22 20:39:43 +00:00
8630cfe016 Guarding certain operations, e.g. bandwidth estimation, RTCP statistics update etc., not to be run on sync RTPS.
BUG=issue1770
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4052 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-16 23:54:54 +00:00
4ce838934c Address sanitizer out of bounds read in iSAC
BUG=issue1770
TBR=tlegrand@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4030 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 17:42:22 +00:00
185bae4b6f Replace ExtraCodecOptions with new Config class that supports multiple settings at once.
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4017 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 08:02:25 +00:00
3004c79c6a Fix clang errors in non-GYP_DEFINES=clang=1 build
BUG=1623
R=stefan@webrtc.org, tina.legrand@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3968 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-07 12:36:21 +00:00
bd4a2feddb Fix off-by-one buffer overflow in WebRtcNetEQ_PacketBufferInsert().
BUG=1725
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3953 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-03 18:11:36 +00:00
d5726a1286 Formatting ACM tests
Pure formatting of all files located in /webrtc/modules/audio_coding/main/test/

Smaller manual modifications done after using Eclipse formatting tool, like wrapping long lines (mostly comments).

BUG=issue1024

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3946 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-03 07:34:12 +00:00
03efc89151 Fix when SetMinimumPlayoutDelay is configured to 0
BUG=1720
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3942 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-02 21:19:12 +00:00
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
a942692725 Buf fix for r3883.
Review URL: https://webrtc-codereview.appspot.com/1319012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3889 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-23 16:08:29 +00:00
28d54ab18f Improve AV-sync when initial delay is set and NetEq has long buffer.
Review URL: https://webrtc-codereview.appspot.com/1324006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3883 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-22 18:53:35 +00:00
db11fab49e Adding Opus unit test
This CL adds a unit test for Opus, as well as new APIs for true stereo decoding (skipping master/slave approach).

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3860 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-17 10:39:41 +00:00
f1a3b4bc0c Issue 1647. Avoid unsequenced modification.
issue=1647
test=trybots,manual

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3858 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 17:01:35 +00:00
6e788df19e Remove vim/emacs modelines from .gypi files
BUG=1655

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3857 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-16 12:40:34 +00:00
92d1f07551 Elevate NetEq short-term activity statistics to ACM level for logging.
Review URL: https://webrtc-codereview.appspot.com/1313004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3850 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-15 16:52:04 +00:00
4b8de90dce Disable -Wunsequenced warning in audio_coding_module
BUG=1647
TEST=Compile locally on Linux with clang enabled.
TBR=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3848 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-15 06:38:56 +00:00
e4b6064f8e Replace legacy G_CONST with const.
BUG=1608

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3814 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 18:06:57 +00:00
ab9202b673 Removing remaining WebRtc_Word32 not in typedefs.h
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3813 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-10 17:59:17 +00:00
806dc3b0e6 More trace events
The goal of this change is to unify tracing events styles
and add trace events for all RTP traffic.

BUG=1555
Review URL: https://webrtc-codereview.appspot.com/1290007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3806 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 19:54:10 +00:00
0946a56023 WebRtc_Word32 => int32_t etc. in audio_coding/
BUG=314

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3789 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-09 00:28:06 +00:00
cf8e108158 Fixed a bug in isac-fix's entropy coding function: out of bounds acces to array.
BUG=227286
Review URL: https://webrtc-codereview.appspot.com/1293005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3781 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-08 16:37:53 +00:00
2e6b7e938f In streaming mode it is preferable to fade to silence when sender stops sending, or long period of packet loss.
test=try bots.
Review URL: https://webrtc-codereview.appspot.com/1272004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3771 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-06 00:08:11 +00:00
79b0289bfc Adds event traces and counters for WebRTC receive side.
Review URL: https://webrtc-codereview.appspot.com/1279005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3766 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 19:43:34 +00:00
bb8ada686e TSan v2 reports data races in WebRTCAudioDeviceTest.FullDuplexAudioWithAGC
BUG=226044
TEST=content_unittests in Chrome with TSan v2 enabled

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3760 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-04 08:39:09 +00:00
f81fad6267 Fix opus bitrate truncated to 16-bit int. This prevented setting bitrates higher
than 2^16kbps.
Review URL: https://webrtc-codereview.appspot.com/1275004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3748 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-01 22:25:11 +00:00
4b1cd5c5c0 G722-stereo has been missing when creating AudioDecoder.
Review URL: https://webrtc-codereview.appspot.com/1266004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3734 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-27 20:42:48 +00:00