Add support for injecting VideoBitrateAllocatorFactory also on IOS

This patch exposes webrtc::PeerConnectionDependencies c++-object
and makes it possible to supply one when creating a PeerConnection.

This makes it possible to e.g inject a VideoBitrateAllocatorFactory.

Bug: webrtc:10547
Change-Id: Ib7431bdcec1380e7903dc5f66f3583501aeab0a5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/168307
Commit-Queue: Jonas Oreland <jonaso@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#30480}
This commit is contained in:
Jonas Oreland
2020-02-07 10:30:08 +01:00
committed by Commit Bot
parent 56e611bbda
commit 285f83d47b
5 changed files with 90 additions and 8 deletions

View File

@ -22,6 +22,7 @@ class NetworkControllerFactoryInterface;
class VideoEncoderFactory;
class VideoDecoderFactory;
class AudioProcessing;
struct PeerConnectionDependencies;
} // namespace webrtc
@ -87,6 +88,16 @@ NS_ASSUME_NONNULL_BEGIN
decoderFactory:(nullable id<RTCVideoDecoderFactory>)decoderFactory
mediaTransportFactory:
(std::unique_ptr<webrtc::MediaTransportFactory>)mediaTransportFactory;
/** Initialize an RTCPeerConnection with a configuration, constraints, and
* dependencies.
*/
- (RTCPeerConnection *)
peerConnectionWithDependencies:(RTCConfiguration *)configuration
constraints:(RTCMediaConstraints *)constraints
dependencies:(std::unique_ptr<webrtc::PeerConnectionDependencies>)dependencies
delegate:(nullable id<RTCPeerConnectionDelegate>)delegate;
@end
NS_ASSUME_NONNULL_END