Chromium Code Reviews| 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()); |
| } |