Commit Graph

9404 Commits

Author SHA1 Message Date
fd870db0b2 Add metric for decode time and max decode time in video quality tests.
BUG=chromium:672007

Review-Url: https://codereview.webrtc.org/2640263002
Cr-Commit-Position: refs/heads/master@{#16208}
2017-01-23 11:22:15 +00:00
011240333e Minor style change suggested by internal static analysis tool.
TBR=sakal@webrtc.org
BUG=None

Review-Url: https://codereview.webrtc.org/2646413002
Cr-Commit-Position: refs/heads/master@{#16207}
2017-01-23 11:10:39 +00:00
0b56279da1 Catch failure to load native dependencies.
BUG=webrtc:6751

Review-Url: https://codereview.webrtc.org/2652623002
Cr-Commit-Position: refs/heads/master@{#16205}
2017-01-23 11:02:56 +00:00
de8ca92755 New script to count usage of C++ classes.
This script is similar to header_usage.sh, but it counts usage (number
of files) of each class defined in some header file.

E.g., the following classes appear unused,

  AsyncHttpsProxyServerSocket
  CompositeMediaEngineWithFakeVoiceEngine
  DesktopId
  RtpDataCallback
  ScopedMessageData
  ScreencastEventCatcher

NOTRY=true
BUG=None

Review-Url: https://codereview.webrtc.org/2649103002
Cr-Commit-Position: refs/heads/master@{#16204}
2017-01-23 10:41:08 +00:00
b55bd97972 Reland of Creating libwebrtc bundle jar (patchset #1 id:1 of https://codereview.webrtc.org/2640023010/ )
Reason for revert:
It seems that we cannot skip the generation of "//webrtc/base/base_java" in chromium without some refactoring because it is included as a dependency in some places.

Original issue's description:
> Revert of Creating libwebrtc bundle jar (patchset #4 id:60001 of https://codereview.webrtc.org/2646443002/ )
>
> Reason for revert:
> This breaks some chromium.webrtc.fyi buildbots with the following error:
>
> ERROR Unresolved dependencies.
> //third_party/webrtc/base:base(//build/toolchain/android:android_arm)
>   needs //third_party/webrtc/base:base_java(//build/toolchain/android:android_arm)
>
>
> Original issue's description:
> > Creating libwebrtc bundle jar
> >
> > Creates a JAR which includes:
> > - //webrtc/base:base_java
> > - //webrtc/modules/audio_device:audio_device_java
> > - //webrtc/sdk/android:libjingle_peerconnection_java
> > - //webrtc/sdk/android:libjingle_peerconnection_metrics_default_java
> >
> > The libwebrtc.jar file will be generated at '<output_dir>/lib.java/webrtc/sdk/android/libwebrtc.jar'.
> >
> > BUG=webrtc:6356
> >
> > Review-Url: https://codereview.webrtc.org/2646443002
> > Cr-Commit-Position: refs/heads/master@{#16189}
> > Committed: a62a82b7e7
>
> TBR=kjellander@webrtc.org,sakal@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6356
>
> Review-Url: https://codereview.webrtc.org/2640023010
> Cr-Commit-Position: refs/heads/master@{#16190}
> Committed: 3c9151b953

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

Review-Url: https://codereview.webrtc.org/2646093004
Cr-Commit-Position: refs/heads/master@{#16203}
2017-01-23 09:25:53 +00:00
3e4faae0ed Fixing memory leak in FakeTransportController.
Introduced by: https://codereview.webrtc.org/2641633002/
Only occurs with test code.

BUG=webrtc:6972
TBR=pthatcher@webrtc.org

Review-Url: https://codereview.webrtc.org/2648093002
Cr-Commit-Position: refs/heads/master@{#16200}
2017-01-21 06:43:34 +00:00
8662f94023 Only set certificate on DTLS transport if fingerprint is found in SDP.
This is used for fallback from DTLS to SDES encryption, which we probably still
want to support. Setting a certificate puts the DTLS transport in a "DTLS
enabled" mode, so it should be delayed until SDP with "a=fingerprint" is set.

BUG=webrtc:6972

Review-Url: https://codereview.webrtc.org/2641633002
Cr-Commit-Position: refs/heads/master@{#16199}
2017-01-21 05:20:51 +00:00
2197e91860 Remove dead code for GtkVideoRenderer.
Pulls in unnecessary GTK dependencies that breaks the chromium GTK3
build. This removes the last of webrtc/media/devices.

BUG=chromium:668446

Review-Url: https://codereview.webrtc.org/2646793008
Cr-Commit-Position: refs/heads/master@{#16198}
2017-01-21 02:13:07 +00:00
f33491ebaf Revert of Removing #defines previously used for building without BoringSSL/OpenSSL. (patchset #2 id:20001 of https://codereview.webrtc.org/2640513002/ )
Reason for revert:
Broke chromium build, due to a config being removed. Will add it back and remove the dependency in a chromium CL.

Original issue's description:
> Removing #defines previously used for building without BoringSSL/OpenSSL.
>
> These defines don't work any more, so they only cause confusion:
>
> FEATURE_ENABLE_SSL
> HAVE_OPENSSL_SSL_H
> SSL_USE_OPENSSL
>
> BUG=webrtc:7025
>
> Review-Url: https://codereview.webrtc.org/2640513002
> Cr-Commit-Position: refs/heads/master@{#16196}
> Committed: eaa826c2ee

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

Review-Url: https://codereview.webrtc.org/2648003003
Cr-Commit-Position: refs/heads/master@{#16197}
2017-01-21 01:01:45 +00:00
eaa826c2ee Removing #defines previously used for building without BoringSSL/OpenSSL.
These defines don't work any more, so they only cause confusion:

FEATURE_ENABLE_SSL
HAVE_OPENSSL_SSL_H
SSL_USE_OPENSSL

BUG=webrtc:7025

Review-Url: https://codereview.webrtc.org/2640513002
Cr-Commit-Position: refs/heads/master@{#16196}
2017-01-20 23:15:58 +00:00
7bcdb69957 Ignore ufrag/password in "a=candidate" lines in SDP.
These attributes should be parsed in candidate trickling, but when
parsing a full session description, only "a=ice-ufrag"/"a=ice-pwd"
should be used to communicate the ufrag/password.

BUG=chromium:681286

Review-Url: https://codereview.webrtc.org/2639183002
Cr-Commit-Position: refs/heads/master@{#16194}
2017-01-20 20:43:58 +00:00
0fc04b74c5 Finalize the support for building WebRTC library for iOS with bitcode
Initial provisioning was already done in build_ios_libs.sh to support
building the WebRTC framework or static library for iOS (tvOS, watchOS)
with bitcode. Still, the actual build configuration would need to be
modified for each and every part of the build, including 3rd-party libs.
Thus, doing that more universally, at the build/config level, would be
desirable – and actually necessary to provide the intended support.

The patch for enhancing the Chromium build configs with that specific
option was landed in https://codereview.chromium.org/2631573002

NOTRY=True
BUG=webrtc:5085

Review-Url: https://codereview.webrtc.org/2633643003
Cr-Commit-Position: refs/heads/master@{#16193}
2017-01-20 16:01:36 +00:00
f64941f1a5 RTCMediaStreamTrackStats.framesDecoded collected.
According to spec:
https://w3c.github.io/webrtc-stats/#dom-rtcmediastreamtrackstats-framesdecoded

BUG=webrtc:6757, chromium:659137, chromium:627816

Review-Url: https://codereview.webrtc.org/2642713004
Cr-Commit-Position: refs/heads/master@{#16192}
2017-01-20 15:39:09 +00:00
aea1a017ed Move webrtc/sdk/DEPS to webrtc/sdk/objc/DEPS
The folder webrtc/sdk/ now contains android as well, so we should move the objc DEPS file to the objc folder.

TBR=tommi
BUG=None

Review-Url: https://codereview.webrtc.org/2644733008
Cr-Commit-Position: refs/heads/master@{#16191}
2017-01-20 14:56:44 +00:00
3c9151b953 Revert of Creating libwebrtc bundle jar (patchset #4 id:60001 of https://codereview.webrtc.org/2646443002/ )
Reason for revert:
This breaks some chromium.webrtc.fyi buildbots with the following error:

ERROR Unresolved dependencies.
//third_party/webrtc/base:base(//build/toolchain/android:android_arm)
  needs //third_party/webrtc/base:base_java(//build/toolchain/android:android_arm)

Original issue's description:
> Creating libwebrtc bundle jar
>
> Creates a JAR which includes:
> - //webrtc/base:base_java
> - //webrtc/modules/audio_device:audio_device_java
> - //webrtc/sdk/android:libjingle_peerconnection_java
> - //webrtc/sdk/android:libjingle_peerconnection_metrics_default_java
>
> The libwebrtc.jar file will be generated at '<output_dir>/lib.java/webrtc/sdk/android/libwebrtc.jar'.
>
> BUG=webrtc:6356
>
> Review-Url: https://codereview.webrtc.org/2646443002
> Cr-Commit-Position: refs/heads/master@{#16189}
> Committed: a62a82b7e7

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

Review-Url: https://codereview.webrtc.org/2640023010
Cr-Commit-Position: refs/heads/master@{#16190}
2017-01-20 14:48:03 +00:00
a62a82b7e7 Creating libwebrtc bundle jar
Creates a JAR which includes:
- //webrtc/base:base_java
- //webrtc/modules/audio_device:audio_device_java
- //webrtc/sdk/android:libjingle_peerconnection_java
- //webrtc/sdk/android:libjingle_peerconnection_metrics_default_java

The libwebrtc.jar file will be generated at '<output_dir>/lib.java/webrtc/sdk/android/libwebrtc.jar'.

BUG=webrtc:6356

Review-Url: https://codereview.webrtc.org/2646443002
Cr-Commit-Position: refs/heads/master@{#16189}
2017-01-20 14:15:34 +00:00
fefe076789 RTCMediaStreamTrackStats.framesSent collected by RTCStatsCollector.
BUG=webrtc:6757, chromium:659137, chromium:627816

Review-Url: https://codereview.webrtc.org/2606033002
Cr-Commit-Position: refs/heads/master@{#16188}
2017-01-20 14:14:25 +00:00
2d4d653e1f Fix msan flake in rtcstats_integrationtest.cc.
This CL https://codereview.webrtc.org/2641763003 changed echo return
loss /...enhancement stats from being optional to being undefined
because that was the observed behavior (and a TODO was added to
investigate why).

It turns out that these stats are sometimes available, e.g. if the test
runs for a while like MSAN bot does, so this turned the test flaky.
Example failure:
https://build.chromium.org/p/client.webrtc/builders/Linux%20MSan/builds/8242

This CL reverts that change without reverting the rest of the CL which
other CLs depend on, and updates the TODO.

BUG=chromium:627816
TBR=hta@webrtc.org
NOTRY=True
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2640743007
Cr-Commit-Position: refs/heads/master@{#16187}
2017-01-20 12:16:41 +00:00
c854ac3755 Stop camera onStop instead of onPause.
In multi-window mode the non-active activity receives onPause. We
shouldn't stop the camera in this case.

BUG=webrtc:7018

Review-Url: https://codereview.webrtc.org/2648483003
Cr-Commit-Position: refs/heads/master@{#16186}
2017-01-20 12:09:11 +00:00
42f6d2fb6c RTCMediaStreamTrackStats.framesReceived collected by RTCStatsCollector.
VideoReceiverInfo::frames_received added based on
VideoReceiveStream::Stats::frame_counts (.key_frames + .delta_frames).

BUG=webrtc:6757, chromium:659137, chromium:627816

Review-Url: https://codereview.webrtc.org/2607913002
Cr-Commit-Position: refs/heads/master@{#16185}
2017-01-20 11:56:50 +00:00
30fe5e0d10 Prevent downstream linter warnings.
BUG=None

Review-Url: https://codereview.webrtc.org/2643853007
Cr-Commit-Position: refs/heads/master@{#16183}
2017-01-20 11:10:08 +00:00
35564065ca Camera1Session: Fix camera sometimes getting stopped twice.
Moves setting state as stopped to stopInternal. Checks that state is not
stopped in stopInternal.

BUG=webrtc:7015

Review-Url: https://codereview.webrtc.org/2640093003
Cr-Commit-Position: refs/heads/master@{#16182}
2017-01-20 11:09:03 +00:00
9e30274c03 RTCMediaStreamTrackStats collected on a per-attachment basis.
According to recent spec change:
https://github.com/w3c/webrtc-stats/pull/138/files

This establishes the relationship between tracks and
[Voice/Video][Sender/Receiver]Info(s). Follow-up CLs will easily be able
to collect more stats from them.

BUG=webrtc:6757, chromium:659137, chromium:627816

Review-Url: https://codereview.webrtc.org/2641763003
Cr-Commit-Position: refs/heads/master@{#16181}
2017-01-20 10:47:10 +00:00
fd6c94d311 Allow more config changes for CallActivity.
CallActivity doesn't survive recreation so we have to handle these config
changes. Fortunately, they don't seem to require any special handling.

BUG=webrtc:7018

Review-Url: https://codereview.webrtc.org/2645853002
Cr-Commit-Position: refs/heads/master@{#16180}
2017-01-20 10:36:49 +00:00
3e9229045e Load library dependencies in AppRTCMobile.
Older Android versions have trouble locating the library dependencies
automatically. Loading them manually resolves the issue.

BUG=webrtc:6751

Review-Url: https://codereview.webrtc.org/2635233002
Cr-Commit-Position: refs/heads/master@{#16179}
2017-01-20 09:46:50 +00:00
be850e1b1d Clear out cached codecs when calculating new codec lists.
Without this, every time WebRtcVideoEngine2 calls supported_codecs(),
the codec list grows.

BUG=webrtc:7020

Review-Url: https://codereview.webrtc.org/2639423006
Cr-Commit-Position: refs/heads/master@{#16178}
2017-01-20 09:07:26 +00:00
888874f761 Allow GCC 4.9 to compile Chromium
In order to implicit cast an lvalue to an rvalue when returning
from a function, the return type and type of variable in the return
statement previously had to be exactly the same. When this was not
the case, std::move was required. For instance, when returning a
std::unique_ptr<Derived> variable in a function with a
std::unique_ptr<Base> return type, std::move is required.

DR 1579 changed this, and allows for implicitly converting
to the return type, if the return type has a constructor(T&&), where
T is the type of the local variable being returned. DR 1579 was
implemented in GCC 5, but not in GCC 4.9 and below. By explicitly
qualifying the local variable with std::move, we allow for compiling
with GCC 4.9 and incur no performance penalty. The code is still
absolutely correct to the word of C++11.

BUG=chromium:682965

See also:
* https://bugs.gentoo.org/show_bug.cgi?id=600288
* https://stackoverflow.com/questions/22018115/converting-stdunique-ptrderived-to-stdunique-ptrbase#comment33375875_22018521
* http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3833.html#1579

Review-Url: https://codereview.webrtc.org/2642053003
Cr-Commit-Position: refs/heads/master@{#16175}
2017-01-20 04:20:45 +00:00
b2cdd93fd6 Remove the dependency of TransportChannel and TransportChannelImpl.
DtlsTransportChannelWrapper is renamed to be DtlsTransport which inherits from
DtlsTransportInternal. There will be no concept of "channel" in p2p level.
Both P2PTransportChannel and DtlsTransport don't depend on TransportChannel
and TransportChannelImpl any more and they are removed in this CL.

BUG=none

Review-Url: https://codereview.webrtc.org/2606123002
Cr-Commit-Position: refs/heads/master@{#16173}
2017-01-20 00:54:25 +00:00
9410b51037 GN: Add audio_conference_mixer_unittests to modules_unittests.
Was removed by accident in https://codereview.webrtc.org/2629923002/

BUG=webrtc:6954
R=kjellander@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2641203002
Cr-Commit-Position: refs/heads/master@{#16170}
2017-01-19 19:57:56 +00:00
d74886350e Fix PseudoTcp to handle incoming packets with invalid SEQ field
Previously PseudoTcp::process() didn't handle the case when the peer
sends a packet that's outside of the receive window, which was causing
DCHECK failures in the fuzzer.

BUG=681849

Review-Url: https://codereview.webrtc.org/2640173002
Cr-Commit-Position: refs/heads/master@{#16169}
2017-01-19 18:53:35 +00:00
eef94d9995 Video collected by VideoFileRenderer is first saved on the native heap, then saved to disk during release.
BUG=webrtc:6545

Review-Url: https://codereview.webrtc.org/2576283004
Cr-Commit-Position: refs/heads/master@{#16167}
2017-01-19 17:02:29 +00:00
3626865be2 GN: Refactor modules_unittests to eliminate package boundary violations.
BUG=webrtc:6954

Review-Url: https://codereview.webrtc.org/2629923002
Cr-Commit-Position: refs/heads/master@{#16166}
2017-01-19 16:27:11 +00:00
d32bf75721 Pass SdpAudioFormat through Channel, without converting to CodecInst
BUG=webrtc:5805

Review-Url: https://codereview.webrtc.org/2516993002
Cr-Commit-Position: refs/heads/master@{#16165}
2017-01-19 15:03:59 +00:00
b93598465d Revert of Move congestion controller processing to the pacer thread. (patchset #5 id:80001 of https://codereview.webrtc.org/2637783003/ )
Reason for revert:
Speculative revert for perf regression related to ramp-up on android. See https://bugs.chromium.org/p/chromium/issues/detail?id=682611

Original issue's description:
> Move congestion controller processing to the pacer thread.
>
> Also rename it from pacer_thread_ to congestion_controller_thread_.
>
> BUG=webrtc:6847
>
> Review-Url: https://codereview.webrtc.org/2637783003
> Cr-Commit-Position: refs/heads/master@{#16134}
> Committed: b3dc2b7b1e

TBR=danilchap@webrtc.org,stefan@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6847

Review-Url: https://codereview.webrtc.org/2644603003
Cr-Commit-Position: refs/heads/master@{#16163}
2017-01-19 13:41:25 +00:00
6ce9259cb0 Revert of make the DtlsTransportWrapper inherit form DtlsTransportInternal (patchset #11 id:320001 of https://codereview.webrtc.org/2606123002/ )
Reason for revert:
Failed the memory check.
May need to fix the memory leak.

Original issue's description:
> make the DtlsTransportWrapper inherit form DtlsTransportInternal
>
> BUG=none
>
> Review-Url: https://codereview.webrtc.org/2606123002
> Cr-Commit-Position: refs/heads/master@{#16160}
> Committed: 5aed06c8d3

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

Review-Url: https://codereview.webrtc.org/2639203004
Cr-Commit-Position: refs/heads/master@{#16162}
2017-01-19 12:49:47 +00:00
5aed06c8d3 make the DtlsTransportWrapper inherit form DtlsTransportInternal
BUG=none

Review-Url: https://codereview.webrtc.org/2606123002
Cr-Commit-Position: refs/heads/master@{#16160}
2017-01-19 09:48:02 +00:00
04926b8264 Revert of Make the new jitter buffer the default jitter buffer. (patchset #2 id:230001 of https://codereview.webrtc.org/2642753002/ )
Reason for revert:
Breaks tests downstream.

Original issue's description:
> Reland of Make the new jitter buffer the default jitter buffer. (patchset #1 id:1 of https://codereview.chromium.org/2632123005/ )
>
> Reason for revert:
> Fix in this CL: https://codereview.chromium.org/2640793003/
>
> Original issue's description:
> > Revert of Make the new jitter buffer the default jitter buffer. (patchset #7 id:120001 of https://codereview.chromium.org/2627463004/ )
> >
> > Reason for revert:
> > Breaks android bots.
> >
> > Original issue's description:
> > > Make the new jitter buffer the default jitter buffer.
> > >
> > > This CL contains only the changes necessary to make the switch to the new jitter
> > > buffer, clean up will be done in follow up CLs.
> > >
> > > In this CL:
> > >  - Removed the WebRTC-NewVideoJitterBuffer experiment and made the
> > >    new video jitter buffer the default one.
> > >  - Moved WebRTC.Video.KeyFramesReceivedInPermille and
> > >    WebRTC.Video.JitterBufferDelayInMs to the ReceiveStatisticsProxy.
> > >
> > > BUG=webrtc:5514
> > >
> > > Review-Url: https://codereview.webrtc.org/2627463004
> > > Cr-Commit-Position: refs/heads/master@{#16114}
> > > Committed: 0f0763d86d
> >
> > TBR=stefan@webrtc.org,terelius@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:5514
> >
> > Review-Url: https://codereview.webrtc.org/2632123005
> > Cr-Commit-Position: refs/heads/master@{#16117}
> > Committed: c08c191f7d
>
> TBR=stefan@webrtc.org,terelius@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:5514
>
> Review-Url: https://codereview.webrtc.org/2642753002
> Cr-Commit-Position: refs/heads/master@{#16149}
> Committed: f20dd0014d

TBR=stefan@webrtc.org,terelius@webrtc.org,philipel@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2638423003
Cr-Commit-Position: refs/heads/master@{#16159}
2017-01-19 08:06:17 +00:00
3078b551ad Reduce the log verbosity in sslstreamadapter_unittest
This CL changes some of the log statements in SSLStreamAdapter tests from Info to Verbose. The excessive verbosity might have contributed to some bot failures.

BUG=None

Review-Url: https://codereview.webrtc.org/2641623002
Cr-Commit-Position: refs/heads/master@{#16155}
2017-01-18 23:29:35 +00:00
d1c0998730 Adding OrtcFactory, and changing UdpTransport to match current plan.
The factory follows the same principles as PeerConnectionFactory;
various modules can be passed into its constructor but default
implementations are provided. Currently the only object the factory can
create is a UdpTransport (need to start somewhere).

UdpTransportChannel (renamed to UdpTransport)
will now accept a socket passed into its constructor,
relying on the factory to create the socket. This allows some
simplifications to be made, such as getting rid of "State" since the
only states are now "has destination set or doesn't".

BUG=webrtc:7013

Review-Url: https://codereview.webrtc.org/2632613002
Cr-Commit-Position: refs/heads/master@{#16154}
2017-01-18 23:16:37 +00:00
d99a200fad Adding some features to proxy.h, and restructuring the macros.
New features are:
- Invoke a destructor on the worker thread.
- Make proxy wrapper for a non-refcounted object.
- Ability to use unique_ptrs (as arguments or return values).

These features are needed by this CL:
https://codereview.webrtc.org/2632613002/

BUG=None

Review-Url: https://codereview.webrtc.org/2628343003
Cr-Commit-Position: refs/heads/master@{#16151}
2017-01-18 16:55:23 +00:00
c8ee882753 Replace use of ASSERT in test code.
In top level test functions, replaced with gtest ASSERT_*. In helper
methods in main test files, replaced with EXPECT_* or RTC_DCHECK on a
case-by-case basis.

In separate mock/fake classes used by tests (which might be of some
use also in tests of third-party applications), ASSERT was replaced
with RTC_CHECK, using

  git grep -l ' ASSERT(' | grep -v common.h | \
    xargs sed -i 's/ ASSERT(/ RTC_CHECK(/'

followed by additional includes of base/checks.h in affected files,
and git cl format.

BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2622413005
Cr-Commit-Position: refs/heads/master@{#16150}
2017-01-18 15:20:55 +00:00
f20dd0014d Reland of Make the new jitter buffer the default jitter buffer. (patchset #1 id:1 of https://codereview.chromium.org/2632123005/ )
Reason for revert:
Fix in this CL: https://codereview.chromium.org/2640793003/

Original issue's description:
> Revert of Make the new jitter buffer the default jitter buffer. (patchset #7 id:120001 of https://codereview.chromium.org/2627463004/ )
>
> Reason for revert:
> Breaks android bots.
>
> Original issue's description:
> > Make the new jitter buffer the default jitter buffer.
> >
> > This CL contains only the changes necessary to make the switch to the new jitter
> > buffer, clean up will be done in follow up CLs.
> >
> > In this CL:
> >  - Removed the WebRTC-NewVideoJitterBuffer experiment and made the
> >    new video jitter buffer the default one.
> >  - Moved WebRTC.Video.KeyFramesReceivedInPermille and
> >    WebRTC.Video.JitterBufferDelayInMs to the ReceiveStatisticsProxy.
> >
> > BUG=webrtc:5514
> >
> > Review-Url: https://codereview.webrtc.org/2627463004
> > Cr-Commit-Position: refs/heads/master@{#16114}
> > Committed: 0f0763d86d
>
> TBR=stefan@webrtc.org,terelius@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5514
>
> Review-Url: https://codereview.webrtc.org/2632123005
> Cr-Commit-Position: refs/heads/master@{#16117}
> Committed: c08c191f7d

TBR=stefan@webrtc.org,terelius@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:5514

Review-Url: https://codereview.webrtc.org/2642753002
Cr-Commit-Position: refs/heads/master@{#16149}
2017-01-18 15:15:37 +00:00
6da303db1d Reland of Delete rtc::linked_ptr. (patchset #1 id:1 of https://codereview.webrtc.org/2579753002/ )
Only use, in statstypes.h, replaced by rtc::scoped_refptr.

Reason for revert:
Intend to switch from unique_ptr to scoped_refptr,
and then reland.

Original issue's description:
> Revert of Delete rtc::linked_ptr. Only use, in statstypes.h, replaced bu std::unique_ptr. (patchset #1 id:1 of https://codereview.webrtc.org/2581663002/ )
>
> Reason for revert:
> This change broke Chrome too. It's stats processing wants to make a copy of webrtc's stats mapping, which is no longer possible with std::unique_ptr.
>
> Original issue's description:
> > Reland of Delete rtc::linked_ptr. Only use, in statstypes.h, replaced bu std::unique_ptr. (patchset #1 id:1 of https://codereview.webrtc.org/2576673002/ )
> >
> > Reason for revert:
> > Downstream project fixed to not make copies while iterating over the stats mapping.
> >
> > Original issue's description:
> > > Revert of Delete rtc::linked_ptr. Only use, in statstypes.h, replaced bu std::unique_ptr. (patchset #1 id:1 of https://codereview.webrtc.org/2567143003/ )
> > >
> > > Reason for revert:
> > > The change from rtc::linked_ptr to std::unique_ptr broke a downstream project.
> > >
> > > Original issue's description:
> > > > Delete rtc::linked_ptr. Only use, in statstypes.h, replaced with std::unique_ptr.
> > > >
> > > > BUG=webrtc:6424
> > > >
> > > > Committed: https://crrev.com/36f74e55792cae19db8b222c29aa38d6e0eb1225
> > > > Cr-Commit-Position: refs/heads/master@{#15588}
> > >
> > > TBR=solenberg@webrtc.org,pthatcher@webrtc.org,hta@webrtc.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG=webrtc:6424
> > >
> > > Committed: https://crrev.com/8afbc8cba65d99bb7a0feece8fb3055b144106b1
> > > Cr-Commit-Position: refs/heads/master@{#15589}
> >
> > TBR=solenberg@webrtc.org,pthatcher@webrtc.org,hta@webrtc.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG=webrtc:6424
> >
> > Committed: https://crrev.com/06035cf53abad80b0525f286a3b81e388cc7ee00
> > Cr-Commit-Position: refs/heads/master@{#15627}
>
> TBR=solenberg@webrtc.org,pthatcher@webrtc.org,hta@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6424
>
> Committed: https://crrev.com/6a58f33450a46370039cd82537612040a91165b3
> Cr-Commit-Position: refs/heads/master@{#15629}

TBR=solenberg@webrtc.org,pthatcher@webrtc.org,hta@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2641793002
Cr-Commit-Position: refs/heads/master@{#16148}
2017-01-18 14:10:54 +00:00
fcc600651d Clear the FrameBuffer in case of a backward jump in the picture id.
Even though this is against the spec we allow a stream to continue if
a backwards jump in the picture id occurs on a keyframe.

BUG=webrtc:7001, webrtc:5514

Review-Url: https://codereview.webrtc.org/2640793003
Cr-Commit-Position: refs/heads/master@{#16146}
2017-01-18 13:35:20 +00:00
44303ea0ff Revert of Add experimental simulcast screen content mode (patchset #5 id:80001 of https://codereview.webrtc.org/2636443002/ )
Reason for revert:
Breaks chromium.

Original issue's description:
> Add experimental simulcast screen content mode
>
> BUG=webrtc:4172
>
> Review-Url: https://codereview.webrtc.org/2636443002
> Cr-Commit-Position: refs/heads/master@{#16135}
> Committed: a28e971e3b

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

Review-Url: https://codereview.webrtc.org/2643763002
Cr-Commit-Position: refs/heads/master@{#16145}
2017-01-18 13:19:13 +00:00
e8abe3ef1b Revert of New method StatsObserver::OnCompleteReports, passing ownership. (patchset #2 id:20001 of https://codereview.webrtc.org/2584553002/ )
Reason for revert:
The new method doesn't work as intended.

It can't pass ownership, because the StatsReports is a vector of raw pointers to StatReport objects owned by the StatsCollector.

Original issue's description:
> New method StatsObserver::OnCompleteReports, passing ownership.
>
> The new name, OnCompleteReports rather than OnComplete, is needed
> because in C++ method lookup, overriding a method hides all otherwise
> inherited methods with the same name, even if they have a different
> signature. And here, the intention is that each subclass should
> override one or the other of the two methods, and inherit the method it
> doesn't override.
>
> This cl is a prerequisite for
> https://codereview.webrtc.org/2567143003/, because the Chrome glue
> code needs to retain the stats report after the OnComplete method has
> returned.
>
> Currently, Chrome makes a copy of the stats mapping (which breaks when
> changing ValuePtr from an rtc::linked_ptr to an std::unique_ptr). After
> this cl, Chrome can be fixed to take ownership and no longer needs to
> copy anything, unblocking cl 2567143003.
>
> BUG=webrtc:6424
>
> Review-Url: https://codereview.webrtc.org/2584553002
> Cr-Commit-Position: refs/heads/master@{#15708}
> Committed: b36ee8d498

TBR=solenberg@webrtc.org,magjed@webrtc.org,tkchin@webrtc.org,hbos@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:6424

Review-Url: https://codereview.webrtc.org/2641783002
Cr-Commit-Position: refs/heads/master@{#16144}
2017-01-18 13:00:34 +00:00
2f67b82e20 Fixing peerconnection reddish video issue
BUG=webrtc:6857
NOTRY=True

Review-Url: https://codereview.webrtc.org/2604323002
Cr-Commit-Position: refs/heads/master@{#16143}
2017-01-18 12:23:10 +00:00
5850a9484d Add failure type parameter to onFailure callback.
This allows Camera2Session to correctly signal camera disconnect
when starting the camera.

BUG=webrtc:7008

Review-Url: https://codereview.webrtc.org/2642703002
Cr-Commit-Position: refs/heads/master@{#16142}
2017-01-18 11:22:16 +00:00
2fcd2dd93a Update YuvConverter to use GlTextureFrameBuffer.
Old implementation also had a bug where it had the framebuffer bound
while changing the texture size. This causes problems on some phones.

BUG=webrtc:6751

Review-Url: https://codereview.webrtc.org/2635133003
Cr-Commit-Position: refs/heads/master@{#16141}
2017-01-18 11:21:10 +00:00
4a0c76402e Add rtcp::TransportFeedback::GetReceivedPackets()
It combines and simplify use of GetStatusVector and GetReceiveDeltas accesors.

Replace use of all GetStatusVector/GetReceiveDeltasUs

BUG=None

Review-Url: https://codereview.webrtc.org/2633923003
Cr-Commit-Position: refs/heads/master@{#16139}
2017-01-18 10:40:30 +00:00