There's some code that resets the ICE role on an ICE restart (behavior
that's specified in ICE, but removed from ICEbis). And it wasn't taking
into account that the remote endpoint may be an ICE lite endpoint, in
which case the WebRTC endpoint's role should always be "controlling".
BUG=chromium:710760
Review-Url: https://codereview.webrtc.org/2812173003
Cr-Commit-Position: refs/heads/master@{#17779}
Instead of using the time on the first callback to Call::OnSentPacket, use the time when the first packet is sent from the pacer (to make sure this packet corresponds to an audio/video RTP packet).
BUG=webrtc:6244
Review-Url: https://codereview.webrtc.org/2825333002
Cr-Commit-Position: refs/heads/master@{#17777}
RTCVideoEncoder does not propagate RTP timestamps properly for encoded video frames, and as such whenever switching between simulcast layers there's a large timestamp gap that causes the incoming stream to freeze (timestamps look like they're either too far ahead or too far behind the previous frame).
Ideally RTCVideoEncoder would propagate these timestamps, but even so, when there's a large timestamp gap it would seem reasonable that the receiver resets quickly and consider this to be a new stream.
This CL detects the large jump for timestamps, if that happens, we reset the time extrapolator, which is the class for convertion from RTP timestamp to clock time.
BUG=chromium:705679
Review-Url: https://codereview.webrtc.org/2776813002
Cr-Commit-Position: refs/heads/master@{#17770}
Remove the ProbingIntervalEstimator and MockAimdRateControl.
BUG=webrtc:7441
Review-Url: https://codereview.webrtc.org/2789233005
Cr-Commit-Position: refs/heads/master@{#17769}
This CL improves the echo cancellation performance on setups where
headsets are used (systems with such low echo path gain
that no correlation between the render and capture signals
can be found) in 4 ways:
1) The echo path gain for systems with headsets is assumed to be
nonzero.
2) The stationary component of the render power is not included
in nonlinear echo power estimate.
3) The behavior after echo path gain changes is made less cautious.
4) The detection of systems with headsets is made more rapid.
BUG=chromium:712651, webrtc:6018
Review-Url: https://codereview.webrtc.org/2823903003
Cr-Commit-Position: refs/heads/master@{#17768}
It's not possible to enable it for the rtc_base_approved
target but since a larger refactoring is ongoing for webrtc/base
this CL doesn't attempt to fix that.
Changes made:
* Move webrtc/system_wrappers/include/stringize_macros.h into
webrtc/base:rtc_base_approved_unittests (and corresponding
unit test to rtc_base_approved_unittests).
* Move md5digest.* from rtc_base_approved to rtc_base_test_utils target.
* Move webrtc/system_wrappers/include/stringize_macros.h (+test) into
webrtc/base.
* Remove unused use include of webrtc/base/fileutils.h in
webrtc/base/pathutils.cc
BUG=webrtc:6828, webrtc:3806, webrtc:7480
NOTRY=True
Review-Url: https://codereview.webrtc.org/2717083002
Cr-Commit-Position: refs/heads/master@{#17766}
When degradation preference is kDegradationDisabled, do not update WebRTC.Video.CpuLimitedResolutionInPercent.
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/2807133002
Cr-Commit-Position: refs/heads/master@{#17757}
The test isn't complete, since "track_id" ends up unset. But it's
better than having no test at all.
BUG=None
Review-Url: https://codereview.webrtc.org/2827643003
Cr-Commit-Position: refs/heads/master@{#17753}
These tests are already built into rtc_unittests, so they end up being
run three times. Fixed by creating a "p2p_test_utils" target that
contains the test utils that ortc_unittests and rtc_media_unittests
depend on, but not the tests themselves.
BUG=None
TBR=kjellander@webrtc.org
Review-Url: https://codereview.webrtc.org/2820263004
Cr-Commit-Position: refs/heads/master@{#17752}
Reason for revert:
Breaks checkdeps rules. Need to make a "p2p_test_utils" build target to include things like fakeicetransport.h.
Original issue's description:
> Remove rtc_p2p_unittests from ortc_unittests executable.
>
> These tests are already built into rtc_unittests; they shouldn't be
> built into two test executables.
>
> BUG=None
> TBR=kjellander@webrtc.org
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2820263004
> Cr-Commit-Position: refs/heads/master@{#17748}
> Committed: fe9d38f515TBR=kjellander@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/2826703002
Cr-Commit-Position: refs/heads/master@{#17749}
Very similar to the current interface, but matches the new C++ structure, and
exposes the stats values as Objects which can be downcast to more specific
types (where the previous API only exposed the values as strings).
BUG=webrtc:6871
Review-Url: https://codereview.webrtc.org/2807933003
Cr-Commit-Position: refs/heads/master@{#17746}
If we are on API level 21 or higher, it is possible to use a special AudioTrack
constructor that uses AudioAttributes and AudioFormat as input. It allows us to
supersede the notion of stream types for defining the behavior of audio playback,
and to allow certain platforms or routing policies to use this information for more
refined volume or routing decisions.
BUG=b/30018586
Review-Url: https://codereview.webrtc.org/2804013002
Cr-Commit-Position: refs/heads/master@{#17737}
The example that brought up this issue was:
1. Do offer/answer exchange.
2. Later, remove the audio/video stream.
3. Add back a new stream, that contains only the audio track.
4. Do new offer/answer.
The new offer didn't have the new stream ID, but code elsewhere was
expecting one. As a result, the send stream is never hooked up to the
audio track, and audio packets aren't sent.
BUG=chromium:611708
Review-Url: https://codereview.webrtc.org/2810733003
Cr-Commit-Position: refs/heads/master@{#17709}
That name isn't unique enough---someone else may be using it. Not a
big problem in practice in this file, but it's the principle of the
thing.
BUG=webrtc:7484
Review-Url: https://codereview.webrtc.org/2808333006
Cr-Commit-Position: refs/heads/master@{#17697}
The compiler is allowed to leave a chopped-off horse's head on your
bed if you do.
Happily, we didn't even have to move this function to another namespace,
since it was unused.
BUG=webrtc:7484
Review-Url: https://codereview.webrtc.org/2815203002
Cr-Commit-Position: refs/heads/master@{#17696}
RTCOpenGLVideoRenderer is currently shared between RTCEAGLVideoView and
RTCNSGLVideoView, and contains some iOS specific code and some Mac
specific code. We plan on adding an interface for injectable OpenGL ES
shaders to RTCEAGLVideoView, and it's easier if RTCEAGLVideoView and
RTCNSGLVideoView have separate code paths. This CL removes
RTCOpenGLVideoRenderer and inlines the necessary code in
RTCEAGLVideoView and RTCNSGLVideoView.
BUG=webrtc:7473
Review-Url: https://codereview.webrtc.org/2812613003
Cr-Commit-Position: refs/heads/master@{#17693}
Reason for revert:
It is breaking a downstream bot.
Original issue's description:
> Enabling 'gn check' on //webrtc/test.
>
> BUG=webrtc:6828
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2796363003
> Cr-Commit-Position: refs/heads/master@{#17689}
> Committed: b41445858eTBR=kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6828
Review-Url: https://codereview.webrtc.org/2817003002
Cr-Commit-Position: refs/heads/master@{#17690}
Reason for revert:
The blocker in upstreaming has been removed.
Original issue's description:
> Revert of Reland "Add first part of the network_tester functionality" (patchset #3 id:40001 of https://codereview.chromium.org/2808203003/ )
>
> Reason for revert:
> Break downstream bots.
>
> Original issue's description:
> > Reland "Add first part of the network_tester functionality"
> >
> > BUG=webrtc:7426
> >
> > Review-Url: https://codereview.webrtc.org/2808203003
> > Cr-Commit-Position: refs/heads/master@{#17666}
> > Committed: 1c223b2f75
>
> TBR=stefan@webrtc.org,minyue@webrtc.org,nisse@webrtc.org,terelius@webrtc.org,michaelt@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7426
>
> Review-Url: https://codereview.webrtc.org/2813193002
> Cr-Commit-Position: refs/heads/master@{#17672}
> Committed: e5fd38989dTBR=stefan@webrtc.org,nisse@webrtc.org,terelius@webrtc.org,michaelt@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:7426
Review-Url: https://codereview.webrtc.org/2811253005
Cr-Commit-Position: refs/heads/master@{#17688}
This is a short term solution to change the volume of an AudioTrack until applyConstraints for MediaStreamTracks has been implemented.
This CL adds 1 new Java method & the relevant JNI file update:
AudioTrack.java:
public void setVolume(double volume);
BUG=webrtc:6533
Review-Url: https://codereview.webrtc.org/2710683009
Cr-Commit-Position: refs/heads/master@{#17682}
Reason for revert:
Fix bug in original CL.
Original issue's description:
> Revert of Android Logging.java: Load native library only when needed (patchset #3 id:40001 of https://codereview.webrtc.org/2803203002/ )
>
> Reason for revert:
> Breaks C++ logs in Java apps.
>
> Original issue's description:
> > Android Logging.java: Load native library only when needed
> >
> > Logging.java currently always tries to load jingle_peerconnection_so in
> > the static section, but some clients don't want to use it. This CL loads
> > jingle_peerconnection_so only when a client requests it by calling one
> > of:
> > * Logging.enableLogThreads
> > * Logging.enableLogTimeStamps
> > * Logging.enableTracing
> > * Logging.enableLogToDebugOutput
> >
> > BUG=b/36410678
> >
> > Review-Url: https://codereview.webrtc.org/2803203002
> > Cr-Commit-Position: refs/heads/master@{#17647}
> > Committed: dee5eb14e1
>
> TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,magjed@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2816753002
> Cr-Commit-Position: refs/heads/master@{#17676}
> Committed: 6e4a4427dcTBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=b/36410678
Review-Url: https://codereview.webrtc.org/2817593003
Cr-Commit-Position: refs/heads/master@{#17677}