Index: webrtc/pc/peerconnectionfactory.cc |
diff --git a/webrtc/pc/peerconnectionfactory.cc b/webrtc/pc/peerconnectionfactory.cc |
index 2c3dd11fee43c08a7e1d5b4ba78527f7b941372d..071180bd02c1b613bf68044b401284dc0d4b7a7e 100644 |
--- a/webrtc/pc/peerconnectionfactory.cc |
+++ b/webrtc/pc/peerconnectionfactory.cc |
@@ -56,8 +56,14 @@ rtc::scoped_refptr<PeerConnectionFactoryInterface> CreatePeerConnectionFactory( |
rtc::scoped_refptr<PeerConnectionFactoryInterface> |
CreatePeerConnectionFactory() { |
- return CreatePeerConnectionFactory(CreateBuiltinAudioEncoderFactory(), |
- CreateBuiltinAudioDecoderFactory()); |
+ rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory; |
+ rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory; |
+#ifdef HAVE_MEDIA |
+ audio_encoder_factory = CreateBuiltinAudioEncoderFactory(); |
+ audio_decoder_factory = CreateBuiltinAudioDecoderFactory(); |
+#endif |
+ return CreatePeerConnectionFactory(audio_encoder_factory, |
+ audio_decoder_factory); |
} |
rtc::scoped_refptr<PeerConnectionFactoryInterface> CreatePeerConnectionFactory( |
@@ -125,10 +131,16 @@ CreatePeerConnectionFactoryWithAudioMixer( |
cricket::WebRtcVideoEncoderFactory* encoder_factory, |
cricket::WebRtcVideoDecoderFactory* decoder_factory, |
rtc::scoped_refptr<AudioMixer> audio_mixer) { |
+ rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory; |
+ rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory; |
+#ifdef HAVE_MEDIA |
+ audio_encoder_factory = CreateBuiltinAudioEncoderFactory(); |
+ audio_decoder_factory = CreateBuiltinAudioDecoderFactory(); |
+#endif |
return CreatePeerConnectionFactoryWithAudioMixer( |
network_thread, worker_thread, signaling_thread, default_adm, |
- CreateBuiltinAudioEncoderFactory(), CreateBuiltinAudioDecoderFactory(), |
- encoder_factory, decoder_factory, audio_mixer); |
+ audio_encoder_factory, audio_decoder_factory, encoder_factory, |
+ decoder_factory, audio_mixer); |
} |
PeerConnectionFactory::PeerConnectionFactory( |
@@ -389,12 +401,15 @@ rtc::Thread* PeerConnectionFactory::network_thread() { |
std::unique_ptr<cricket::MediaEngineInterface> |
PeerConnectionFactory::CreateMediaEngine_w() { |
RTC_DCHECK(worker_thread_ == rtc::Thread::Current()); |
+#ifdef HAVE_MEDIA |
return std::unique_ptr<cricket::MediaEngineInterface>( |
cricket::WebRtcMediaEngineFactory::Create( |
- default_adm_.get(), audio_encoder_factory_, |
- audio_decoder_factory_, |
+ default_adm_.get(), audio_encoder_factory_, audio_decoder_factory_, |
video_encoder_factory_.get(), video_decoder_factory_.get(), |
external_audio_mixer_)); |
+#else |
+ return std::unique_ptr<cricket::MediaEngineInterface>(); |
+#endif |
} |
} // namespace webrtc |