Allow external audio device module to be passed in to the objc peer connection factory interface.
Bug: webrtc:8466 Change-Id: I87091cb32206f5f3bed310ec23963bcc053c59db Reviewed-on: https://webrtc-review.googlesource.com/16734 Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Reviewed-by: Henrik Andreassson <henrika@webrtc.org> Commit-Queue: Sean Rosenbaum <srosenba@google.com> Cr-Commit-Position: refs/heads/master@{#20479}
This commit is contained in:
parent
828cf2443d
commit
e5c4265619
@ -14,6 +14,7 @@
|
||||
|
||||
namespace webrtc {
|
||||
|
||||
class AudioDeviceModule;
|
||||
class AudioEncoderFactory;
|
||||
class AudioDecoderFactory;
|
||||
class VideoEncoderFactory;
|
||||
@ -48,7 +49,9 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
nativeVideoEncoderFactory:
|
||||
(std::unique_ptr<webrtc::VideoEncoderFactory>)videoEncoderFactory
|
||||
nativeVideoDecoderFactory:
|
||||
(std::unique_ptr<webrtc::VideoDecoderFactory>)videoDecoderFactory;
|
||||
(std::unique_ptr<webrtc::VideoDecoderFactory>)videoDecoderFactory
|
||||
audioDeviceModule:
|
||||
(nullable webrtc::AudioDeviceModule *)audioDeviceModule;
|
||||
|
||||
/* Initialize object with legacy injectable native audio/video encoder/decoder factories
|
||||
TODO(andersc): Remove this when backwards compatiblity is no longer needed.
|
||||
@ -59,7 +62,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
nativeAudioDecoderFactory:
|
||||
(rtc::scoped_refptr<webrtc::AudioDecoderFactory>)audioDecoderFactory
|
||||
legacyNativeVideoEncoderFactory:(cricket::WebRtcVideoEncoderFactory*)videoEncoderFactory
|
||||
legacyNativeVideoDecoderFactory:(cricket::WebRtcVideoDecoderFactory*)videoDecoderFactory;
|
||||
legacyNativeVideoDecoderFactory:(cricket::WebRtcVideoDecoderFactory*)videoDecoderFactory
|
||||
audioDeviceModule:(nullable webrtc::AudioDeviceModule *)audioDeviceModule;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@ -61,7 +61,9 @@
|
||||
legacyNativeVideoEncoderFactory:new webrtc::ObjCVideoEncoderFactory(
|
||||
[[RTCVideoEncoderFactoryH264 alloc] init])
|
||||
legacyNativeVideoDecoderFactory:new webrtc::ObjCVideoDecoderFactory(
|
||||
[[RTCVideoDecoderFactoryH264 alloc] init])];
|
||||
[[RTCVideoDecoderFactoryH264 alloc] init])
|
||||
audioDeviceModule:nullptr];
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -81,7 +83,8 @@
|
||||
return [self initWithNativeAudioEncoderFactory:webrtc::CreateBuiltinAudioEncoderFactory()
|
||||
nativeAudioDecoderFactory:webrtc::CreateBuiltinAudioDecoderFactory()
|
||||
nativeVideoEncoderFactory:std::move(native_encoder_factory)
|
||||
nativeVideoDecoderFactory:std::move(native_decoder_factory)];
|
||||
nativeVideoDecoderFactory:std::move(native_decoder_factory)
|
||||
audioDeviceModule:nullptr];
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -123,7 +126,9 @@
|
||||
nativeVideoEncoderFactory:
|
||||
(std::unique_ptr<webrtc::VideoEncoderFactory>)videoEncoderFactory
|
||||
nativeVideoDecoderFactory:
|
||||
(std::unique_ptr<webrtc::VideoDecoderFactory>)videoDecoderFactory {
|
||||
(std::unique_ptr<webrtc::VideoDecoderFactory>)videoDecoderFactory
|
||||
audioDeviceModule:
|
||||
(nullable webrtc::AudioDeviceModule *)audioDeviceModule {
|
||||
#ifdef HAVE_NO_MEDIA
|
||||
return [self initWithNoMedia];
|
||||
#else
|
||||
@ -131,7 +136,7 @@
|
||||
_nativeFactory = webrtc::CreatePeerConnectionFactory(_networkThread.get(),
|
||||
_workerThread.get(),
|
||||
_signalingThread.get(),
|
||||
nullptr, // audio device module
|
||||
audioDeviceModule,
|
||||
audioEncoderFactory,
|
||||
audioDecoderFactory,
|
||||
std::move(videoEncoderFactory),
|
||||
@ -151,7 +156,8 @@
|
||||
nativeAudioDecoderFactory:
|
||||
(rtc::scoped_refptr<webrtc::AudioDecoderFactory>)audioDecoderFactory
|
||||
legacyNativeVideoEncoderFactory:(cricket::WebRtcVideoEncoderFactory *)videoEncoderFactory
|
||||
legacyNativeVideoDecoderFactory:(cricket::WebRtcVideoDecoderFactory *)videoDecoderFactory {
|
||||
legacyNativeVideoDecoderFactory:(cricket::WebRtcVideoDecoderFactory *)videoDecoderFactory
|
||||
audioDeviceModule:(nullable webrtc::AudioDeviceModule *)audioDeviceModule {
|
||||
#ifdef HAVE_NO_MEDIA
|
||||
return [self initWithNoMedia];
|
||||
#else
|
||||
@ -159,7 +165,7 @@
|
||||
_nativeFactory = webrtc::CreatePeerConnectionFactory(_networkThread.get(),
|
||||
_workerThread.get(),
|
||||
_signalingThread.get(),
|
||||
nullptr, // audio device module
|
||||
audioDeviceModule,
|
||||
audioEncoderFactory,
|
||||
audioDecoderFactory,
|
||||
videoEncoderFactory,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user