This is a followup to https://webrtc-review.googlesource.com/61640,
which ensures that picture id and tl0 pic idx are continuous,
independent of how the encoder objects are created and destroyed.
The plan is to later move responsibility for encoder creation to
VideoSendStream::ReconfigureVideoEncoder, delegating work to
VideoStreamEncoder.
Bug: webrtc:8830
Change-Id: Idde5c91f24d3c0e3fa6a3bb26eb06f6800896a28
Reviewed-on: https://webrtc-review.googlesource.com/62082
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22473}
This is a reland of 5897fe27abcbe70f706cc23adc26147e0581f97e.
Adding back CallConfig::kDefaultStartBitrateBps as deprecated.
Also making BitrateContraints::kDefaultStartBitrateBps private to stop
it from being used in other places.
Original change's description:
> Moved BitrateConfig out of Call::Config.
>
> This prepares for a CL extracting the bitrate configuration logic from
> the Call class.
>
> Also renaming BitrateConfig to BitrateConstraints.
>
> Bug: webrtc:8415
> Change-Id: I7e472683034c57bdc8093cdf5e78e477d1732480
> Reviewed-on: https://webrtc-review.googlesource.com/54400
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22104}
Bug: webrtc:8415
Change-Id: Iacfe2d6daedff710832ab89210c7c66d4403c93b
Reviewed-on: https://webrtc-review.googlesource.com/55980
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22123}
This reverts commit 5897fe27abcbe70f706cc23adc26147e0581f97e.
Reason for revert: Breaking internal builds
Original change's description:
> Moved BitrateConfig out of Call::Config.
>
> This prepares for a CL extracting the bitrate configuration logic from
> the Call class.
>
> Also renaming BitrateConfig to BitrateConstraints.
>
> Bug: webrtc:8415
> Change-Id: I7e472683034c57bdc8093cdf5e78e477d1732480
> Reviewed-on: https://webrtc-review.googlesource.com/54400
> Commit-Queue: Sebastian Jansson <srte@webrtc.org>
> Reviewed-by: Stefan Holmer <stefan@webrtc.org>
> Reviewed-by: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#22104}
TBR=nisse@webrtc.org,stefan@webrtc.org,srte@webrtc.org
Change-Id: I598040edba7f1ff8b39d2d9c3c3ceca5627aaa0c
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:8415
Reviewed-on: https://webrtc-review.googlesource.com/55740
Reviewed-by: Lu Liu <lliuu@webrtc.org>
Commit-Queue: Lu Liu <lliuu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22106}
This prepares for a CL extracting the bitrate configuration logic from
the Call class.
Also renaming BitrateConfig to BitrateConstraints.
Bug: webrtc:8415
Change-Id: I7e472683034c57bdc8093cdf5e78e477d1732480
Reviewed-on: https://webrtc-review.googlesource.com/54400
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22104}
The main pieces of this refactor are splitting up the creation of
simulcast layers for screenshare or the normal case, more consistent
naming, renaming streams to layers and trying to be more explicit with
some of the logic. Also added TODOs for future work to put more
application control into creating simulcast streams.
Bug: webrtc:8785
Change-Id: Ibf49fa0cc6d890ff96f8ee11c89d93a2c94119d6
Reviewed-on: https://webrtc-review.googlesource.com/47580
Commit-Queue: Seth Hampson <shampson@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21989}
Both macros do the same thing, as wrappers for
__attribute__((guarded_by)), and more names for the same thing doesn't
add to clarity.
Bug: none
Change-Id: Iaaf7b21dbf3345ee90fee22c39b636823d195eb0
Reviewed-on: https://webrtc-review.googlesource.com/48361
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21929}
This CL adds a GN build flag to include builtin software codecs
(enabled by default).
When setting the flag to false, libvpx can also be excluded. The
benefit is that the resulting binary is smaller.
Replaces https://webrtc-review.googlesource.com/c/src/+/29203
Bug: webrtc:7925
Change-Id: Id330ea8a43169e449ee139eca18e4557cc932e10
Reviewed-on: https://webrtc-review.googlesource.com/36340
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21818}
VideoSourceInterface is clearly an integral part of
mediastreaminterface.h already, so moving that interface to api makes
sense. This also resolves a circular dependency in call/.
Bug: webrc:6828
Change-Id: Ic1862f118363b0b55a235a9c0c35d9adc647184c
Reviewed-on: https://webrtc-review.googlesource.com/37500
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21498}
I updated some dependency enforcement rules to allow examples and pc
to depend on common_video. I reckoned depending on common_video is
not controversial when they already dependend on media/base, which
is a lower-level abstraction.
Bug: webrtc:6828
Change-Id: I77dbeb10187b4e70dda1d873a29994fa76070758
Reviewed-on: https://webrtc-review.googlesource.com/34187
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21495}
OnTransportOverChanged is merged into OnNetworkRouteChanged in MediaChannel
because the transport overhead will be added to rtc::NetworkRoute structure.
This CL depends on https://webrtc-review.googlesource.com/c/src/+/13520
Bug: None
Change-Id: I6ed6583f6c91db4ce61a89406de39774239f3a04
Reviewed-on: https://webrtc-review.googlesource.com/15200
Commit-Queue: Zhi Huang <zhihuang@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20678}
This reverts commit a7678667fc726979ca27d2429689d5735cca425d.
Reason for reland: Fix initializer list constructor.
Original change's description:
> Revert "Add helper functions for migrating to new video codec factories"
>
> This reverts commit 1c9623c70db42550d152c127e01434004087f743.
>
> Reason for revert: Breaks brace initialization:
>
> cricket::VideoDecoderParams params = { "deadbeef" };
>
> I suggest adding an initializer list constructor.
>
> Original change's description:
> > Add helper functions for migrating to new video codec factories
> >
> > This CL adds helper functions in media/engine/convert_legacy_video_factory.h to
> > convert from the old WebRtcVideoEncoder and WebRtcVideoDecoder to the new
> > webrtc::VideoEncoder and webrtc::VideoDecoder.
> >
> > The purpose is to make it as easy as possible for clients to migrate to the new
> > API and allow us to stop depending on the internal SW codecs as soon as possible.
> >
> > There still exists an ugly decoder adapter class in the video engine. The reason
> > is that we need to continue to pass in the |receive_stream_id| decoder params to
> > some legacy clients.
> >
> > Bug: webrtc:7925
> > Change-Id: I43ff03e036411a85d4940fe517a34489f171d698
> > Reviewed-on: https://webrtc-review.googlesource.com/15181
> > Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> > Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#20475}
>
> TBR=magjed@webrtc.org,andersc@webrtc.org
>
> Change-Id: I0d1084dc86979fbca748d9ba287d1db3dbe52b44
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: webrtc:7925
> Reviewed-on: https://webrtc-review.googlesource.com/17160
> Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
> Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20486}
TBR=deadbeef@webrtc.org,magjed@webrtc.org,andersc@webrtc.org
Change-Id: Ic825d133b6e1c6e5aad811ba528751dd5ed85e67
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/17360
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20501}
This reverts commit 1c9623c70db42550d152c127e01434004087f743.
Reason for revert: Breaks brace initialization:
cricket::VideoDecoderParams params = { "deadbeef" };
I suggest adding an initializer list constructor.
Original change's description:
> Add helper functions for migrating to new video codec factories
>
> This CL adds helper functions in media/engine/convert_legacy_video_factory.h to
> convert from the old WebRtcVideoEncoder and WebRtcVideoDecoder to the new
> webrtc::VideoEncoder and webrtc::VideoDecoder.
>
> The purpose is to make it as easy as possible for clients to migrate to the new
> API and allow us to stop depending on the internal SW codecs as soon as possible.
>
> There still exists an ugly decoder adapter class in the video engine. The reason
> is that we need to continue to pass in the |receive_stream_id| decoder params to
> some legacy clients.
>
> Bug: webrtc:7925
> Change-Id: I43ff03e036411a85d4940fe517a34489f171d698
> Reviewed-on: https://webrtc-review.googlesource.com/15181
> Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
> Reviewed-by: Anders Carlsson <andersc@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#20475}
TBR=magjed@webrtc.org,andersc@webrtc.org
Change-Id: I0d1084dc86979fbca748d9ba287d1db3dbe52b44
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:7925
Reviewed-on: https://webrtc-review.googlesource.com/17160
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Taylor Brandstetter <deadbeef@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20486}
This CL adds helper functions in media/engine/convert_legacy_video_factory.h to
convert from the old WebRtcVideoEncoder and WebRtcVideoDecoder to the new
webrtc::VideoEncoder and webrtc::VideoDecoder.
The purpose is to make it as easy as possible for clients to migrate to the new
API and allow us to stop depending on the internal SW codecs as soon as possible.
There still exists an ugly decoder adapter class in the video engine. The reason
is that we need to continue to pass in the |receive_stream_id| decoder params to
some legacy clients.
Bug: webrtc:7925
Change-Id: I43ff03e036411a85d4940fe517a34489f171d698
Reviewed-on: https://webrtc-review.googlesource.com/15181
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20475}
The video codec factories should be owned by the video engine instead
of by the PeerConnectionFactory.
Bug: None
Change-Id: If63d47cef565138d51377af3fc9ea973950c9390
Reviewed-on: https://webrtc-review.googlesource.com/1601
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20002}
In https://webrtc-review.googlesource.com/c/src/+/1560 we moved WebRTC
from src/webrtc to src/ (in order to preserve an healthy git history).
This CL takes care of fixing header guards, #include paths, etc...
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org
Bug: chromium:611808
Change-Id: Iea91618212bee0af16aa3f05071eab8f93706578
Reviewed-on: https://webrtc-review.googlesource.com/1561
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19846}
In order to eliminate the WebRTC Subtree mirror in Chromium,
WebRTC is moving the content of the src/webrtc directory up
to the src/ directory.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org
Bug: chromium:611808
Change-Id: Iac59c5b51b950f174119565bac87955a7994bc38
Reviewed-on: https://webrtc-review.googlesource.com/1560
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19845}