Commit Graph

8248 Commits

Author SHA1 Message Date
Thiago Farina
aaf61e460b Cleanup: Remove MD5_CTX typedef.
Instead just use MD5Context type directly. In C++ it is unnecessary to
alias the types using typedef, unline C (where if you don't you have to
spell out struct or enum infront of the user-type everytime you want to make a
variable).

So since WebRTC's base API is C++, it seems unnecessay to keep this
typedef around.

BUG=None
TEST=rtc_unittests --gtest_filter=Md5*
R=tommi@webrtc.org

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

Patch from Thiago Farina <tfarina@chromium.org>.

Cr-Commit-Position: refs/heads/master@{#8916}
2015-04-01 22:25:29 +00:00
Henrik Kjellander
fa16dda238 Revert "Port frame_analyzer and rgba_to_i420_converter targets to GN build."
This reverts commit 6ac53b2b37.

Reason: breaks compile on Win GN:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Win%20GN/builds/131

TBR=tfarina@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#8915}
2015-04-01 20:54:08 +00:00
Henrik Kjellander
6ac53b2b37 Port frame_analyzer and rgba_to_i420_converter targets to GN build.
Tested on Linux with the following command lines:

$ gn gen //out/Debug --args='is_debug=true target_cpu="x64" build_with_chromium=false'
$ ninja -C out/Debug frame_analyzer rgba_to_i420_converter

BUG=chromium:461019
TEST=see above
R=kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8914}
2015-04-01 15:29:51 +00:00
Henrik Kjellander
722ef1fb59 Remove henrike@ from OWNERS
Since he has left the team.

R=henrike@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8913}
2015-04-01 15:08:49 +00:00
Minyue
cf3c83e76c Revert "Split EventWrapper in twain."
This reverts commit 9509fbfc30.

This is to debug a Chromium issue that WebRTC hangs if there is > 1 PeerConnection active in the browser on Win XP.

BUG=

TBR=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8912}
2015-04-01 14:31:45 +00:00
Minyue
31331cfd2d Revert "Enable CVO by default through webrtc pipeline."
This reverts commit 1b1c15cad1.

Due to failure on
http://build.chromium.org/p/client.webrtc/builders/Linux64%20Release%20%5Blarge%20tests%5D/builds/4092
and following builds (the test hangs and never finishes).
R=kjellander@webrtc.org
TBR=guoweis@chromium.org
TESTED=Local revert + execution of libjingle_peerconnection_java_unittest show that this is the culprit.

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

Cr-Commit-Position: refs/heads/master@{#8911}
2015-04-01 14:20:11 +00:00
Henrik Kjellander
d91cb5d5fb Reduce the number of Chromium dependencies synced.
This should save a bunch of disk space but most important
of all it will not sync the Chromium DEPS-pinned copy of WebRTC,
which can be very confusing when using IDEs that indexes all the
source code recursively.

TESTED=
$ rm chromium/.last_sync_chromium
$ rm -rf chromium/src/third_party/webrtc/
$ gclient sync
Verified chromium/src/third_party/webrtc/ didn't come back.

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8910}
2015-04-01 11:30:53 +00:00
henrika
3cd9eaf5e8 Ensures that AudioManager.isVolumeFixed() is only used for Android L and above
TBR=perkj
BUG=NONE
TEST=./webrtc/build/android/test_runner.py gtest -s modules_unittests --gtest_filter=AudioDevice* --num_retries=0

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

Cr-Commit-Position: refs/heads/master@{#8909}
2015-04-01 10:00:09 +00:00
Henrik Kjellander
f536a507b6 Remove duplicated source listing of gtest_prod_util.h
This should have been done in
https://webrtc-codereview.appspot.com/39579004

BUG=
R=andresp@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8908}
2015-04-01 09:45:56 +00:00
Zhongwei Yao
f809b9b38d Fix bug in WebRtcIsacfix_FilterMaLoopNeon.
Pass content_browsertests in Chromium. Performance test result (lower is
better):
C version: 100%
old intrinsics Neon version (with bug): 16.5%
new intrinsics Neon version: 18.0%
asm Neon version: 23.3%

BUG=4002
R=andrew@webrtc.org, jridges@masque.com

Change-Id: Ia0a96ac237216b635fc528f67d39319cdf246281

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

Cr-Commit-Position: refs/heads/master@{#8907}
2015-04-01 09:43:22 +00:00
Peter Boström
9cb1f3002f Remove er_tables_xor.h.
Removes _efficiency and _residualPacketLossFec from
VCMLossProtectionLogic which are updated but never read. This frees up
~38k of local read-only data.

BUG=4491
R=marpan@google.com, mflodman@webrtc.org, marpan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8906}
2015-04-01 09:39:57 +00:00
Guo-wei Shieh
1b1c15cad1 Enable CVO by default through webrtc pipeline.
All RTP packets from sender side will carry the rotation info. (will file a bug to track this) On the receiving side, only packets with marker bit set will be examined.

Tests completed:
1. android standalone to android standalone
2. android standalone to chrome (with and without this change)
3. android on chrome

BUG=4145
R=glaznev@webrtc.org, mflodman@webrtc.org, perkj@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8905}
2015-04-01 02:42:50 +00:00
Jiayang Liu
4b3c0d6f34 Use WebRTC API to convert byteorder in srtpfilter.
This CL uses WebRTC API to convert 64bit from big-endian to host-endian,
so the internal "be64_to_cpu" of libsrtp is not used. The code path of
"be64_to_cpu" in newer versions of libsrtp depends on compile-time
defines that are not available in WebRTC.

BUG=https://code.google.com/p/chromium/issues/detail?id=328475
R=juberti@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8904}
2015-03-31 22:02:50 +00:00
Zeke Chin
4825356620 RTCDataChannel: Unregister data channel observer on dealloc.
BUG=4490
R=haysc@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8903}
2015-03-31 18:06:27 +00:00
Magnus Jedvert
379069f676 VideoRenderCallback::RenderFrame: Make I420VideoFrame& ref const.
RenderFrame should not modify the I420VideoFrame (and we don't).

This CL changes the declaration of RenderFrame from:
int32_t RenderFrame(const uint32_t streamId, I420VideoFrame& videoFrame)
to:
int32_t RenderFrame(const uint32_t streamId, const I420VideoFrame& videoFrame)

BUG=1128
R=mflodman@webrtc.org, perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8902}
2015-03-31 17:52:37 +00:00
mflodman
0828a0c094 Revert "Avoid critsect for protection- and qm setting callbacks in VideoSender."
This reverts commit 903c0f2e76,
aka #8899.

TBR=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8901}
2015-03-31 13:29:31 +00:00
Peter Boström
23914fe756 Reject RTP one-byte extension ID 0.
Only accept local identifiers in the range 1-14 inclusive.

BUG=1788, chromium:471328
R=asapersson@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8900}
2015-03-31 13:08:13 +00:00
mflodman
903c0f2e76 Avoid critsect for protection- and qm setting callbacks in VideoSender.
This CL avoids changing the mentioned callbacks during a call, to avoid
a potential deadlock when acquiring _sendCritSect and calling
_mediaOpt.SetTargetRates.

Moving the critsect revealed a race for the FEC parameters in RtpVideoSender, so the CL grew a bit to avoid this. I also cleaned up some code here at the same time, but tried to keep it at a minimum since this CL had already increased a lot in size.

BUG=769
R=pbos@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8899}
2015-03-31 13:07:26 +00:00
Tommi
738a5b44d0 Remove old suppression for ProcessThreadImpl.
The implementation has been changed considerably since it was added.

R=kjellander@webrtc.org
BUG=3509

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

Cr-Commit-Position: refs/heads/master@{#8898}
2015-03-31 09:48:14 +00:00
Bjorn Volcker
bc46bf22e7 common_audio: Explicit cast in WebRtcSpl_NormW16 on ARM
We currently hit asserts in AECM where the output of WebRtcSpl_NormW16() on armv7 is incorrect.
I've verified that it outputs -17 for negative values. Internally that means that clz returns 0 after a two's complement operation on a int16_t.
There is a mismatch between the int16_t input and otherwise 32 bit assumptions. Explicitly casting to int32_t makes the two's complement do the correct thing.

The CL also extends the unit tests by running through a larger set of values.

BUG=4486
TESTED=locally on Android Nexus 7 and trybots
R=aluebs@webrtc.org, kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8897}
2015-03-30 21:38:36 +00:00
Alex Glaznev
0194d32873 Add WebRtcAudioManager to peerconnection_jar library
R=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8896}
2015-03-30 18:20:36 +00:00
Tommi
65f74a1fc6 Revert "Suppress data races in libjingle_peerconnection_unittest"
This reverts commit 8e9c67e6a9.
- 8e9c67e6a9

BUG=4488,4473
TBR=kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8895}
2015-03-30 18:10:05 +00:00
Andrew MacDonald
2c9c83d7ec Remove non-functional asynchronous resampling mode.
A few other cleanups, most notably using a sane parameter to specify the
number of channels.

BUG=chromium:469814
R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8894}
2015-03-30 17:08:28 +00:00
Henrik Lundin
45c6449114 Introduce CodecManager and move code from AudioCodingModuleImpl
This change essentially divides AudioCodingModuleImpl into two parts:
one is the code related to managing codecs, now moved into CodecManager,
and the other is what remains in AudioCodingModuleImpl.

This change also removes AudioCodingModuleImpl::InitializeSender. The
function was essentially no-op, since it was always called immediately
after construction.

COAUTHOR=kwiberg@webrtc.org
BUG=4228
R=minyue@webrtc.org, tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8893}
2015-03-30 17:00:54 +00:00
Minyue Li
f7b9cf54a6 Suppress "EndToEndTest::ReceivedFecPacketsNotNacked" on Asan, Tsan
BUG=4328
R=kjellander@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8892}
2015-03-30 15:26:45 +00:00
Tommi
842a4a6b50 Add locks to Start(), Stop() methods in ProcessThread.
This is necessary unfortunately since there are a few places where DeRegisterModule does not reliably occur on the same thread.

BUG=4473
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8891}
2015-03-30 14:16:25 +00:00
Henrik Lundin
22e209d4f8 Introduce AudioCodingModuleImpl::current_encoder_
This replaces direct reference into the codecs_ array in many places.
The variables current_send_codec_idx_ and send_codec_registered_ are
replaced.

COAUTHOR=kwiberg@webrtc.org
BUG=4228
R=minyue@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8890}
2015-03-30 13:28:19 +00:00
Henrik Lundin
582f80e95c Clamp decoder sample rate to 32000 in iSAC
We want to crate the illusion that iSAC supports 48000 Hz decoding,
while in fact it outputs 32000 Hz. This is the iSAC fullband mode.

Currently this is (also) handled by higher layers, but in future
changes this will not be the case.

R=tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8889}
2015-03-30 13:01:47 +00:00
Magnus Jedvert
1ecfd55044 videoadapter_unittest.cc: Revert removal of '#if defined(HAVE_WEBRTC_VIDEO)'
This CL reverts some parts of "Delete VideoAdapter::AdaptFrame" https://webrtc-codereview.appspot.com/44769004/.

Reason for revert: Should not touch HAVE_WEBRTC_VIDEO since libjingle_media_unittests does not compile without anyway.

BUG=4317
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8888}
2015-03-30 09:25:04 +00:00
Stefan Holmer
451b61469b Fix gyp path for bwe simulator include.
TBR=pbos@webrtc.org

BUG=4479

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

Cr-Commit-Position: refs/heads/master@{#8887}
2015-03-30 07:40:58 +00:00
Henrik Kjellander
8e9c67e6a9 Suppress data races in libjingle_peerconnection_unittest
TBR=pbos@webrtc.org
BUG=4488
TESTED=Passing builds with:
out/Release/libjingle_peerconnection_unittest --gtest_filter=PeerConnectionInterfaceTest* --gtest_repeat=100 --gtest_break_on_failure
(reproduces without these suppressions)

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

Cr-Commit-Position: refs/heads/master@{#8886}
2015-03-30 07:39:38 +00:00
Henrik Kjellander
9f52448e74 Roll chromium_revision 4d63ee8..719b839 (322012:322539)
Relevant changes:
* src/third_party/libvpx: 2c87306..861f35b
* src/tools/grit: 0287c18..0ac6d13
* src/tools/swarming_client: b61a180..53ef013
Details: 4d63ee8..719b839/DEPS

Clang version changed 231690:233105
Details: 4d63ee8..719b839/tools/clang/scripts/update.sh

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8885}
2015-03-30 07:26:48 +00:00
Henrik Kjellander
6b3ccfc6a6 GN: Cleanup no longer needed libvpx config.
The includes this config provided are now
present just by depending on libvpx.

R=tfarina@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#8884}
2015-03-28 17:28:50 +00:00
Henrik Kjellander
819011c35c Additional suppression for TSan deadlock detection
Turns out the one in https://webrtc-codereview.appspot.com/44899004
was not enough to suppress this error.

TBR=pbos@webrtc.org
BUG=4456
TESTED=Passing local TSan run of rtc_unittests

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

Cr-Commit-Position: refs/heads/master@{#8883}
2015-03-27 20:42:19 +00:00
Peter Boström
dfd53fe26b Raise streams for SetMaxSendBitrates above 2000k.
Fixes b=AS effectively not setting bitrates above 2000k.

BUG=1788,4469
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8882}
2015-03-27 14:58:17 +00:00
Peter Boström
53eda3dbd0 Add tests for r8811.
All these tests crashed before r8811. These tests should've been with
that change but r8811 was pushed in before to make bots green.

BUG=1788, 1667
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8881}
2015-03-27 14:53:30 +00:00
Henrik Kjellander
b3fc48b28f Update the notice about the slow Chromium sync.
It's no longer valid to run 'git auto-svn' since we've
moved over to Git.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8880}
2015-03-27 13:25:44 +00:00
Henrik Kjellander
1d36003181 Suppress TSan errors triggered when deadlock detection is enabled.
These are problematic when running with the default TSan
settings which has deadlock detection enabled.
Our bots still run with it disabled but we want to be
able to turn it back on, thus this is needed.

BUG=3911,4456
TESTED=
Successfully executed:
GYP_DEFINES="tsan=1 release_extra_cflags=-g use_allocator=none" webrtc/build/gyp_webrtc
ninja -C out/Release rtc_unittests
out/Release/rtc_unittests

R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8879}
2015-03-27 12:46:47 +00:00
henrika
9ff73f5dbf Final minor fix in WebRtcAudioManager
TBR=perkj
BUG=NONE

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

Cr-Commit-Position: refs/heads/master@{#8878}
2015-03-27 10:37:06 +00:00
Bjorn Volcker
424694ce79 audio_processing/agc: Put entire method set_output_will_be_muted() under lock
Setting the member value output_will_be_muted_ in set_output_will_be_muted() was done before the lock.
This caused a data race.

BUG=4477
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8877}
2015-03-27 10:30:54 +00:00
Per
75a0255627 Handle borked Android cameras gracefully.
It turns out that Camera.getCameraInfo can throw an exception if the camera does not work.

TESTED=added a throw before all calls to Camera.open and Camera.getCameraInfo and made sure APPRtcDemo does not crash.

BUG=4371
R=glaznev@webrtc.org, magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8876}
2015-03-27 10:15:27 +00:00
henrika
8324b525dc Adding playout volume control to WebRtcAudioTrack.java.
Also adds a framework for an AudioManager to be used by both sides (playout and recording).
This initial implementation only does very simple tasks like setting up the correct audio
mode (needed for correct volume behavior). Note that this CL is mainly about modifying
the volume. The added AudioManager is only a place holder for future work. I could have
done the same parts in the WebRtcAudioTrack class but feel that it is better to move these
parts to an AudioManager already at this stage.

The AudioManager supports Init() where actual audio changes are done (set audio mode etc.)
but it can also be used a simple "construct-and-store-audio-parameters" unit, which is the
case here. Hence, the AM now serves as the center for getting audio parameters and then inject
these into playout and recording sides. Previously, both sides acquired their own parameters
and that is more error prone.

BUG=NONE
TEST=AudioDeviceTest
R=perkj@webrtc.org, phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8875}
2015-03-27 09:56:35 +00:00
Peter Boström
8ed6a4bba4 Remove unused non-standard capture stats.
Removes 'googCaptureJitterMs' and 'googCaptureQueueDelayMsPerS' from
talk/. The overuse-detection method used is based on encoding time,
so these stats aren't useful enough to warrant having them showing up in
GetStats().

BUG=
R=stefan@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8874}
2015-03-27 09:01:11 +00:00
Magnus Jedvert
3954e1dfe1 Remove unused implementations in cricket::VideoFrame
This CL moves dummy implementations from cricket::VideoFrame to NullVideoFrame instead.

R=guoweis@webrtc.org, perkj@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8873}
2015-03-27 08:48:45 +00:00
Minyue Li
7100dcd317 Adding "usedtx" as Opus codec parameter.
This is according to https://tools.ietf.org/html/draft-spittka-payload-rtp-opus-03

Specifically,

usedtx: specifies if the decoder prefers the use of DTX. values are 1 and 0. If no value is specified, usedtx is assumed to be 0.

BUG=1014
R=juberti@webrtc.org, tina.legrand@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8872}
2015-03-27 04:06:35 +00:00
Jiayang Liu
bef8d2d020 Add a lock to NSSContext to fix data race
BUG=crbug/466784
R=juberti@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8871}
2015-03-26 21:38:53 +00:00
Marco
b8cfa68323 Update speed setting in VP9.
TBR=stefan@webrtc.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#8870}
2015-03-26 20:20:40 +00:00
Peter Boström
74d9ed7d85 Report send codec name in GetStats().
BUG=4461
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8869}
2015-03-26 15:28:43 +00:00
Peter Boström
d6f4c25eed Reject streams reusing simulcast or RTX SSRCs.
BUG=1788, chromium:470122, chromium:470856
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8868}
2015-03-26 15:23:13 +00:00
Jelena Marusic
a990784da3 AcmReceiver: index decoders by payload type instead of ACM codec ID
Change internal indexing of registered decoders. It makes sense because payload type is unique, while ACM codec ID may not be. This is a step towards allowing for addition of external decoders.

R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#8867}
2015-03-26 13:01:37 +00:00