2218 Commits

Author SHA1 Message Date
wu@webrtc.org
8e256eec4f Revert 6415 "Update generated asm offsets scripts."
> Update generated asm offsets scripts.
> 
> This is the same CL as https://webrtc-codereview.appspot.com/16629004/
> Relanding and TBR from previous lgtm.
> 
> Libvpx updated the unpack scripts to fix building dependencies.
> 
> Roll libvpx 269083:275816
> See https://codereview.chromium.org/295313002/
> https://codereview.chromium.org/298063002/
> https://codereview.chromium.org/305533008/
> https://codereview.chromium.org/305703002/
> https://codereview.chromium.org/298383003/
> https://codereview.chromium.org/302863004/
> https://codereview.chromium.org/320923003/
> for the libvpx changes.
> 
> See https://codereview.chromium.org/313243004/
> for the WebView changes.
> 
> *NOTE* This CL will break the Android bots as they are built in a
> Chromium checkout, which will pull in old libvpx DEPS. They will
> cycle to green when we roll libvpx into Chromium. We must do the
> rolls in this order becuase we have to land webrtc and libvpx at
> the same time into Chromium.
> 
> BUG=377062
> TBR=andrew@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/17689004

TBR=fgalligan@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6423 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 23:03:17 +00:00
henrike@webrtc.org
3c13ed3b93 json.h include different header files depending on WEBRTC_CHROMIUM_BUILD being defined or not. Since json.h/cc is not even used in chromium it is the wrong flag to use. Instead add WEBRTC_EXTERNAL define. Also added OWNERS for base which is a copy of system_wrappers owners as the two folders are being merged.
BUG=3379
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6421 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 21:43:04 +00:00
stefan@webrtc.org
cb254aac3b Enable pacing by default and remove the option to disable it from the new API.
BUG=1672
R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6416 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 15:12:25 +00:00
fgalligan@google.com
27f062ae6f Update generated asm offsets scripts.
This is the same CL as https://webrtc-codereview.appspot.com/16629004/
Relanding and TBR from previous lgtm.

Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:275816
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

*NOTE* This CL will break the Android bots as they are built in a
Chromium checkout, which will pull in old libvpx DEPS. They will
cycle to green when we roll libvpx into Chromium. We must do the
rolls in this order becuase we have to land webrtc and libvpx at
the same time into Chromium.

BUG=377062
TBR=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6415 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 14:59:28 +00:00
kjellander@webrtc.org
7e3d62d709 Revert 6411 "Revert 6407 "Revert 6405 "Update generated asm offs..."
Turns out the previous revert was based on invalid assumptions.
The libvpx in Chromium was reverted in 
http://chromegw.corp.google.com/viewvc/chrome?view=rev&revision=271259
which ends up with libvpx r269083. Therefore we should restore
that same libvpx revision for WebRTC, which this revert will do.

> Revert 6407 "Revert 6405 "Update generated asm offsets scripts.""
> 
> > Revert 6405 "Update generated asm offsets scripts."
> > 
> > TBR=fgalligan@google.com
> > BUG=N/A
> > 
> > Review URL: https://webrtc-codereview.appspot.com/20639004
> 
> TBR=henrike@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/15739004

TBR=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6413 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 11:07:07 +00:00
minyue@webrtc.org
c01cc3d3a8 Revert 6407 "Revert 6405 "Update generated asm offsets scripts.""
> Revert 6405 "Update generated asm offsets scripts."
> 
> TBR=fgalligan@google.com
> BUG=N/A
> 
> Review URL: https://webrtc-codereview.appspot.com/20639004

TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6411 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 08:48:34 +00:00
asapersson@webrtc.org
2881ab1e36 Increased kMaxRampUpDelayMs (120 to 240s).
Add support for triggering on encode rsd metric if its thresholds are configured. Added unit tests.

BUG=1577
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6410 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 08:46:46 +00:00
henrike@webrtc.org
286cd7683c Revert 6405 "Update generated asm offsets scripts."
TBR=fgalligan@google.com
BUG=N/A

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6407 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-12 00:38:32 +00:00
fgalligan@google.com
4aeb94186a Update generated asm offsets scripts.
Libvpx updated the unpack scripts to fix building dependencies.

Roll libvpx 269083:275816
See https://codereview.chromium.org/295313002/
https://codereview.chromium.org/298063002/
https://codereview.chromium.org/305533008/
https://codereview.chromium.org/305703002/
https://codereview.chromium.org/298383003/
https://codereview.chromium.org/302863004/
https://codereview.chromium.org/320923003/
for the libvpx changes.

See https://codereview.chromium.org/313243004/
for the WebView changes.

BUG=377062
R=andrew@webrtc.org, michaelbai@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6405 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 17:12:51 +00:00
henrik.lundin@webrtc.org
5b111b06fa Re-land "Create a joint encoder/decoder wrapper for iSAC in ACM"
The change was reverted since it was thought to cause a flaky test.
But the test kept flaking after the change was reverted.

This effectively reverts r6394, relanding r6377.

BUG=3496
TBR=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6404 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 14:37:21 +00:00
phoglund@webrtc.org
8454ad1b3e Reland: Making WebRTC able to play and record audio to files for tests.
By specifying the define WEBRTC_DUMMY_FILE_DEVICES (which is similar to
WEBRTC_DUMMY_AUDIO_BUILD) an application will be able to tell WebRTC to
play out audio to a file and feed audio in from a file. We want to do
so we can better test WebRTC-using applications by recording what the
audio stack outputs and feeding known audio in for quality tests.

R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6403 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 14:12:04 +00:00
stefan@webrtc.org
fbb567dacd Add APIs to enable padding with redundant payloads.
Also makes a small change to the tests to remove flakiness. We can't do
BWE only based on rtp timestamps if we preemptively resend packets instead
of sending padding packets.

BUG=1812,2992
R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6400 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 13:41:36 +00:00
minyue@webrtc.org
e08a11c4a1 Revert 6395 "Making WebRTC able to play and record audio to file..."
> Making WebRTC able to play and record audio to files for tests.
> 
> By specifying the define WEBRTC_DUMMY_FILE_DEVICES (which is similar to
> WEBRTC_DUMMY_AUDIO_BUILD) an application will be able to tell WebRTC to
> play out audio to a file and feed audio in from a file. We want to do
> so we can better test WebRTC-using applications by recording what the
> audio stack outputs and feeding known audio in for quality tests.
> 
> R=henrika@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/20609004

TBR=phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6396 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 10:40:30 +00:00
phoglund@webrtc.org
fa042ca15d Making WebRTC able to play and record audio to files for tests.
By specifying the define WEBRTC_DUMMY_FILE_DEVICES (which is similar to
WEBRTC_DUMMY_AUDIO_BUILD) an application will be able to tell WebRTC to
play out audio to a file and feed audio in from a file. We want to do
so we can better test WebRTC-using applications by recording what the
audio stack outputs and feeding known audio in for quality tests.

R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6395 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 09:57:23 +00:00
henrik.lundin@webrtc.org
c726b1fc33 Revert r6377 "Create a joint encoder/decoder wrapper for iSAC in ACM"
BUG=3469
TBR=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6394 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 08:35:53 +00:00
bjornv@webrtc.org
18026abd82 common_audio/signal_processing: Removes macro WEBRTC_SPL_RSHIFT_U16
This macro is only used at a few places and implies a cast to uint16_t before right shifting. All places already use uint16_t. Further, the amount of shifts applied in the macro has no sanity check for negativity, makes the macro dangerous to use.

BUG=3348,3353
TESTED=trybots and manually
R=kwiberg@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6393 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 06:53:20 +00:00
bjornv@webrtc.org
782978cfcb common_audio/signal_processing: Moves WEBRTC_SPL_UMUL_16_16_RSFT16 to iSAC fix
This macro is only used by the fixed point version of iSAC. Replacing the (five) locations in arith_routines_logist.c, where it is used, with the actual operation.

BUG=3348,3353
TESTED=trybots and manually
R=kwiberg@webrtc.org, tina.legrand@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6392 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 06:39:03 +00:00
bjornv@webrtc.org
3f83072c26 modules/audio_processing: Adds a config for reported delays
There are platforms and devices where the reported delays are untrusted and we currently solve that with an extended filter length and a slightly more conservative delay handling.
With this change we give the user the possibility to turn off reported system delay values completely.

- Includes new unit tests.

TESTED=trybots and manual testing
R=aluebs@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6391 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-11 04:48:11 +00:00
henrik.lundin@webrtc.org
fd59c39caa Delete last file in neteq4 folder
The .isolate file can now be safely removed, since issue 3462 is
resolved.

BUG=2996
R=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6388 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 20:26:27 +00:00
andrew@webrtc.org
919914d71b MIPS optimizations for ISAC (patch #1)
Implemented functions:
    - WebRtcIsacfix_AutocorrMIPS
    - WebRtcIsacfix_FilterArLoop
    - WebRtcIsacfix_FilterMaLoopMIPS
    - WebRtcIsacfix_AllpassFilter2FixDec16MIPS (only MIPS DSP)
    - WebRtcIsacfix_PitchFilterCore (only MIPS DSPR2)

Gain achieved: from aprox. 15% (MIPS32) up to aprox. 40% (MIPS DSPR2)

R=andrew@webrtc.org, tina.legrand@webrtc.org

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

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6387 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 18:13:15 +00:00
kwiberg@webrtc.org
12cd443752 Noise suppression: Change signature to work on floats instead of ints
Internally, it already worked on floats. This patch just changes the
signature of a bunch of functions so that floats can be passed
directly from the new and improved AudioBuffer without converting the
data to int and back again first.

(The reference data to the ApmTest.Process test had to be modified
slightly; this is because the noise suppressor comes immediately after
the echo canceller, which also works on floats. If I truncate to
integers between the two steps, ApmTest.Process doesn't complain, but
of course that's exactly the sort of thing the float conversion is
supposed to let us avoid...)

BUG=
R=aluebs@webrtc.org, bjornv@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6385 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 11:13:09 +00:00
asapersson@webrtc.org
734a532723 Add additional metric (relative standard deviation of encode time) for overuse detection.
This code is currently only for testing.

BUG=1577
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6381 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 06:35:22 +00:00
kjellander@webrtc.org
7b82c18979 Add kjellander@webrtc.org as OWNER for *.isolate
This should make project-wide changes for isolate files
easier and make it more obvious who's a suitable reviewer
for them.

BUG=
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6379 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 05:42:53 +00:00
henrik.lundin@webrtc.org
620048172c Create a joint encoder/decoder wrapper for iSAC in ACM
This CL extends the ACMISAC wrapper class to inherit from AudioDecoder
as well (the type of object that NetEq uses). The class has it's own
lock protecting the iSAC instance. This way, we can remove the
neteq_decode_lock_ (a.k.a. decoder_lock_) in a later CL.

The old AcmAudioDecoderIsac class is deleted.

R=kwiberg@webrtc.org, tina.legrand@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6377 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 18:39:00 +00:00
henrik.lundin@webrtc.org
a90abdef62 Add thread annotations to AcmReceiver
This change adds thread annotations to AcmReceiver. These are the
annotations that could be added without changing acquiring the locks in
more locations, or changing the lock structure.

BUG=3401
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6376 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 18:35:11 +00:00
henrik.lundin@webrtc.org
190a32fd55 Make some methods in Clock class const declared
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6375 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 17:40:49 +00:00
kjellander@webrtc.org
6b6e58d632 Remove unused test_env.py from isolate files + fix nss path.
This is not necessary for executing tests for WebRTC.
It probably appeared in our .isolate files because of code
copied from Chromium.

BUG=
TEST=All non-baremetal trybots passing.
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6373 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 14:35:09 +00:00
bjornv@webrtc.org
ed7edb8e89 Enables DelayCorrection tests
The fix has been done elsewhere and the test pass.

BUG=3445
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6371 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 10:02:05 +00:00
phoglund@webrtc.org
582367f251 Updated conformance tests and w3c-ified them.
I intend here to put these up for review on W3C. This moves the tests
to use the W3C-style vendor prefix handling and updates the tests to
the latest drafts.

This yields 44 Pass 24 Fail and 13 pass 54 fail 1 timeout on Firefox.
As far I can tell all failures are correct; in particular FF media
media stream tracks do not adhere to the standard.

Also I can't get FF to get a remote video up in the peerconnection
test, just the local one.

BUG=webrtc:3455
R=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6370 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 09:47:44 +00:00
henrik.lundin@webrtc.org
a1a2c0c190 Multi-threaded unit test for Audio Coding Module using iSAC
This test extends AudioCodingModuleTest and AudioCodingModuleMtTest
to using iSAC as codec.

R=kwiberg@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6369 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 09:37:17 +00:00
bjornv@webrtc.org
cb0ea43e57 audio_processing: Forces extended filter to be used in splitting filter test.
The behavior differ between "normal" and "extended" modes when using AEC. In the extended filter mode nothing is processed until we have received a farend frame. This is exactly what is needed in this part of the splitting filter test.
On Android, we do not use the normal mode, which made the test to fail.

BUG=3445
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6368 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 08:21:52 +00:00
henrik.lundin@webrtc.org
9c55f0f957 Rename neteq4 folder to neteq
Keep the old neteq4/audio_decoder_unittests.isolate while waiting for
a hard-coded reference to change.

This CL effectively reverts r6257 "Rename neteq4 folder to neteq".

BUG=2996
TBR=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6367 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-09 08:10:28 +00:00
henrik.lundin@webrtc.org
9221ab420d Re-enable AudioCodingModuleMtTest again
Increase timeout and decrease test length.

BUG=3426
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6365 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-08 21:43:45 +00:00
fischman@webrtc.org
24c1778651 Revert r6358 "AppRTCDemo(Android): only stop the cameraThread's looper after stopping the camera."
Makes stopping flakier for some reason :/

BUG=
R=glaznev@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6361 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 22:24:40 +00:00
jiayl@webrtc.org
b8f582591f Use XErrorTrap in MouseCursorMonitorX11 to catch the error if the shared window has been closed.
BUG=crbug/374457
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6359 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 21:42:00 +00:00
fischman@webrtc.org
171d94177b AppRTCDemo(Android): only stop the cameraThread's looper after stopping the camera.
R=glaznev@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6358 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 21:22:37 +00:00
fischman@webrtc.org
b464618c84 Unbreak NDEBUG compile by RTC_UNUSED()ing an assert()d variable.
TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6357 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 20:13:49 +00:00
fischman@webrtc.org
b273b60154 ViEAutoTestAndroid: Unbreak compile by casting void* to jobject.
Sure would be nice if the try fleet used both gcc _and_ clang...

TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6355 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 18:59:30 +00:00
fischman@webrtc.org
9512719569 AppRTCDemo(android): support app (UI) & capture rotation.
Now app UI rotates as the device orientation changes, and the captured stream
tries to maintain real-world-up, matching Chrome/Android and Hangouts/Android
behavior.

BUG=2432
R=glaznev@webrtc.org, henrike@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6354 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 18:40:44 +00:00
fischman@webrtc.org
42694c5937 VideoCaptureImpl::IncomingFrame(): avoid deadlock by acquiring _apiCs.
Since VCI::IF() fires a callback it risks a call back into VCI on the same
stack.  Failing to acquire _apiCs before _callbackCs means this is a lock
inversion and deadlock results.  By acquiring _apiCs first no lock inversion
occurs and the deadlock is removed.

BUG=3434
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6353 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 18:28:28 +00:00
pbos@webrtc.org
6ae48c6609 Make VideoSendStream/VideoReceiveStream configs const.
Benefits of this is that the send config previously had unclear locking
requirements, a lock was used to lock parts parts of it while
reconfiguring the VideoEncoder. Primary work was splitting out video
streams from config as well as encoder_settings as these change on
ReconfigureVideoEncoder. Now threading requirements for both member
configs are clear (as they are read-only), and encoder_settings doesn't
stay in the config as a stale pointer.

CreateVideoSendStream now takes video streams separately as well as the
encoder_settings pointer, analogous to ReconfigureVideoEncoder.

This change required changing so that pacing is silently enabled when
using suspend_below_min_bitrate rather than silently setting it.

R=henrik.lundin@webrtc.org, mflodman@webrtc.org, pthatcher@webrtc.org, stefan@webrtc.org
BUG=3260

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6349 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 10:49:19 +00:00
henrike@webrtc.org
4e5f65a4c6 Rebase webrtc/base with r6345 version of talk/base:
cd webrtc/base
svn diff -r 6249:6300 http://webrtc.googlecode.com/svn/trunk/talk/base >
6300.diff
patch -p0 -i 6300.diff
ls genericslot* | xargs rm
cp ../../talk/base/sigslottester* .
manual edits of sigslottester* to get rid of talk and talk_base.

BUG=3379
TBR=jiayang

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6347 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 20:40:11 +00:00
wu@webrtc.org
94454b71ad Fix the chain that propagates the audio frame's rtp and ntp timestamp including:
* In AudioCodingModuleImpl::PlayoutData10Ms, don't reset the timestamp got from GetAudio.
* When there're more than one participant, set AudioFrame's RTP timestamp to 0.
* Copy ntp_time_ms_ in AudioFrame::CopyFrom method.
* In RemixAndResample, pass src frame's timestamp_ and ntp_time_ms_ to the dst frame.
* Fix how |elapsed_time_ms| is computed in channel.cc by adding GetPlayoutFrequency.

Tweaks on ntp_time_ms_:
* Init ntp_time_ms_ to -1 in AudioFrame ctor.
* When there're more than one participant, set AudioFrame's ntp_time_ms_ to an invalid value. I.e. we don't support ntp_time_ms_ in multiple participants case before the mixing is moved to chrome.

Added elapsed_time_ms to AudioFrame and pass it to chrome, where we don't have the information about the rtp timestmp's sample rate, i.e. can't convert rtp timestamp to ms.

BUG=3111
R=henrik.lundin@webrtc.org, turaj@webrtc.org, xians@webrtc.org
TBR=andrew
andrew to take another look on audio_conference_mixer_impl.cc

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6346 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 20:34:08 +00:00
tina.legrand@webrtc.org
65d61c3924 Opus send rate overflows if over 65 kbps
The member holding the send rate for Opus had too low resolution for rates above ~65 kbps.

I've added a test that checks if the average rate in a Opus test is in the right range. The test fails before my fix, and now passes.

BUG=3267
R=henrik.lundin@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6344 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 13:42:51 +00:00
bjornv@webrtc.org
b51d3ea593 Revert 6341 "Fixes and enables SystemDelayTests."
> Fixes and enables SystemDelayTests.
> 
> The root cause for failure was that the delay handling of reported delays was bypassed on Android, whereas the tests assumes that part of AEC to be run.
> This CL checks if it is in use.
> 
> BUG=3445
> R=kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/12689005

TBR=bjornv@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6343 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 13:41:33 +00:00
bjornv@webrtc.org
1f971b5788 Fixes and enables SystemDelayTests.
The root cause for failure was that the delay handling of reported delays was bypassed on Android, whereas the tests assumes that part of AEC to be run.
This CL checks if it is in use.

BUG=3445
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6341 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 10:58:55 +00:00
henrik.lundin@webrtc.org
2f816bbae7 NetEq: Add thread annotation to const scoped_ptrs
Since the objects pointed to are not const, only the pointer to them,
they too must be accessed under lock.

Move the crit_sect to above the variables it is protecting.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6340 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 10:37:13 +00:00
mflodman@webrtc.org
eae7924836 Adding back platform specific renderer to video loopback test.
BUG=3039
TEST=locally on Mac and Win, video_loopback test
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6339 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 09:32:51 +00:00
bjornv@webrtc.org
aafd7a88c5 The correct fix of workaround in r6261.
The CL also includes same changes to filterbanks.c in iSAC fix and aecm_core_c.c

BUG=3370,3395,3439
TESTED=trybots
R=fdegans@chromium.org, glaznev@webrtc.org, kwiberg@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6337 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 08:53:51 +00:00
bjornv@webrtc.org
edbe886a0b common_audio/signal_processing: Removed macro WEBRTC_SPL_MUL_16_16_RSFT_WITH_FIXROUND
This macro was only used at two places in fixed point iSAC, where it has been replaced with the operation.

BUG=3348,3353
TESTED=trybots
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6336 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 08:42:53 +00:00