8673 Commits

Author SHA1 Message Date
kjellander
fd5b4e9435 GN: Add peerconnection_unittests
BUG=webrtc:5949
TESTED=Built and ran the tests on Mac.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2054413002
Cr-Commit-Position: refs/heads/master@{#13116}
2016-06-13 19:08:38 +00:00
skvlad
880ffeb6c0 Optimize the repeated calls to AudioEffect.queryEffects() on Android
This CL eliminates repeated calls to AudioEffect.queryEffects() on Android when configuring the audio device. Each of these calls was taking 5-10 milliseconds on the devices I was testing (Nexus 4, Nexus 5), and setting up the audio device involved around 10 of these calls.

This change adds a method that checks the cached list of effects before calling the underlying operating system API; this eliminated about half of these calls. The other half happened inside static methods such as NoiseSuppressor.isAvailable(), which are just convenience wrappers for searching through the list of effects. These calls have been replaced with searching through the cached list of effects, reducing the time to configure audio processing effects from 60-80 ms to 5-10. This results in a similar improvement in call setup time.

BUG=

Review-Url: https://codereview.webrtc.org/2051323002
Cr-Commit-Position: refs/heads/master@{#13115}
2016-06-13 19:05:30 +00:00
deadbeef
63797930be Removing obsolete method from channel.h.
This was just glossed over accidentally in a previous CL.

TBR=pthatcher@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2062893002
Cr-Commit-Position: refs/heads/master@{#13114}
2016-06-13 17:49:16 +00:00
gyzhou
abfdb53f6d Fixed partially out of screen window capture in unix
BUG=596595

Review-Url: https://codereview.webrtc.org/2044693002
Cr-Commit-Position: refs/heads/master@{#13113}
2016-06-13 16:22:10 +00:00
ossu
29b1a8d7ec Moved creation of AudioDecoderFactory to inside PeerConnectionFactory.
CreatePeerConnectionFactory does not yet expose the ability to set the
factory from the outside.

Added notry due to android_dbg being broken.

NOTRY=True
BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/1991233004
Cr-Commit-Position: refs/heads/master@{#13112}
2016-06-13 14:35:01 +00:00
kjellander
781e0c03a2 GN: Fix 32-bit Mac library error
The error hasn't been noticed since we don't really do
(or support) Mac 32-bit builds.

BUG=webrtc:5949
NOTRY=True

Review-Url: https://codereview.webrtc.org/2065583002
Cr-Commit-Position: refs/heads/master@{#13111}
2016-06-13 12:41:20 +00:00
Niels Möller
718a763d59 Refactor scaling.
Introduce a new method I420Buffer::CropAndScale, and a static
convenience helper I420Buffer::CenterCropAndScale. Use them for almost
all scaling needs.

Delete the Scaler class and the cricket::VideoFrame::Stretch* methods.

BUG=webrtc:5682
R=pbos@webrtc.org, perkj@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2020593002 .

Cr-Commit-Position: refs/heads/master@{#13110}
2016-06-13 11:06:14 +00:00
Rasmus Brandt
be99ab9356 Remove unnecessary redefinition of PacketLists in rtp_fec_unittest.
R=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2050273002 .

Cr-Commit-Position: refs/heads/master@{#13109}
2016-06-13 07:37:06 +00:00
kjellander
fb11424551 GN: Add modules_unittests
Changes:
* Enabled protobuf for iOS globally.
* Set WEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE on a global
scope similar to GYP since tests depend on it.
* Added missing rtc_libvpx_build_vp9 variable.
* Moved out audio_coding defines into .gni file to avoid code duplication
* Renamed files to avoid object naming conflicts that GN disallows:
  * webrtc/modules/audio_processing/{echo_cancellation_unittest.cc->echo_cancellation_bit_exact_unittest.cc}
  * webrtc/modules/video_coding/codecs/vp9/{screenshare_layers_unittest.cc->vp9_screenshare_layers_unittest.cc}

BUG=webrtc:5949
TESTED=Built and ran the tests on Mac. Also ran:
gn gen out/Default --args="rtc_enable_bwe_test_logging=true"
and verified that more objects are being built (1885 vs 1883)
when compiling modules_unittests.

NOTRY=True
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2041233006
Cr-Commit-Position: refs/heads/master@{#13108}
2016-06-13 07:19:53 +00:00
kjellander
142f8c5b3b GN: Add rtc_pc_unittests
BUG=webrtc:5949
TESTED=Built and ran the tests on Mac.
NOTRY=True
TBR=perkj@webrtc.org

Review-Url: https://codereview.webrtc.org/2051413003
Cr-Commit-Position: refs/heads/master@{#13107}
2016-06-13 07:08:29 +00:00
kjellander
82a94494b1 GN: Add rtc_media_unittests
Changes:
* Set WEBRTC_INCLUDE_INTERNAL_AUDIO_DEVICE on a global scope
  to match GYP.
* Enable sctpdataengine_unittest.cc for iOS, which should have
  been done in https://codereview.webrtc.org/1587193006
* Renamed GN target rtc_base_test_utils -> rtc_base_tests_utils
  to match GYP.
* Added dependencies on call, modules/video_coding and video for
  rtc_media.
* Added dependency on audio for rtc_media_unitttests (couldn't be
  added to rtc_media due to circular dependency problem).

BUG=webrtc:5949
TESTED=Built and ran the tests on Mac.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2050313002
Cr-Commit-Position: refs/heads/master@{#13106}
2016-06-13 05:12:10 +00:00
skvlad
979c268830 Do not reconnect the network change signal each time the network manager is started
Due to a bug, the NetworkManager was reconnecting to the NetworkMonitor's NetworkChanged signal every time the network manager is stopped and restarted. After each calls, one more listener was added to the signal and never removed - which caused OnNetworksChanged to be called multiple times on each actual network change.

Not sure if this had any negative effect other than the extraneous "Network changed" lines in WebRTC logs, but it wasn't working correctly either way.
The fix is to only subscribe to the signal once, when the NetworkMonitor is created.

TBR=pthatcher
BUG=
NOTRY=True

Review-Url: https://codereview.webrtc.org/2054583002
Cr-Commit-Position: refs/heads/master@{#13105}
2016-06-10 22:26:24 +00:00
Taylor Brandstetter
5d97a9a05b Adding more detail to MessageQueue::Dispatch logging.
Every message will now be traced with the location from which it was
posted, including function name, file and line number.

This CL also writes a normal LOG message when the dispatch took more
than a certain amount of time (currently 50ms).

This logging should help us identify messages that are taking
longer than expected to be dispatched.

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

Review URL: https://codereview.webrtc.org/2019423006 .

Cr-Commit-Position: refs/heads/master@{#13104}
2016-06-10 21:17:33 +00:00
Erik Språng
51e60305e6 Update RateStatistics to handle too-little-data case.
To avoid the case where a single data point or too short window is used,
causing bad behavior due to bad stats, update RateStatistics to return
an Optional rather than a plain rate.

There was also a strange off by one bug where the rate was slightly
overestimated (N + 1 buckets, N ms time window).

These changes requires updates to a number of places, and may very well
cause seeming perf regressions (but the stats were probablty more wrong
previously).

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

Review URL: https://codereview.webrtc.org/2029593002 .

Cr-Commit-Position: refs/heads/master@{#13103}
2016-06-10 20:13:33 +00:00
Tommi
733b5478dd Movable support for VideoReceiveStream::Config and avoid copies.
Instead of the default copy constructor, the Copy() method has to be used.  In this CL, the number of copies has been reduced significantly in production code. One case in the video engine remains, where we need to restart a video stream.  Even in that case, I'm sure we could avoid it, but for this particular CL, I decided against it to keep things simple (and it's also an edge case).  Most importantly, creating copies is made harder and the interface encourages ownership transfers.

R=mflodman@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/2042603002 .

Cr-Commit-Position: refs/heads/master@{#13102}
2016-06-10 15:58:12 +00:00
Tommi
bd3380ff7e Make VideoReceiveStream not inherit from I420FrameCallback.
There's no need for it as the current implementation only exists as a middle layer between the decoder and the eventual callback.

R=mflodman@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/2039053002 .

Cr-Commit-Position: refs/heads/master@{#13101}
2016-06-10 15:38:32 +00:00
nisse
bdce06e460 Delete unused YuvFrameGenerator class.
NOTRY=True # android_arm64_rel bot not cooperating
BUG=

Review-Url: https://codereview.webrtc.org/2044703007
Cr-Commit-Position: refs/heads/master@{#13100}
2016-06-10 11:43:56 +00:00
nisse
602844aa5e Delete some unused header files.
NOTRY=True # two of the androids bots are not cooperating
BUG=

Review-Url: https://codereview.webrtc.org/2057533002
Cr-Commit-Position: refs/heads/master@{#13099}
2016-06-10 11:41:13 +00:00
katrielc
81ca73586e Remove new fuzzers until their GN targets work properly in Chromium.
Chromium uses gn gen --check, which doesn't like some of the includes
used in the new gn targets the fuzzers use. This breaks Chromium
libfuzzer compiles, for which there isn't yet a webrtc FYI bot.

I'm working on fixing the includes, at which point these can come back.

BUG=chromium:618901
NOTRY=true

Review-Url: https://codereview.webrtc.org/2053293002
Cr-Commit-Position: refs/heads/master@{#13098}
2016-06-10 09:59:46 +00:00
kjellander
94cee3111c GN: Enable api,media,pc and p2p for the 'webrtc' target.
These parts were commented out to avoid breaking the Chromium
WebRTC FYI bots. Include them in the WebRTC build to make our bots
build as many as possible of our GN targets.

BUG=webrtc:5949
NOTRY=True
TBR=phoglund@webrtc.org

Review-Url: https://codereview.webrtc.org/2054903002
Cr-Commit-Position: refs/heads/master@{#13097}
2016-06-10 08:57:05 +00:00
Åsa Persson
2b9423f7a1 Revert of Re-enable UBsan on AGC. (patchset #8 id:300001 of https://codereview.webrtc.org/2003623003/ )
Reason for revert:
Breaks bot.

Original issue's description:
> Re-enable UBsan on AGC.
>
> BUG=webrtc:5530
>
> Committed: https://crrev.com/293c86d67384c15f46b8296096a62a14b4a58d33
> Cr-Commit-Position: refs/heads/master@{#13034}

R=kjellander@webrtc.org, peah@webrtc.org
TBR=kjellander@webrtc.org, minyue@webrtc.org, peah@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5530

Review URL: https://codereview.webrtc.org/2056683002 .

Cr-Commit-Position: refs/heads/master@{#13096}
2016-06-10 07:12:43 +00:00
Peter Boström
555cfe9e6e Use relative paths for api/p2p fuzzers.
BUG=
R=aizatsky@chromium.org
TBR=katrielc@webrtc.org

Review URL: https://codereview.webrtc.org/2053093002 .

Cr-Commit-Position: refs/heads/master@{#13095}
2016-06-09 21:25:25 +00:00
katrielc
e4bda24376 Before validating a STUN packet, check it's big enough for a header.
Otherwise, we'll read out of bounds if the packet is too small.

NOTRY=true

Review-Url: https://codereview.webrtc.org/2040953003
Cr-Commit-Position: refs/heads/master@{#13093}
2016-06-09 15:45:52 +00:00
mflodman
101f250a30 Implementing auto pausing of video streams.
This CL implements auto pausing video streams per stream with logic to
avoid toggling state too often.

Also re-enabling tests disabled for Mac, with the assumption the new
logic removes flakiness.

BUG=webrtc:5868,webrtc:5407
R=pbos@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2035383002 .

Cr-Commit-Position: refs/heads/master@{#13092}
2016-06-09 15:21:30 +00:00
danilchap
8e85b3c349 Moves macros ACCESS_ON/RUN_ON from thread_annotations to thread_checker
to be compatible with projects that has own base/thread_annotation.h

NOTRY=TRUE

Review-Url: https://codereview.webrtc.org/2055473002
Cr-Commit-Position: refs/heads/master@{#13090}
2016-06-09 14:55:32 +00:00
hbos
f9da44dbcf RTCPeerConnectionInterface.mm createNativeConfiguration and other clean-up.
This CL turns nativeConfiguration into createNativeConfiguration returning a
pointer or nil on failure. This method's certificate generation is updated to
use the new API and reports failure (nil) if unsuccessful instead of relying on
the default certificate. We also remove the implicit assumption (now incorrect)
that RSA is the default. This is the same type of changes as was done in
https://codereview.webrtc.org/1965313002 but this file
(RTCPeerConnectionInterface.mm) was forgotten.

With no more usages of kIdentityName it and dtlsidentitystore.cc is removed.
Also removes unnecessary #include in peerconnectioninterface.h that was still
remnant due to an indirect include of kIdentityName.

RTCConfiguration+Private.h now lists method nativeEncryptionKeyTypeForKeyType
which was added in the above mentioned prior CL.

BUG=webrtc:5707, webrtc:5708

Review-Url: https://codereview.webrtc.org/2035473004
Cr-Commit-Position: refs/heads/master@{#13089}
2016-06-09 10:18:35 +00:00
Henrik Kjellander
d4070c63d9 GN: Fix Chromium breakage for remote_bitrate_estimator
In https://codereview.webrtc.org/2040313004 a config was changed
incorrectly and a dependency on rtc_base_approved is also missing.

BUG=webrtc:5949
TBR=stefan@webrtc.org

Review URL: https://codereview.webrtc.org/2044333004 .

Cr-Commit-Position: refs/heads/master@{#13088}
2016-06-09 09:55:40 +00:00
kjellander
5c1d043726 Fix GYP/GN for webrtc/modules/remote_bitrate_estimator
Sync the GYP and GN targets and update the name of the GN one
to 'remote_bitrate_estimator'.
Move the GYP variable 'enable_bwe_test_logging' into the local scope.
Remove redundant entries in modules.gyp.

These are preparations related to the GN migration.

BUG=webrtc:5949
TESTED=Ran GYP with the default variables and with
-Denable_bwe_test_logging=1. Compiled remote_bitrate_estimator
and verified that bwe_test_logging.cc is compiled only when
set.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2040313004
Cr-Commit-Position: refs/heads/master@{#13087}
2016-06-09 09:41:02 +00:00
sakal
d9f3d56bb6 Use a video renderer instead of a capture observer in VideoCapturerAndroidTest.
In org.webrtc.VideoCapturerAndroidTest#startWhileCameraIsAlreadyOpenAndCloseCamera,
use a video renderer instead of a capture observer. The video renderer
automatically returns the texture buffers, which resolves the bug.
There shouldn't be any changes to the effectiveness of the test.

BUG=webrtc:5982

Review-Url: https://codereview.webrtc.org/2042283004
Cr-Commit-Position: refs/heads/master@{#13085}
2016-06-09 07:56:26 +00:00
nisse
efec5902a5 Reland of New method I420Buffer::SetToBlack. (patchset #1 id:1 of https://codereview.webrtc.org/2049023002/ )
Reason for revert:
Plan to reland with InitToBlack kept, to be able to update Chrome to use the new I420Buffer::SetToBlack method.

Original issue's description:
> Revert of New static method I420Buffer::SetToBlack. (patchset #4 id:60001 of https://codereview.webrtc.org/2029273004/ )
>
> Reason for revert:
> Breaks chrome, in particular, the tests in
>
> media_stream_remote_video_source_unittest.cc
>
> use the InitToBlack method which is being deleted.
>
> Original issue's description:
> > New static method I420Buffer::SetToBlack.
> >
> > Replaces cricket::VideoFrame::SetToBlack and
> > cricket::WebRtcVideoFrame::InitToBlack, which are deleted.
> >
> > Refactors the black frame logic in VideoBroadcaster, and a few of the
> > tests.
> >
> > BUG=webrtc:5682
> >
> > Committed: https://crrev.com/663f9e2ddc86e813f6db04ba2cf5ac1ed9e7ef67
> > Cr-Commit-Position: refs/heads/master@{#13063}
>
> TBR=perkj@webrtc.org,pbos@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5682
>
> Committed: https://crrev.com/271d74078894bb24f454eb31b77e4ce38097a2fa
> Cr-Commit-Position: refs/heads/master@{#13065}

TBR=perkj@webrtc.org,pbos@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5682

Review-Url: https://codereview.webrtc.org/2049513005
Cr-Commit-Position: refs/heads/master@{#13083}
2016-06-09 07:31:46 +00:00
asapersson
40f54003d6 Start integrating StatsCounter class.
SampleCounter replaced with AvgCounter for metric WebRTC.Video.SendDelayInMs (removes duplicated code of SampleCounter).

BUG=webrtc:5283

Review-Url: https://codereview.webrtc.org/2013403002
Cr-Commit-Position: refs/heads/master@{#13081}
2016-06-09 07:09:27 +00:00
adam.fedor
fc22e03eb8 Add AVFoundation video capture support to Mac objc SDK (based on iOS)
The AppRTCDemo app on Mac OSX does not show or send local video streams,
as ACFoundation capture session is not compiled in or implemented in
the appropriate places.  This is the first part of a two-part patch
that implements local capture on the Mac for AppRTCDemo

P.S. This is my first patch to WebRTC.   I didn't see any relevant tests, but I could write some if you can point me at a location. Also, I don't have access to the automated tests (I don't think)

BUG=webrtc:3417

Review-Url: https://codereview.webrtc.org/2046863004
Cr-Commit-Position: refs/heads/master@{#13080}
2016-06-09 00:24:44 +00:00
sergeyu
f2a1c89241 Add r-value constructor for RefCountedObject.
Previously RefCountedObject was passing all parameters by value.
This meant that it was hard to use it with movable types, such
as unique_ptr<>. Now there is a constructor that takes r-value,
which means that RefCountedObject<std::unique_ptr<foo>> can be
initialized by passing std::unique_ptr<foo> to the constructor.

Review-Url: https://codereview.webrtc.org/2036123002
Cr-Commit-Position: refs/heads/master@{#13079}
2016-06-08 22:52:28 +00:00
deadbeef
d5f41ce898 Use the new versions of OnAddStream/OnRemoveStream in objc binding.
Review-Url: https://codereview.webrtc.org/2049153002
Cr-Commit-Position: refs/heads/master@{#13078}
2016-06-08 20:31:54 +00:00
deadbeef
73fbcf9237 Don't re-determine ICE role on an ICE restart.
This only causes an increased likelihood of role conflicts as each peer
is picking a new role. It also means that if ICE is restarted for only
one media stream, roles can be different across media streams (which isn't
even allowed).

For more explanation of why this is unnecessary and should be changed,
see this discussion:
https://mailarchive.ietf.org/arch/msg/ice/C0_QRCTNcwtvUF12y28jQicPR10

Review-Url: https://codereview.webrtc.org/2046123003
Cr-Commit-Position: refs/heads/master@{#13077}
2016-06-08 20:13:06 +00:00
philipel
bde418d84c Renamed video_coding/packet_buffer_unittest.cc.
Renamed video_coding/packet_buffer_unittest.cc to
video_coding/video_packet_buffer_unittest.cc

BUG=webrtc:5949
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/2049693002
Cr-Commit-Position: refs/heads/master@{#13074}
2016-06-08 19:09:45 +00:00
danilchap
2019afd0ef Replaced ACCESS_ON alias with GUARDED_BY macros
to fix projects that has own copy of base/thread_annotation.h

R=åsapersson
NOTRY=true

Review-Url: https://codereview.webrtc.org/2048113002
Cr-Commit-Position: refs/heads/master@{#13073}
2016-06-08 18:34:18 +00:00
aluebs
e8f8f6037c Only update Intelligibility Enhancer gains every 10 chunks
This reduces its complexity by a factor of 2.7x total.
The mean error introduced by this is in the 6 different noise scenarios and 6 different speech signals tested is below -52dB.

Review-Url: https://codereview.webrtc.org/2035213002
Cr-Commit-Position: refs/heads/master@{#13072}
2016-06-08 16:53:23 +00:00
terelius
bea8959687 Hibernate the thread if there are no events in the queue. Wake it up when an event is added to the queue.
BUG=614192

Review-Url: https://codereview.webrtc.org/2035483003
Cr-Commit-Position: refs/heads/master@{#13070}
2016-06-08 14:20:36 +00:00
henrik.lundin
919518613f NetEq: Rename Nack to NackTracker to avoid name collisions in GN
BUG=webrtc:5949
NOTRY=True
R=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2045243002
Cr-Commit-Position: refs/heads/master@{#13069}
2016-06-08 13:43:49 +00:00
peah
bbe423312d Change name of files and class in agc/histogram* in order to avoid issue file-name clash in build files
The changes are done in several patches in order to make
the review easier.

NOTRY=True
BUG=webrtc:5949

Review-Url: https://codereview.webrtc.org/2051443002
Cr-Commit-Position: refs/heads/master@{#13068}
2016-06-08 13:42:08 +00:00
Niels Möller
86f7afd44f Android: Fix texture leak.
The bug fix in https://codereview.webrtc.org/2033943004 was
incomplete, and leaks the texture in the case of texture frames
arriving during close. See also the similar bug fixed in
https://codereview.webrtc.org/2012773004.

BUG=webrtc:5966
R=perkj@webrtc.org, sakal@webrtc.org

Review URL: https://codereview.webrtc.org/2044383002 .

Cr-Commit-Position: refs/heads/master@{#13067}
2016-06-08 12:59:14 +00:00
kwiberg
a10740239d Fix UBSan errors (signed integer overflow)
WebRtcSpl_CrossCorrelation and WebRtcSpl_DotProductWithScale compute
the int32 sum of pairwise products from two int16 arrays. So as to
avoid overflow (which could otherwise happen when as little as two
products were summed), the products are right-shifted by an amount
specified by the caller.

This CL changes WebRtcIlbcfix_MyCorr and WebRtcIlbcfix_Smooth to give
sufficient right-shift amounts, instead of ones that may be too small
and cause overflow.

BUG=chromium:601787

Review-Url: https://codereview.webrtc.org/2014033002
Cr-Commit-Position: refs/heads/master@{#13066}
2016-06-08 12:24:47 +00:00
nisse
271d740788 Revert of New static method I420Buffer::SetToBlack. (patchset #4 id:60001 of https://codereview.webrtc.org/2029273004/ )
Reason for revert:
Breaks chrome, in particular, the tests in

media_stream_remote_video_source_unittest.cc

use the InitToBlack method which is being deleted.

Original issue's description:
> New static method I420Buffer::SetToBlack.
>
> Replaces cricket::VideoFrame::SetToBlack and
> cricket::WebRtcVideoFrame::InitToBlack, which are deleted.
>
> Refactors the black frame logic in VideoBroadcaster, and a few of the
> tests.
>
> BUG=webrtc:5682
>
> Committed: https://crrev.com/663f9e2ddc86e813f6db04ba2cf5ac1ed9e7ef67
> Cr-Commit-Position: refs/heads/master@{#13063}

TBR=perkj@webrtc.org,pbos@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5682

Review-Url: https://codereview.webrtc.org/2049023002
Cr-Commit-Position: refs/heads/master@{#13065}
2016-06-08 12:21:02 +00:00
asapersson
0ab07d67cb Add ObjC API for getting native histograms.
BUG=

Review-Url: https://codereview.webrtc.org/2036773003
Cr-Commit-Position: refs/heads/master@{#13064}
2016-06-08 11:59:24 +00:00
nisse
663f9e2ddc New static method I420Buffer::SetToBlack.
Replaces cricket::VideoFrame::SetToBlack and
cricket::WebRtcVideoFrame::InitToBlack, which are deleted.

Refactors the black frame logic in VideoBroadcaster, and a few of the
tests.

BUG=webrtc:5682

Review-Url: https://codereview.webrtc.org/2029273004
Cr-Commit-Position: refs/heads/master@{#13063}
2016-06-08 11:26:27 +00:00
kjellander
52f56d482a Roll chromium_revision 086802955f..7fa6701bc5 (396351:398458)
Change log: 086802955f..7fa6701bc5
Full diff: 086802955f..7fa6701bc5

Changed dependencies:
* src/buildtools: 06e80a0e17..8dd3c8e39a
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/54092ffeaa..0fc7df55c0
* src/third_party/libFuzzer/src: feca8e579b..0475f06430
* src/third_party/libvpx/source/libvpx: 4f774ac50e..f80d8011a0
DEPS diff: 086802955f..7fa6701bc5/DEPS

Clang version changed 269902:270823
Details: 086802955f..7fa6701bc5/tools/clang/scripts/update.py

TBR=marpan@webrtc.org, stefan@webrtc.org, pbos@webrtc.org
BUG=webrtc:5956, webrtc:5977
NOTRY=True

Review-Url: https://codereview.webrtc.org/2040403002
Cr-Commit-Position: refs/heads/master@{#13062}
2016-06-08 11:05:27 +00:00
kjellander
2a3892ac64 GN: Add common_audio_unittests and common_video_unittests
BUG=webrtc:5949
TESTED=Built and ran the tests on Mac.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2040073002
Cr-Commit-Position: refs/heads/master@{#13061}
2016-06-08 08:28:15 +00:00
kjellander
3bcedd3595 GN: Add SDK tests to rtc_unittests.
In https://codereview.webrtc.org/2034923003 it was discovered
that a test binary rtc_sdk_peerconnection_objc_tests was
a dependency to rtc_unittests. Unfortunately gtest doesn't
include dependent executables into the same test executable;
only libraries (so theses tests weren't run).

This CL incorporates those tests into rtc_unittests and
does the same changes to the GN build.

BUG=webrtc:5949
TESTED=Built and ran rtc_unittests locally on Mac.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2041743003
Cr-Commit-Position: refs/heads/master@{#13060}
2016-06-08 08:14:22 +00:00
isheriff
6b4b5f3770 Add sender controlled playout delay limits
This CL adds support for an extension on RTP frames to allow the sender
to specify the minimum and maximum playout delay limits.

The receiver makes a best-effort attempt to keep the capture-to-render delay
within this range. This allows different types of application to specify
different end-to-end delay goals. For example gaming can support rendering
of frames as soon as received on receiver to minimize delay. A movie playback
application can specify a minimum playout delay to allow fixed buffering
in presence of network jitter.

There are no tests at this time and most of testing is done with chromium
webrtc prototype.

On chromoting performance tests, this extension helps bring down end-to-end
delay by about 150 ms on small frames.

BUG=webrtc:5895

Review-Url: https://codereview.webrtc.org/2007743003
Cr-Commit-Position: refs/heads/master@{#13059}
2016-06-08 07:24:30 +00:00