Chromium Code Reviews| Index: webrtc/pc/mediafactory.cc |
| diff --git a/webrtc/pc/mediafactory.cc b/webrtc/pc/mediafactory.cc |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..6265ee014781ce6bd60fceeff2bb161123e41c45 |
| --- /dev/null |
| +++ b/webrtc/pc/mediafactory.cc |
| @@ -0,0 +1,50 @@ |
| +/* |
| + * Copyright 2017 The WebRTC project authors. All Rights Reserved. |
| + * |
| + * Use of this source code is governed by a BSD-style license |
| + * that can be found in the LICENSE file in the root of the source |
| + * tree. An additional intellectual property rights grant can be found |
| + * in the file PATENTS. All contributing project authors may |
| + * be found in the AUTHORS file in the root of the source tree. |
| + */ |
| + |
| +#include "webrtc/call/call.h" |
| +#include "webrtc/logging/rtc_event_log/rtc_event_log.h" |
| +#include "webrtc/media/engine/webrtcmediaengine.h" |
| + |
| +namespace webrtc { |
| +class AudioDecoderFactory; |
| +class AudioDeviceModule; |
| +class AudioMixer; |
| +} |
| +namespace cricket { |
| +class WebRtcVideoDecoderFactory; |
| +class WebRtcVideoEncoderFactory; |
| +} |
| + |
| +namespace webrtc { |
| + |
| +std::unique_ptr<cricket::MediaEngineInterface> CreateMediaEngine( |
| + webrtc::AudioDeviceModule* adm, |
| + const rtc::scoped_refptr<webrtc::AudioEncoderFactory>& |
| + audio_encoder_factory, |
| + const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& |
| + audio_decoder_factory, |
| + cricket::WebRtcVideoEncoderFactory* video_encoder_factory, |
| + cricket::WebRtcVideoDecoderFactory* video_decoder_factory, |
| + rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) { |
| + return std::unique_ptr<cricket::MediaEngineInterface>( |
| + cricket::WebRtcMediaEngineFactory::Create( |
| + adm, audio_encoder_factory, audio_decoder_factory, |
| + video_encoder_factory, video_decoder_factory, audio_mixer)); |
| +} |
| + |
| +std::unique_ptr<RtcEventLog> CreateRtcEventLog() { |
| + return std::unique_ptr<RtcEventLog>(RtcEventLog::Create()); |
| +} |
| + |
| +Call* CreateCall(const Call::Config& config) { |
| + return webrtc::Call::Create(config); |
| +} |
|
Taylor Brandstetter
2017/05/30 17:30:53
I think a level of indirection can be removed here
Zhi Huang
2017/05/31 00:03:29
Done.
|
| + |
| +} // namespace webrtc |