Implements SupportsNativeHandle() in SimulcastEncoderAdapter which works
when there's only a single encoder.
BUG=webrtc:5060
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1397653004
Cr-Commit-Position: refs/heads/master@{#10291}
Landmines is a feature used in Chromium that makes it possible to
clobber the build output directory when needed. Example scenarios
are when compiler/tool/infrastructure changes require a full rebuild.
This is mainly to ease clobbering on all bots, but will also ensure
developers don't have to waste time on figuring out what's wrong
(or rely on reading PSA e-mails announcing when such manual action
is required).
This CL depends on https://codereview.chromium.org/1407733002/
being landed and rolled into DEPS first.
BUG=5077
R=kjellander@chromium.org, machenbach@chromium.org
Review URL: https://codereview.webrtc.org/1402923003 .
Cr-Commit-Position: refs/heads/master@{#10287}
Encoders need to be externally provided. To use software encoders they
need to be created and registered from the outside.
BUG=webrtc:1695
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1394823002 .
Cr-Commit-Position: refs/heads/master@{#10283}
After the TransportController CL, BaseSession does little more than
hold a state and an error, and act as an intermediary for the
TransportController. So it doesn't make sense for it to be its own
class.
Review URL: https://codereview.webrtc.org/1397973002
Cr-Commit-Position: refs/heads/master@{#10281}
Also parameterise on PeerConnectionParameters to prepare for more test variations. (capture and encode to textures)
Review URL: https://codereview.webrtc.org/1404093002
Cr-Commit-Position: refs/heads/master@{#10279}
Also updated the RTPPayloadRegistry::RestoreOriginalPacket signature to not take the first arg as a **, since it isn't modified.
Review URL: https://codereview.webrtc.org/1394573004
Cr-Commit-Position: refs/heads/master@{#10276}
This is no longer used. Related code in the iSAC codec itself will be
deleted a follow-up CL.
BUG=4210
Review URL: https://codereview.webrtc.org/1404463003
Cr-Commit-Position: refs/heads/master@{#10272}
Due to https://codereview.chromium.org/1397493004 we're now adding
a build_overrides directory in WebRTC. Thanks to this, we no longer
need to pass --args="build_with_chromium=false" when running GN in
standalone WebRTC.
Change log: c089d37..159828f
Full diff: c089d37..159828f
No dependencies changed.
No update to Clang.
BUG=webrtc:5070,chromium:541791
TBR=tommi@webrtc.org
CQ_EXTRA_TRYBOTS=tryserver.webrtc:win_baremetal,mac_baremetal,linux_baremetal
Review URL: https://codereview.webrtc.org/1403453003 .
Cr-Commit-Position: refs/heads/master@{#10270}
This is no longer used. Related code in NetEq and the iSAC codec itself
will be deleted in follow-up CLs.
BUG=4210
Review URL: https://codereview.webrtc.org/1404623002
Cr-Commit-Position: refs/heads/master@{#10264}
This CL makes AddRef() and Release() const member methods and the refcount integer mutable. This is reasonable, because they only manage the lifetime of the object, and this is also how it's done in Chromium.
The purpose is to be able to capture a const pointer in a scoped_refptr, which is currenty impossible. The practial problem this CL solves is this:
void Foo::Bar() const {}
rtc::Callback0<void> Foo::MakeClosure() const {
return rtc::Bind(&Foo::Bar, this);
}
We currently capture |this| as const Foo*. With this CL, |this| will be captured as scoped_refptr<const Foo>.
A test is also added in bind_unittest to check this behaviour.
BUG=webrtc:5065
R=perkj@webrtc.org, tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1403683004 .
Cr-Commit-Position: refs/heads/master@{#10253}
Reason for revert:
Temporarily reverting as this causes some issues with perf tests. Especially tests with packet loss no longer works.
Original issue's description:
> Adding support for simulcast and spatial layers into VideoQualityTest
>
> The CL includes several changes:
> - Adding flags describing the streams and spatial layers.
> - Reorganizing the order of the flags, to make them easier to maintain.
> - Adding a member .params_ to VideoQualityAnalyzer.
> (instead of passing it to every member function manually)
> - Updating VideoAnalyzer to support simulcast.
> (select appropriate ssrc and fix timestamps which are sometimes increased by 1)
> - VP9EncoderImpl already had code for automatic calculation of bitrate for each layer.
> Changing to first read bitrates and resolution ratios from the flags, if specified.
> If not specified, reverting to the old code are setting the values automatically.
> - Changing the parameters in LayerFilteringTransport, replacing
> xx_discard_thresholds with selected_xx, to make it easier to use for the end user.
>
> Committed: https://crrev.com/87f83a9a27d657731ccb54025bc04ccad0da136e
> Cr-Commit-Position: refs/heads/master@{#10215}
TBR=pbos@webrtc.org,mflodman@webrtc.org,ivica@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.webrtc.org/1397363002
Cr-Commit-Position: refs/heads/master@{#10252}
This CL restructures the RtcEventLog protobuf format, by removing the DebugEvent message. This is done by moving the LOG_START and LOG_END events to the EventType enum and making a seperate message for audio playout events. In addition to these changes, some fields were added to the AudioReceiveConfig and AudioSendConfig messages, but these are for future use and are not currently logged yet.
This is a follow-up to CL 1340283002 which adds a SSRC to AudioPlayout events in the RtcEventLog.
BUG=webrtc:4741
R=henrik.lundin@webrtc.org, stefan@webrtc.org, terelius@webrtc.org
Review URL: https://codereview.webrtc.org/1348113003 .
Cr-Commit-Position: refs/heads/master@{#10221}
What used to be the libpeerconnection library is now compiled
statically into the Chromium binary, so clean up references it.
BUG=chromium:482123
TBR=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1399513002 .
Cr-Commit-Position: refs/heads/master@{#10216}
The CL includes several changes:
- Adding flags describing the streams and spatial layers.
- Reorganizing the order of the flags, to make them easier to maintain.
- Adding a member .params_ to VideoQualityAnalyzer.
(instead of passing it to every member function manually)
- Updating VideoAnalyzer to support simulcast.
(select appropriate ssrc and fix timestamps which are sometimes increased by 1)
- VP9EncoderImpl already had code for automatic calculation of bitrate for each layer.
Changing to first read bitrates and resolution ratios from the flags, if specified.
If not specified, reverting to the old code are setting the values automatically.
- Changing the parameters in LayerFilteringTransport, replacing
xx_discard_thresholds with selected_xx, to make it easier to use for the end user.
Review URL: https://codereview.webrtc.org/1353263005
Cr-Commit-Position: refs/heads/master@{#10215}
Since the pacer is always enabled, removing enable/disable which makes
all packet queueing succeed. Also renaming one of the ::SendPackets
::InsertPacket to avoid confusion.
BUG=webrtc:1695, webrtc:2629
R=stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1392513002 .
Cr-Commit-Position: refs/heads/master@{#10211}
In video_sender.cc, properly read the number of temporal layers for VP9 too.
Also, some cleanup in video_loopback.cc and video_quality_test.h.
Review URL: https://codereview.webrtc.org/1351693005
Cr-Commit-Position: refs/heads/master@{#10201}
Every now and then we get CLs to codereview.webrtc.org
that are created from a Chromium checkout by editing
the code in third_party/webrtc or third_party/libjingle.
By editing these lower-level codereview.settings files,
we instead cause a crash during 'git cl upload', but the
contents of the file will also be printed, which can work
as an error message. The alternative would be to entirely
remove the files.
BUG=
R=andrew@webrtc.org, tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1389963002 .
Cr-Commit-Position: refs/heads/master@{#10191}
The OwningThread member of CRITICAL_SECTION is declared as having type
HANDLE but it is actually the thread's Thread ID which is a DWORD. When
doing 64-bit builds of Chromium with VS 2015 this triggers a warning
because of the suspicious conversion from 32-bit integer to 64-bit
pointer.
This change adds a cast (and some comments) to make the conversion
explicit and avoid the warning.
R=henrikg@webrtc.org
BUG=440500
Review URL: https://codereview.webrtc.org/1386183002
Cr-Commit-Position: refs/heads/master@{#10190}
Every malformed URL should now produce an error message in JS, rather than
silently failing and possibly printing a warning message to the console (and
possibly crashing).
Also added some unit tests, and made "ParseIceServers" public.
BUG=445002
Review URL: https://codereview.webrtc.org/1344143002
Cr-Commit-Position: refs/heads/master@{#10186}
Also, in Sample struct, replacing double with the original type.
It makes more sense to save the original data as truthful as possible, and then
convert it to double later if necessary (in the plot script).
Review URL: https://codereview.webrtc.org/1374233002
Cr-Commit-Position: refs/heads/master@{#10184}
When fetching a packet from the rtp packet history, cuased by a
retransmission, the transport seq extension header is enabled but the
sequence number is set to 0. A new transport seq should be assigned in
this case.
BUG=
Review URL: https://codereview.webrtc.org/1385563005
Cr-Commit-Position: refs/heads/master@{#10183}
Since padding is no longer sent on Encoded() callbacks, dummy callbacks
aren't required to generate padding. This skip-frame behavior can then
be removed to get rid of dummy callbacks though nothing was encoded. As
frames don't have to be generated for frames that don't have to be sent
we skip encoding frames that aren't intended to be sent either, reducing
CPU load.
BUG=
R=mflodman@webrtc.org, stefan@webrtc.org
Review URL: https://codereview.webrtc.org/1369923005 .
Cr-Commit-Position: refs/heads/master@{#10181}