Commit Graph

7329 Commits

Author SHA1 Message Date
92379de5c6 Reorder actions on stopCapturer, to avoid crashing on camera timeout.
BUG=

Review-Url: https://codereview.webrtc.org/2003973003
Cr-Commit-Position: refs/heads/master@{#12963}
2016-05-31 06:36:05 +00:00
2d3aae5a84 [rtcp] ExtendedReports::Parse updated not to use RTCPUtility
BUG=webrtc:5260

Review-Url: https://codereview.webrtc.org/2006313010
Cr-Commit-Position: refs/heads/master@{#12962}
2016-05-30 15:51:01 +00:00
5f7cfa50e5 Moved CreateBuiltinDecoderFactory out to VoEBaseImpl.
VoEBase is plumbed to optionally take an AudioDecoderFactory, or create
a builtin factory if none is provided.

Retained the CreateChannel interfaces in Channel and ChannelManager
and added variants for injecting an AudioDecoderFactory. The
"old-style" variants call CreateBuiltinAudioDecoderFactory to get a
factory to use.

(Just realized this means each channel uses a separate factory with the
old-style calls. Probably ok.)

BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/1993783002
Cr-Commit-Position: refs/heads/master@{#12961}
2016-05-30 15:11:36 +00:00
22e70ab1dd Disabled ProfilerTest.TestFunction due to flakiness.
BUG=webrtc:5947

Review-Url: https://codereview.webrtc.org/2021743003
Cr-Commit-Position: refs/heads/master@{#12960}
2016-05-30 14:36:27 +00:00
f0e174aab4 Reland "Set defines for Chromium"
This is a reland of https://codereview.webrtc.org/1847013002/
with the following changes:
* _USE_32BIT_TIME_T is no longer set: it was removed from Chromium
in https://codereview.chromium.org/1862443003/.
Setting it in target_defaults was likely the reason to
remoting_unittests failing in the previous attempt to land this.
* Added define for FreeBSD platform.
* Added corresponding GN changes.

Copy the defines from the target_defaults section of Chromium's
src/third_party/libjingle.gyp into our webrtc/build/common.gypi
in order to ensure the same defines are used for the Chromium build
when removing the source listings in src/third_party/libjingle.gyp.
With this CL landed, it should be possible to replace them with
dependencies on:
* webrtc/api/api.gyp:libjingle_peerconnections
* webrtc/media/media.gyp:rtc_media
* webrtc/pc/pc.gyp:rtc_pc
* webrtc/pp2/p2p.gyp:rtc_p2p
* webrtc/libjingle/xmpp/xmpp.gyp:rtc_xmpp

Not ported (Windows specific):
* Precompiled headers (build/win_precompile.gypi):
  since it only seems to offer a compile speedup. Will be landed
  for all of WebRTC in separate CL.

BUG=webrtc:4256
NOTRY=True

Review-Url: https://codereview.webrtc.org/1924663003
Cr-Commit-Position: refs/heads/master@{#12959}
2016-05-30 13:27:56 +00:00
073eb7ed1e Updated #if in IsH264CodecSupported to match H264[En/De]coder::Create.
This will hopefully resolve a crash that might occur if it thinks H264 is
supported when in fact it isn't.

BUG=chromium:615513

Review-Url: https://codereview.webrtc.org/2018273002
Cr-Commit-Position: refs/heads/master@{#12958}
2016-05-30 12:15:33 +00:00
e38a93663a Reland of Android: Add FramerateRange class (patchset #1 id:1 of https://codereview.webrtc.org/2024573002/ )
Reason for revert:
Updated signature to work with other JNI versions. We would need to compile it differently in order to catch failures like this in WebRTC in the future.

Original issue's description:
> Revert of Android: Add FramerateRange class (patchset #2 id:60001 of https://codereview.webrtc.org/2010763003/ )
>
> Reason for revert:
> Breaks downstream Android tests:
> java.lang.NoSuchFieldError: no field with name='framerate' signature='org/webrtc/CameraEnumerationAndroid$CaptureFormat$FramerateRange' in class Lorg/webrtc/CameraEnumerationAndroid$CaptureFormat;
>
> We should have a similar test in WebRTC so we can catch such errors pre-commit.
>
> Original issue's description:
> > Android: Add FramerateRange class
> >
> > The Camera1 and Camera2 API use different framerate range types. Camera1
> > uses int[2] and Camera2 uses Range<Integer>. Range<Integer> is
> > unfortunately only available on Lollipop and later, so this CL adds a
> > similar FramerateRange class in CaptureFormat.
> >
> > The purpose with this CL is to have a common framerate range type that can
> > be reused from both Camera1 and Camera2 in helper functions such as
> > CameraEnumerationAndroid.getClosestSupportedFramerateRange().
> >
> > BUG=webrtc:5519
> > R=sakal@webrtc.org
> >
> > Committed: https://crrev.com/94cb67d6df1a78e7fa25e469f719c1a8809dc583
> > Cr-Commit-Position: refs/heads/master@{#12942}
>
> TBR=sakal@webrtc.org,magjed@webrtc.org
> NOTRY=True
> BUG=webrtc:5519
>
> Committed: https://crrev.com/bd5621f065fd25e0a77307f10dc9ddaf76e7945f
> Cr-Commit-Position: refs/heads/master@{#12956}

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

Review-Url: https://codereview.webrtc.org/2019333002
Cr-Commit-Position: refs/heads/master@{#12957}
2016-05-30 11:00:27 +00:00
bd5621f065 Revert of Android: Add FramerateRange class (patchset #2 id:60001 of https://codereview.webrtc.org/2010763003/ )
Reason for revert:
Breaks downstream Android tests:
java.lang.NoSuchFieldError: no field with name='framerate' signature='org/webrtc/CameraEnumerationAndroid$CaptureFormat$FramerateRange' in class Lorg/webrtc/CameraEnumerationAndroid$CaptureFormat;

We should have a similar test in WebRTC so we can catch such errors pre-commit.

Original issue's description:
> Android: Add FramerateRange class
>
> The Camera1 and Camera2 API use different framerate range types. Camera1
> uses int[2] and Camera2 uses Range<Integer>. Range<Integer> is
> unfortunately only available on Lollipop and later, so this CL adds a
> similar FramerateRange class in CaptureFormat.
>
> The purpose with this CL is to have a common framerate range type that can
> be reused from both Camera1 and Camera2 in helper functions such as
> CameraEnumerationAndroid.getClosestSupportedFramerateRange().
>
> BUG=webrtc:5519
> R=sakal@webrtc.org
>
> Committed: https://crrev.com/94cb67d6df1a78e7fa25e469f719c1a8809dc583
> Cr-Commit-Position: refs/heads/master@{#12942}

TBR=sakal@webrtc.org,magjed@webrtc.org
NOTRY=True
BUG=webrtc:5519

Review-Url: https://codereview.webrtc.org/2024573002
Cr-Commit-Position: refs/heads/master@{#12956}
2016-05-30 06:06:31 +00:00
435f98bc90 Reland of Change ProcessThread's task type to be the one from TaskQueue. (patchset #1 id:1 of https://codereview.webrtc.org/2020783003/ )
Reason for revert:
Reland. It was a false alarm.

Original issue's description:
> Revert of Change ProcessThread's task type to be the one from TaskQueue. (patchset #3 id:80001 of https://codereview.webrtc.org/2016043003/ )
>
> Reason for revert:
> Downstream issues
>
> Original issue's description:
> > Change ProcessThread's task type to be the one from TaskQueue.
> > ProcessThread will eventually be replaced by TaskQueue, so this is the first little step.
> >
> > BUG=
> > R=magjed@webrtc.org
> >
> > Committed: https://crrev.com/400a276c8a0b299190ff17a81edd8780a26d63d3
> > Cr-Commit-Position: refs/heads/master@{#12952}
>
> TBR=magjed@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=
>
> Committed: https://crrev.com/641455176a1241dea6dda7071ba4162f41a0b5fc
> Cr-Commit-Position: refs/heads/master@{#12953}

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

Review-Url: https://codereview.webrtc.org/2017333002
Cr-Commit-Position: refs/heads/master@{#12954}
2016-05-28 21:57:23 +00:00
641455176a Revert of Change ProcessThread's task type to be the one from TaskQueue. (patchset #3 id:80001 of https://codereview.webrtc.org/2016043003/ )
Reason for revert:
Downstream issues

Original issue's description:
> Change ProcessThread's task type to be the one from TaskQueue.
> ProcessThread will eventually be replaced by TaskQueue, so this is the first little step.
>
> BUG=
> R=magjed@webrtc.org
>
> Committed: https://crrev.com/400a276c8a0b299190ff17a81edd8780a26d63d3
> Cr-Commit-Position: refs/heads/master@{#12952}

TBR=magjed@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=

Review-Url: https://codereview.webrtc.org/2020783003
Cr-Commit-Position: refs/heads/master@{#12953}
2016-05-28 18:00:38 +00:00
400a276c8a Change ProcessThread's task type to be the one from TaskQueue.
ProcessThread will eventually be replaced by TaskQueue, so this is the first little step.

BUG=
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12952}
2016-05-28 12:17:12 +00:00
eff5b854ad Making peerconnection_unittest use the virtual socket server it creates.
When this test was updated to use separate worker/signaling threads,
the virtual socket server wasn't moved over to the worker thread. So it
was set on the signaling thread and wasn't being used.

Review-Url: https://codereview.webrtc.org/2015763002
Cr-Commit-Position: refs/heads/master@{#12951}
2016-05-27 21:18:09 +00:00
b3c6810be3 Adding the ability to use a simulated clock for unit tests.
This will be useful for any tests that test objects with time-dependent
behavior. It will allow such tests to be written in such a way that their
outcome is more repeatable (less flaky), and will also allow such tests
to finish quicker. For example, a test for STUN timeout doesn't need to
wait the full timeout interval in real time; it can simply advance the
simulated clock.

BUG=webrtc:4925
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12950}
2016-05-27 21:16:07 +00:00
1c20610ede Handle any number of role conflicts; not just the first.
I think the code that only allowed one role conflict was a workaround
for our old implementation (TransportChannelProxy, etc.). Not necessary
now, with TransportController.

BUG=webrtc:5470

Review-Url: https://codereview.webrtc.org/2004463003
Cr-Commit-Position: refs/heads/master@{#12949}
2016-05-27 20:34:45 +00:00
d7973ccdb5 Revert of Replacing DtlsIdentityStoreInterface with RTCCertificateGeneratorInterface. (patchset #2 id:20001 of https://codereview.webrtc.org/2013523002/ )
Reason for revert:
There are more CreatePeerConnection calls than I anticipated/had found in Chromium, like remoting/protocol/webrtc_transport.cc. Reverting due to broken Chromium FYI bots.

Original issue's description:
> Replacing DtlsIdentityStoreInterface with RTCCertificateGeneratorInterface.
>
> The store was used in WebRtcSessionDescriptionFactory to generate certificates,
> now a generator is used instead (new API). PeerConnection[Factory][Interface],
> and WebRtcSession are updated to pass generators all the way down to the
> WebRtcSessionDescriptionFactory instead of stores.
>
> The webrtc implementation of a generator, RTCCertificateGenerator, is used as
> the default generator (peerconnectionfactory.cc:189) instead of the webrtc
> implementation of a store, DtlsIdentityStoreImpl.
>   The generator is fully parameterized and does not generate RSA-1024 unless you
> ask for it (which makes sense not to do beforehand since ECDSA is now default).
> The store was not fully parameterized (known filed bug).
>
> The "top" layer, PeerConnectionFactoryInterface::CreatePeerConnection, is
> updated to take a generator instead of a store. But as to not break Chromium,
> the old function signature taking a store is kept. It is implemented to invoke
> the generator version by wrapping the store in an
> RTCCertificateGeneratorStoreWrapper. As soon as Chromium is updated to use the
> new function signature we can remove the old CreatePeerConnection.
>   Due to having multiple CreatePeerConnection signatures, some calling places
> are updated to resolve the ambiguity introduced.
>
> BUG=webrtc:5707, webrtc:5708
> R=phoglund@webrtc.org, tommi@webrtc.org
> TBR=tkchin@webrc.org
>
> Committed: 400781a209

TBR=tkchin@webrtc.org,tommi@webrtc.org,phoglund@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5707, webrtc:5708

Review-Url: https://codereview.webrtc.org/2020633002
Cr-Commit-Position: refs/heads/master@{#12948}
2016-05-27 13:08:58 +00:00
400781a209 Replacing DtlsIdentityStoreInterface with RTCCertificateGeneratorInterface.
The store was used in WebRtcSessionDescriptionFactory to generate certificates,
now a generator is used instead (new API). PeerConnection[Factory][Interface],
and WebRtcSession are updated to pass generators all the way down to the
WebRtcSessionDescriptionFactory instead of stores.

The webrtc implementation of a generator, RTCCertificateGenerator, is used as
the default generator (peerconnectionfactory.cc:189) instead of the webrtc
implementation of a store, DtlsIdentityStoreImpl.
  The generator is fully parameterized and does not generate RSA-1024 unless you
ask for it (which makes sense not to do beforehand since ECDSA is now default).
The store was not fully parameterized (known filed bug).

The "top" layer, PeerConnectionFactoryInterface::CreatePeerConnection, is
updated to take a generator instead of a store. But as to not break Chromium,
the old function signature taking a store is kept. It is implemented to invoke
the generator version by wrapping the store in an
RTCCertificateGeneratorStoreWrapper. As soon as Chromium is updated to use the
new function signature we can remove the old CreatePeerConnection.
  Due to having multiple CreatePeerConnection signatures, some calling places
are updated to resolve the ambiguity introduced.

BUG=webrtc:5707, webrtc:5708
R=phoglund@webrtc.org, tommi@webrtc.org
TBR=tkchin@webrc.org

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

Cr-Commit-Position: refs/heads/master@{#12947}
2016-05-27 12:52:06 +00:00
895a2d24e9 Reenable EndToEndTest.ReceivedFecPacketsNotNacked
Test adjusted to be for VP8

BUG=webrtc:4328
R=pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12946}
2016-05-27 12:12:19 +00:00
36c11e9132 VideoCapturerAndroid: Replace static create() with ctor
This CL makes the ctor public and externally usable by changing the
camera id argument from an int to a String.

The main purpose with this change is to get rid of the
CameraEnumerationAndroid.setEnumerator() hack. If an external app wants
to have a custom format enumeration, they can just override
getSupportedFormats() instead.

BUG=webrtc:5519

Review-Url: https://codereview.webrtc.org/2012193003
Cr-Commit-Position: refs/heads/master@{#12945}
2016-05-27 09:35:14 +00:00
43587e32e9 Take ownership and close the platform file even if we fail to start logging.
Review-Url: https://codereview.webrtc.org/2015543002
Cr-Commit-Position: refs/heads/master@{#12944}
2016-05-27 09:22:54 +00:00
0ec9a9b9fc Lower event-tracing log-thread priority.
Lowers risk of the event-tracing thread affecting measurements (and
performance of device). Entirely speculative, but shouldn't hurt.
Timings are still done on the thread that calls the trace macros.

BUG=
R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12943}
2016-05-27 09:11:52 +00:00
94cb67d6df Android: Add FramerateRange class
The Camera1 and Camera2 API use different framerate range types. Camera1
uses int[2] and Camera2 uses Range<Integer>. Range<Integer> is
unfortunately only available on Lollipop and later, so this CL adds a
similar FramerateRange class in CaptureFormat.

The purpose with this CL is to have a common framerate range type that can
be reused from both Camera1 and Camera2 in helper functions such as
CameraEnumerationAndroid.getClosestSupportedFramerateRange().

BUG=webrtc:5519
R=sakal@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12942}
2016-05-27 08:36:01 +00:00
a44e72c44f Call java SurfaceTextureHelper.dispose from the corresponding C++ destructor.
This makes it clearer that the C++ SurfaceTextureHelper owns its associated java object it.

In addition, arrange so that the SurfaceTextureHelper.stopListening
method (in java) can be called from any thread.

BUG=

Review-Url: https://codereview.webrtc.org/1988043002
Cr-Commit-Position: refs/heads/master@{#12941}
2016-05-27 07:28:05 +00:00
63ab810ce2 Set IOS Wifi interface type based on the interface name.
BUG=webrtc:3149
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12939}
2016-05-27 03:30:27 +00:00
a0aa87dd85 Disable CallReportsRttForSender on Mac.
BUG=webrtc:5938
TBR=pbos@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2016933002
Cr-Commit-Position: refs/heads/master@{#12938}
2016-05-26 23:24:22 +00:00
6aefc6307d Move the ICE state transition ASSERTS to a lower level.
They don't really belong in PeerConnection because the state at that
level can change when a transport channel is removed. That makes almost
any state transition possible.

The asserts are now in P2PTransportChannel (the equivalent to
IceTransport in the spec). Currently it has a reduced set of states,
that don't even take into account writability, but I plan to change
that soon.

BUG=webrtc:4757
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12937}
2016-05-26 23:08:31 +00:00
8c9be5e490 In BasicPortAllocator test, don't require a specific candidate order.
The test doesn't really care about the order; the fact that it relied
on a specific order was just an implementation detail.

However, this made the test flaky since race conditions sometimes
determine the order. It also made it frustrating to add new tests.

BUG=webrtc:5930
R=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12936}
2016-05-26 23:07:39 +00:00
41c5cd02fc Making ECDSA the default certificate regardless of WEBRTC_CHROMIUM_BUILD.
Due to the experiment in chromium relying on KT_DEFAULT = KT_RSA (bug:
crbug.com/611698) a conditional was introduced. Now that the experiment is
ending and the experiment flag has been removed we can make KT_DEFAULT=KT_ECDSA
unconditionally.

BUG=chromium:611698

Review-Url: https://codereview.webrtc.org/2009533003
Cr-Commit-Position: refs/heads/master@{#12935}
2016-05-26 22:23:21 +00:00
7e1b8fbb45 Increasing "converge" time for remote candidate pair selection in test.
The local endpoint was given 4 seconds to converge but the remote
endpoint was only given 1 second. Now they both collectively
have 4 seconds.

Also fixed the ExpectCandidate2 method (used for verbose failure
logging) and removed a bunch of dead code.

TBR=pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12934}
2016-05-26 22:21:56 +00:00
90edc65929 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

Committed: https://crrev.com/54e1c6a500e390e543bce7b78fae65eb9bb14ab6
Cr-Commit-Position: refs/heads/master@{#12927}

Committed: https://crrev.com/f9d2fe983fe196373850c55acd3dc3824add480e
Cr-Commit-Position: refs/heads/master@{#12928}

Committed: f4fc0ff6f9

Committed: https://crrev.com/c47f0099eee08e8b6731a359563ba09dfe453ded
Cr-Commit-Position: refs/heads/master@{#12930}

Committed: https://crrev.com/0ad72ead67ce848b45541af6aba0a15486b5e0a7
Cr-Commit-Position: refs/heads/master@{#12931}

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

Cr-Commit-Position: refs/heads/master@{#12933}
2016-05-26 21:48:27 +00:00
4c2db414be Increasing STUN timeout for some more tests.
A 500ms margin of error from STUN timeout to test timeout is not
enough for some buildbots.

TBR=pthatcher@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2015763004
Cr-Commit-Position: refs/heads/master@{#12932}
2016-05-26 21:34:18 +00:00
0ad72ead67 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

Committed: https://crrev.com/54e1c6a500e390e543bce7b78fae65eb9bb14ab6
Cr-Commit-Position: refs/heads/master@{#12927}

Committed: https://crrev.com/f9d2fe983fe196373850c55acd3dc3824add480e
Cr-Commit-Position: refs/heads/master@{#12928}

Committed: f4fc0ff6f9

Committed: https://crrev.com/c47f0099eee08e8b6731a359563ba09dfe453ded
Cr-Commit-Position: refs/heads/master@{#12930}

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

Cr-Commit-Position: refs/heads/master@{#12931}
2016-05-26 21:07:48 +00:00
c47f0099ee Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

Committed: https://crrev.com/54e1c6a500e390e543bce7b78fae65eb9bb14ab6
Cr-Commit-Position: refs/heads/master@{#12927}

Committed: https://crrev.com/f9d2fe983fe196373850c55acd3dc3824add480e
Cr-Commit-Position: refs/heads/master@{#12928}

Committed: f4fc0ff6f9

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

Cr-Commit-Position: refs/heads/master@{#12930}
2016-05-26 20:55:46 +00:00
f4fc0ff6f9 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

Committed: https://crrev.com/54e1c6a500e390e543bce7b78fae65eb9bb14ab6
Cr-Commit-Position: refs/heads/master@{#12927}

Committed: https://crrev.com/f9d2fe983fe196373850c55acd3dc3824add480e
Cr-Commit-Position: refs/heads/master@{#12928}

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

Cr-Commit-Position: refs/heads/master@{#12929}
2016-05-26 20:40:20 +00:00
f9d2fe983f Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

Committed: https://crrev.com/54e1c6a500e390e543bce7b78fae65eb9bb14ab6
Cr-Commit-Position: refs/heads/master@{#12927}

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

Cr-Commit-Position: refs/heads/master@{#12928}
2016-05-26 20:21:43 +00:00
54e1c6a500 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

Committed: https://crrev.com/5771beb265129082d31736259b7dc6ca037cff4d
Cr-Commit-Position: refs/heads/master@{#12926}

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

Cr-Commit-Position: refs/heads/master@{#12927}
2016-05-26 20:03:13 +00:00
5771beb265 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Committed: https://crrev.com/60c4e0ae8f124f08372645a95042f4a1246d7aa3
Cr-Commit-Position: refs/heads/master@{#12925}

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

Cr-Commit-Position: refs/heads/master@{#12926}
2016-05-26 19:51:41 +00:00
60c4e0ae8f Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2018553002/ )
Adding a some checks and switching out a few assert for RTC_[D]CHECK.
These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.

TBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#12925}
2016-05-26 19:35:43 +00:00
6f8d686d35 Remove use of RtpHeaderExtension and clean up
Currently there are two structs that are identical and track extension details:
webrtc::RtpExtension
cricket::RtpHeaderExtension

The use of the structs is mixed in the code to track the extensions being
supported. This results in duplicate definition of
the URI constants and there is code to convert between the two structs.

Clean up to use a single RtpHeader throughout the codebase. The actual location
of RtpHeader may change in future (perhaps to be located in api/). Additionally,
this CL renames some of the constants to clarify Uri and Id use.

BUG= webrtc:5895

Review-Url: https://codereview.webrtc.org/1984983002
Cr-Commit-Position: refs/heads/master@{#12924}
2016-05-26 18:25:04 +00:00
97f0b93f0d Eliminate a few uses of IsZeroSize.
BUG=webrtc:5682

Review-Url: https://codereview.webrtc.org/2017583002
Cr-Commit-Position: refs/heads/master@{#12923}
2016-05-26 16:44:49 +00:00
77405b2794 Android: Fix frame dropping for texture frames
A bug was introduced in https://codereview.webrtc.org/1973873003 that
doesn't return texture frames when they are dropped.

BUG=webrtc:5682

Review-Url: https://codereview.webrtc.org/2012773004
Cr-Commit-Position: refs/heads/master@{#12922}
2016-05-26 15:34:45 +00:00
b4ff7a7a8b Revert of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2014183003/ )
Reason for revert:
Alas, the bot magically fails again.  Looks like indeed it's a Clang bug :(

https://build.chromium.org/p/client.webrtc/builders/Win64%20Debug%20%28Clang%29/builds/1687

Original issue's description:
> Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2006313009/ )
>
> Reason for revert:
> Relanding.  The errors look like legit disk space problems so I'm going to watch the bots this time.
>
> Original issue's description:
> > Revert of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2009253004/ )
> >
> > Reason for revert:
> > Fails unexpectedly on multiple commit bots:
> > https://build.chromium.org/p/client.webrtc/builders/Win32%20Debug%20%28Clang%29/builds/1748
> > https://build.chromium.org/p/client.webrtc/builders/Win64%20Debug%20%28Clang%29/builds/1683
> >
> > I filed https://bugs.chromium.org/p/chromium/issues/detail?id=614967 to track the problem. I'll reland if it doesn't solve the problem.
> >
> > Original issue's description:
> > > Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2006243002/ )
> > >
> > > Original issue's description:
> > > > Adding a some checks and switching out a few assert for RTC_[D]CHECK.
> > > > These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.
> > > >
> > > > BUG=chromium:613482
> > > > NOTRY=true
> > > > (using notry due to offline android_arm64_rel bot)
> > > >
> > > > Committed: https://crrev.com/d36df89d40bde3c62ee5cbff841933e50b3c007b
> > > > Cr-Commit-Position: refs/heads/master@{#12870}
> > >
> > > TBR=henrik.lundin@webrtc.org
> > > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > > BUG=chromium:613482
> > >
> > > Committed: https://crrev.com/ba189cc4f4f6fe311a815646059e8011ffa53894
> > > Cr-Commit-Position: refs/heads/master@{#12907}
> >
> > TBR=henrik.lundin@webrtc.org,tommi@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=chromium:613482
> >
> > Committed: https://crrev.com/6895d8ca788df29f4d3a4b97fe891f0fb3a6dbec
> > Cr-Commit-Position: refs/heads/master@{#12909}
>
> TBR=henrik.lundin@webrtc.org,kjellander@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:613482
>
> Committed: https://crrev.com/b7318f1293453d8d319e27473c5bfb72292ebfd2
> Cr-Commit-Position: refs/heads/master@{#12920}

TBR=henrik.lundin@webrtc.org,kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:613482

Review-Url: https://codereview.webrtc.org/2018553002
Cr-Commit-Position: refs/heads/master@{#12921}
2016-05-26 15:27:43 +00:00
b7318f1293 Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2006313009/ )
Reason for revert:
Relanding.  The errors look like legit disk space problems so I'm going to watch the bots this time.

Original issue's description:
> Revert of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2009253004/ )
>
> Reason for revert:
> Fails unexpectedly on multiple commit bots:
> https://build.chromium.org/p/client.webrtc/builders/Win32%20Debug%20%28Clang%29/builds/1748
> https://build.chromium.org/p/client.webrtc/builders/Win64%20Debug%20%28Clang%29/builds/1683
>
> I filed https://bugs.chromium.org/p/chromium/issues/detail?id=614967 to track the problem. I'll reland if it doesn't solve the problem.
>
> Original issue's description:
> > Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2006243002/ )
> >
> > Original issue's description:
> > > Adding a some checks and switching out a few assert for RTC_[D]CHECK.
> > > These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.
> > >
> > > BUG=chromium:613482
> > > NOTRY=true
> > > (using notry due to offline android_arm64_rel bot)
> > >
> > > Committed: https://crrev.com/d36df89d40bde3c62ee5cbff841933e50b3c007b
> > > Cr-Commit-Position: refs/heads/master@{#12870}
> >
> > TBR=henrik.lundin@webrtc.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG=chromium:613482
> >
> > Committed: https://crrev.com/ba189cc4f4f6fe311a815646059e8011ffa53894
> > Cr-Commit-Position: refs/heads/master@{#12907}
>
> TBR=henrik.lundin@webrtc.org,tommi@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:613482
>
> Committed: https://crrev.com/6895d8ca788df29f4d3a4b97fe891f0fb3a6dbec
> Cr-Commit-Position: refs/heads/master@{#12909}

TBR=henrik.lundin@webrtc.org,kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:613482

Review-Url: https://codereview.webrtc.org/2014183003
Cr-Commit-Position: refs/heads/master@{#12920}
2016-05-26 15:17:29 +00:00
d591e3fcf3 Delete IsMutable and IsExclusive methods.
This affects the webrtc::VideoFrameBuffer and cricket::VideoFrame
classes.

To make this work, VideoFrameFactory is changed to use an
I420BufferPool rather than a plain VideoFrame to cache allocated
frames.

The I420BufferPool is reorganized to return an I420Buffer,
rather than a proxy object.

BUG=webrtc:5921, webrtc:5682

Review-Url: https://codereview.webrtc.org/2009193002
Cr-Commit-Position: refs/heads/master@{#12919}
2016-05-26 13:50:00 +00:00
303d3e1782 Fixing neteq_rtpplay
A regression happened in https://codereview.webrtc.org/2006723002,
causing neteq_rtpplay not to work. The problem was that when the main
code was moved inside of the webrtc::test namespace, it was no longer
visible to the linker. Meanwhile, the dependency on test_support_main
rather than test_support caused the executable to be a gtest.

In this fix, the gyp dependencies are corrected, and a main method is
added outside of the namespaces.

NOTRY=True

Review-Url: https://codereview.webrtc.org/2018473002
Cr-Commit-Position: refs/heads/master@{#12918}
2016-05-26 12:56:07 +00:00
73257d1b5a Reduce flakiness in IvfFileWriter tests.
If deleting files fails, wait a sec and retry. This can help in case
and antivirus software or similar has locked the file, preventing it
from being deleted.

BUG=webrtc:5898

Review-Url: https://codereview.webrtc.org/2014823002
Cr-Commit-Position: refs/heads/master@{#12917}
2016-05-26 12:45:57 +00:00
6ce1adc90b [rtcp] Tmmbn/Tmmbr Parse updated not to use RTCPUtility
BUG=webrtc:5260

Review-Url: https://codereview.webrtc.org/2010723002
Cr-Commit-Position: refs/heads/master@{#12916}
2016-05-26 12:29:22 +00:00
cd8e2ba29b VideoCapturerAndroid: Remove isDisposed()
Also remove the unnecessary code in VideoCapturerAndroid.dispose() and
only log instead.

BUG=webrtc:5519

Review-Url: https://codereview.webrtc.org/2007863005
Cr-Commit-Position: refs/heads/master@{#12913}
2016-05-26 11:00:55 +00:00
4f6c2b6eff Fix UBSan errors (left shift of negative value)
BUG=chromium:601787

Review-Url: https://codereview.webrtc.org/2000403006
Cr-Commit-Position: refs/heads/master@{#12911}
2016-05-26 10:40:56 +00:00
52a0bb422c iOS: Update MB config for moved iOS GN bots.
BUG=webrtc:5586
TBR=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#12910}
2016-05-26 09:49:25 +00:00
6895d8ca78 Revert of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2009253004/ )
Reason for revert:
Fails unexpectedly on multiple commit bots:
https://build.chromium.org/p/client.webrtc/builders/Win32%20Debug%20%28Clang%29/builds/1748
https://build.chromium.org/p/client.webrtc/builders/Win64%20Debug%20%28Clang%29/builds/1683

I filed https://bugs.chromium.org/p/chromium/issues/detail?id=614967 to track the problem. I'll reland if it doesn't solve the problem.

Original issue's description:
> Reland of Adding a some checks and switching out a few assert for RTC_[D]CHECK. (patchset #1 id:1 of https://codereview.webrtc.org/2006243002/ )
>
> Original issue's description:
> > Adding a some checks and switching out a few assert for RTC_[D]CHECK.
> > These changes are around use of AudioFrame.data_ to help us catch issues earlier since assert() is left out in release builds, including builds with DCHECK enabled.  I've also added a few full-on CHECKs to avoid reading past buffer boundaries or continuing on in a failed state.
> >
> > BUG=chromium:613482
> > NOTRY=true
> > (using notry due to offline android_arm64_rel bot)
> >
> > Committed: https://crrev.com/d36df89d40bde3c62ee5cbff841933e50b3c007b
> > Cr-Commit-Position: refs/heads/master@{#12870}
>
> TBR=henrik.lundin@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=chromium:613482
>
> Committed: https://crrev.com/ba189cc4f4f6fe311a815646059e8011ffa53894
> Cr-Commit-Position: refs/heads/master@{#12907}

TBR=henrik.lundin@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:613482

Review-Url: https://codereview.webrtc.org/2006313009
Cr-Commit-Position: refs/heads/master@{#12909}
2016-05-26 09:46:59 +00:00