Index: webrtc/api/peerconnectionfactory.cc |
diff --git a/webrtc/api/peerconnectionfactory.cc b/webrtc/api/peerconnectionfactory.cc |
index ff8098cd57a277235a9cd72e01823503c740efda..687aa42873febe945fba7959260f6777bf76e4ff 100644 |
--- a/webrtc/api/peerconnectionfactory.cc |
+++ b/webrtc/api/peerconnectionfactory.cc |
@@ -28,6 +28,7 @@ |
#include "webrtc/media/engine/webrtcmediaengine.h" |
#include "webrtc/media/engine/webrtcvideodecoderfactory.h" |
#include "webrtc/media/engine/webrtcvideoencoderfactory.h" |
+#include "webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory.h" |
#include "webrtc/modules/audio_device/include/audio_device.h" |
#include "webrtc/p2p/base/basicpacketsocketfactory.h" |
#include "webrtc/p2p/client/basicportallocator.h" |
@@ -79,14 +80,17 @@ CreatePeerConnectionFactory( |
rtc::Thread* worker_thread, |
rtc::Thread* signaling_thread, |
AudioDeviceModule* default_adm, |
- cricket::WebRtcVideoEncoderFactory* encoder_factory, |
- cricket::WebRtcVideoDecoderFactory* decoder_factory) { |
+ cricket::WebRtcVideoEncoderFactory* video_encoder_factory, |
+ cricket::WebRtcVideoDecoderFactory* video_decoder_factory) { |
rtc::scoped_refptr<PeerConnectionFactory> pc_factory( |
- new rtc::RefCountedObject<PeerConnectionFactory>(worker_thread, |
- signaling_thread, |
- default_adm, |
- encoder_factory, |
- decoder_factory)); |
+ new rtc::RefCountedObject<PeerConnectionFactory>( |
+ worker_thread, |
+ signaling_thread, |
+ default_adm, |
+ std::shared_ptr<AudioDecoderFactory>( |
+ CreateBuiltinAudioDecoderFactory()), |
kwiberg-webrtc
2016/05/17 13:33:48
unique_ptr converts implicitly to shared_ptr, so n
ossu
2016/05/17 14:25:35
Hmm, I've utilized that in other places. Must've h
|
+ video_encoder_factory, |
+ video_decoder_factory)); |
// Call Initialize synchronously but make sure its executed on |
// |signaling_thread|. |
@@ -117,6 +121,7 @@ PeerConnectionFactory::PeerConnectionFactory( |
rtc::Thread* worker_thread, |
rtc::Thread* signaling_thread, |
AudioDeviceModule* default_adm, |
+ std::shared_ptr<webrtc::AudioDecoderFactory> audio_decoder_factory, |
cricket::WebRtcVideoEncoderFactory* video_encoder_factory, |
cricket::WebRtcVideoDecoderFactory* video_decoder_factory) |
: owns_ptrs_(false), |
@@ -124,6 +129,7 @@ PeerConnectionFactory::PeerConnectionFactory( |
signaling_thread_(signaling_thread), |
worker_thread_(worker_thread), |
default_adm_(default_adm), |
+ audio_decoder_factory_(std::move(audio_decoder_factory)), |
video_encoder_factory_(video_encoder_factory), |
video_decoder_factory_(video_decoder_factory) { |
ASSERT(worker_thread != NULL); |
@@ -339,7 +345,9 @@ rtc::Thread* PeerConnectionFactory::worker_thread() { |
cricket::MediaEngineInterface* PeerConnectionFactory::CreateMediaEngine_w() { |
ASSERT(worker_thread_ == rtc::Thread::Current()); |
return cricket::WebRtcMediaEngineFactory::Create( |
- default_adm_.get(), video_encoder_factory_.get(), |
+ default_adm_.get(), |
+ audio_decoder_factory_, |
+ video_encoder_factory_.get(), |
video_decoder_factory_.get()); |
} |