4673 Commits

Author SHA1 Message Date
stefan@webrtc.org
bf535b9b6b Optimize NACK list creation.
- No longer looping through all frame buffers.
- Keeping track of the current nack list index when building the list.
- Don't look for changes in the NACK list if the size has increased.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3420 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-28 08:48:13 +00:00
kjellander@webrtc.org
b2d7497faf Fix Win64 warnings
This change fixes warnings about converting size_t to int.

BUG=webrtc:1323
TEST=trybots passing

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3419 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-26 16:36:40 +00:00
bjornv@webrtc.org
8526459a2e Added tests for multiple near-end support.
TEST=trybots, audioproc_unittest
BUG=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3417 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 22:33:17 +00:00
bjornv@webrtc.org
57f3a11958 Short CL: only name change.
From |handle| to |self| for consistency.

BUG=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3416 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 22:02:15 +00:00
bjornv@webrtc.org
94c213af1a Separated far-end handling in BinaryDelayEstimator.
This CL is one step in a larger change of the DelayEstimator where we will open up for multiple near-end signals.

This particular CL separates the low level far-end parts without affecting the usage externally. This is a first step towards separating the far-end and near-end parts giving the user the control.

BUG=None
TEST=audioproc_unittests, trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3415 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 15:53:41 +00:00
phoglund@webrtc.org
43da54a458 Reformatted rtp_sender: made lint clean.
TESTED=rtp_rtcp_unittests
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3412 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 10:53:38 +00:00
kma@webrtc.org
c4373bc737 Moved several function pointer declarations in iSAC to isac initialization file.
Fixed clang linker problem of not being able to find symbols.
Review URL: https://webrtc-codereview.appspot.com/1061006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3410 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 04:55:21 +00:00
kma@webrtc.org
16d540eff1 Fixed text relocation code related to ARM assembly code.
Refer to WebRTC issue 1300.
Review URL: https://webrtc-codereview.appspot.com/1055004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3409 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-25 03:18:05 +00:00
kma@webrtc.org
e8482f0e9f Revert 3406
> Moved all function pointer declarations in iSAC to a single place.
> Review URL: https://webrtc-codereview.appspot.com/1057006

TBR=kma@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1074005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3408 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-24 23:57:56 +00:00
niklas.enbom@webrtc.org
cd2f1356ee Revert 3405
TBR=turaj@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/1074004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3407 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-24 22:05:30 +00:00
kma@webrtc.org
ebef7e4ac1 Moved all function pointer declarations in iSAC to a single place.
Review URL: https://webrtc-codereview.appspot.com/1057006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3406 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-24 21:19:24 +00:00
niklas.enbom@webrtc.org
05e7bfeeea Mainly hlundin's patch.
Review URL: https://webrtc-codereview.appspot.com/1052004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3405 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-24 18:53:43 +00:00
kma@webrtc.org
4782911572 Optimized WebRtcIsacfix_Time2Spec() for iSAC-Fix in ARM Neon processor.
Review URL: https://webrtc-codereview.appspot.com/1005004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3404 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-24 01:37:33 +00:00
henrik.lundin@webrtc.org
5dfb1f2cd3 Bug fix in WebRtcOpus_DurationEst
The function WebRtcOpus_DurationEst returned the number of samples
per packet in the native 48 kHz sample rate, while the decoder
function returns data in 32 kHz sample rate. This creates a discrepancy
that makes NetEQ's lip-sync functionality add too little delay.

BUG=1334
TEST=try bots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3403 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-23 11:57:03 +00:00
henrike@webrtc.org
09738616de Fixes payload spelling error.
BUG=N/A

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3398 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-22 16:43:45 +00:00
phoglund@webrtc.org
5accd370e7 RTP Receiver is now only deals with a receiver strategy. Cleaned up dependencies.
BUG=
TESTED=vie/voe_auto_test, rtp_rtcp_unittests

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3397 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-22 12:31:01 +00:00
andrew@webrtc.org
ae1a58bba4 Replace AudioFrame's operator= with CopyFrom().
Enforce DISALLOW_COPY_AND_ASSIGN to catch offenders.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3395 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-22 04:44:30 +00:00
stefan@webrtc.org
a678a3baee Move video_coding to new Clock interface and remove fake clock implementations from RTP module tests.
TEST=video_coding_unittests, video_coding_integrationtests, rtp_rtcp_unittests, trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3393 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-21 07:42:11 +00:00
wjia@webrtc.org
a3c82bf667 Remove '<(library)' in gyp files.
This will remove all usage of '<(library)' in all webrtc gyp files. 
Review URL: https://webrtc-codereview.appspot.com/1049005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3392 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-18 23:42:21 +00:00
bjornv@webrtc.org
bb599b7089 This CL includes part of changes in a larger one. The final goal is to allow multiple delay estimators using the same reference (far-end) to save computational complexity.
BUG=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3391 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-18 23:16:46 +00:00
bjornv@webrtc.org
a2d8b75f29 An API to get the internal estimation quality in the delay estimator has been added. Unit tests have been updated. There is no impact to other parts in WebRTC.
BUG=None

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3390 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-18 21:54:15 +00:00
phoglund@webrtc.org
efae5d5901 Extracted rtp receiver payload management to its own class, made video receiver depend on that instead.
Eliminated need for video receiver to talk to its parent. Also we will now determine if the packet is the first one already in the rtp general receiver. The possible downside would be that recovered video packets no longer can be flagged as the first packet, but I don't think that can happen. Even if it can happen, maybe the bit was set anyway at an earlier stage. The tests run fine.

BUG=
TEST=rtp_rtcp_unittests, vie_auto_test, voe_auto_test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3382 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-17 16:10:45 +00:00
stefan@webrtc.org
20ed36dada Break out RtpClock to system_wrappers and make it more generic.
The goal with this new clock interface is to have something which is used all
over WebRTC to make it easier to switch clock implementation depending on where
the components are used. This is a first step in that direction.

Next steps will be to, step by step, move all modules, video engine and voice
engine over to the new interface, effectively deprecating the old clock
interfaces. Long-term my vision is that we should be able to deprecate the clock
of WebRTC and rely on the user providing the implementation.

TEST=vie_auto_test, rtp_rtcp_unittests, trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3381 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-17 14:01:20 +00:00
stefan@webrtc.org
a4b58860b7 Add a counter to the video rtp play output filename.
Review URL: https://webrtc-codereview.appspot.com/1040004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3379 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-17 09:27:17 +00:00
phoglund@webrtc.org
acfdd96ee3 Reformatted rtp_rtcp_impl*.
BUG=
TEST=Trybots.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3374 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-16 10:27:33 +00:00
phoglund@webrtc.org
a22a9bd9ca Cleaned up the data path for payload data, made callbacks to rtp_receiver nonoptional.
The audio receiver is now completely independent of rtp_receiver: video will hopefully be too in the next patch.

BUG=
TEST=vie & voe_auto_test full runs

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3372 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-14 10:01:55 +00:00
andrew@webrtc.org
bafdae3cfc Fix simulated analog gain in audioproc.
* It doesn't make much sense to apply at all when reading from the protobuf.
* Reduced the gain to be closer to actual mics.

BUG=1260

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3366 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-11 23:11:29 +00:00
andrew@webrtc.org
f908011eb4 Remove extra line.
TBR=elham

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3365 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-11 22:39:55 +00:00
marpan@webrtc.org
ef1a760446 Rounding error fix in media_opt_util.
Review URL: https://webrtc-codereview.appspot.com/1013006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3351 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-09 22:13:19 +00:00
mflodman@webrtc.org
2f225cadde Add logs when no RTCP RR has been received for three regular RTCP intervals.
BUG=1267
TEST=Unittest added.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3346 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-09 13:54:43 +00:00
mikhal@webrtc.org
658d423e81 Using Convert in lieu of ExtractBuffer: Less error prone (as we don't need to compute buffer sizes etc.). This cl is first in a series (doing all of WebRtc would make it quite a big cl). While at it, fixing a few headers.
BUG=988

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3343 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-08 19:19:59 +00:00
phoglund@webrtc.org
c38eef896a Reformatted RTPReceiver.
This is a pure reformat patch, with the exception that I also fixed all comments and moved a constant. I did not change the types in this patch since I
though that is more risky, so I'll do that in a separate patch later (perhaps
we could purge the types from the whole module in one go?)

BUG=
TEST=Trybots, vie_ & voe_auto_test --automated

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3338 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-07 10:18:30 +00:00
stefan@webrtc.org
1ea4b502ef Refactor receiver.h/.cc.
TEST=video_coding_unittests, vie_auto_test --automated

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3336 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-07 08:49:41 +00:00
kma@webrtc.org
f545cf8f10 Addressing webrtc issue 1237, http://code.google.com/p/webrtc/issues/detail?id=1237.
Code compared to C. Bit-exact.
Review URL: https://webrtc-codereview.appspot.com/1021004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3333 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-04 17:40:21 +00:00
andrew@webrtc.org
00c7c4315b Replace voice engine utility functions with system wrapper variants.
SLEEP -> SleepMs
GET_TIME_IN_MS -> TickTime::MillisecondTimestamp

These could cause unused function errors on some compilers.

BUG=1228

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3326 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-02 16:06:39 +00:00
pwestin@webrtc.org
1b6da28047 Bugfix for NACK behavior. Current code sends a number of duplicate NACK requests.
Landing of 573005 On behalf of an1kumar@gmail.com

TBR=mflodman
Review URL: https://webrtc-codereview.appspot.com/1002008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3322 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-21 17:46:24 +00:00
tina.legrand@webrtc.org
d0d41498a3 Adding AUDIO application as default for Opus stereo
The Opus audio codec targets applications for pure conversations as well as other types of audio (e.g. music), and there are two different settings to use for this (VoIP and AUDIO). In the current implementation of Opus in WebRTC we use VoIP only.

I this CL I have changed default setting to AUDIO in the case of stereo, and kept VoIP as default in case of mono.

Next step is to add an API to choose application mode.

BUG=issue1239

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3319 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-20 09:23:10 +00:00
phoglund@webrtc.org
ad0ed582b5 Fixed a missed initialization (found by valgrind FYI bot).
http://webrtc-cb-linux-master.cbf.corp.google.com:8011/builders/LinuxLargeTests/builds/327/steps/memory%20test%3A%20memcheck_voe_auto_test/logs/stdio

BUG=
TEST=Reproduced valgrind error, verified gone after fixing.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3318 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-20 09:14:36 +00:00
leozwang@webrtc.org
ac77084583 Roll opus to 172355 and delete opus_demo from webrtc opus
opus_demo has been inlucded in opus in chromium.

BUG=None
TEST=trybots
Review URL: https://webrtc-codereview.appspot.com/973013

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3317 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-19 17:24:30 +00:00
tina.legrand@webrtc.org
4275ab1ca0 Implement NetEq duration estimation for Opus.
Review URL: https://webrtc-codereview.appspot.com/983004
Patch from Ralph Giles <giles@webrtc.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3314 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-19 09:52:45 +00:00
leozwang@webrtc.org
515ef2428c Clean up variable after it gets deleted
BUG=None
TEST=trybots
Review URL: https://webrtc-codereview.appspot.com/939038

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3313 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-19 05:36:36 +00:00
phoglund@webrtc.org
61f39a3174 Fixed bad header name.
TBR=stefan@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3307 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-18 16:02:13 +00:00
phoglund@webrtc.org
07bf43c673 Replaced the _audio parameter with a strategy.
The purpose is to make _rtpReceiver mostly agnostic to if it processes audio or video, and make its delegates responsible for that. This patch makes the actual interfaces and interactions between the classes a lot clearer which will probably help straighten out the rather convoluted business logic in here. There are a number of rough edges I hope to address in coming patches.

In particular, I think there are a lot of audio-specific hacks, especially when it comes to telephone event handling. I think we will see a lot of benefit once that stuff moves out of rtp_receiver altogether. The new strategy I introduced doesn't quite pull its own weight yet, but I think I will be able to remove a lot of that interface later once the responsibilities of the classes becomes move cohesive (e.g. that audio specific stuff actually lives in the audio class, and so on). Also I think it should be possible to extract payload type management to a helper class later on.

BUG=
TEST=vie/voe_auto_test, trybots

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3306 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-18 15:40:53 +00:00
kjellander@webrtc.org
10abe25f6d Make audioproc output files be written to output dir by default.
This makes the following files be written into the output dir instead of
the current working dir:
* out.pcm
* vad_out.dat
* ns_prob.dat

TEST=out/Debug/audioproc -aecm -ns -agc --fixed_digital --perf -pb
resources/audioproc.aecdump
All trybots passing.
BUG=none

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3302 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-17 18:28:07 +00:00
fbarchard@google.com
3c37354b70 Initialize 3 variables which are preventing VS2012 from building.
BUG=1211
TESTED=ninja -C out\Release
Review URL: https://webrtc-codereview.appspot.com/992005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3301 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-15 01:09:18 +00:00
phoglund@webrtc.org
7659d914bb Decoupled video rtp receiver from rtp receiver.
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3292 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-14 09:57:37 +00:00
roosa@google.com
b8ba4d8109 Add number of inserted samples to NetEq statistics.
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3289 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-14 00:06:18 +00:00
turaj@webrtc.org
c454fab03b Reformatting ACM. All changes are bit-exact in this CL.
TEST=VoE auto-test, audio_coding_module_test; 

only 15 ms of teststereo_out_1.pcm is not bit-exact with output file of the head revision
Review URL: https://webrtc-codereview.appspot.com/937035

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3287 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-13 22:46:43 +00:00
mikhal@webrtc.org
96dc6270d4 vpm unit test: Diasble frame dropping in tests
(follow up on r3284)

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3285 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-13 19:53:26 +00:00
mikhal@webrtc.org
4493db5a3e vpm: removing unnecessary memcpy
TEST=trybots

BUG=1128

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3284 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-13 18:25:36 +00:00