Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(394)

Side by Side Diff: webrtc/media/engine/webrtcmediaengine.cc

Issue 2675173003: Adding "adapter" ORTC objects on top of ChannelManager/BaseChannel/etc. (Closed)
Patch Set: Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 audio_decoder_factory, 46 audio_decoder_factory,
47 audio_mixer) { 47 audio_mixer) {
48 #endif 48 #endif
49 video_.SetExternalDecoderFactory(video_decoder_factory); 49 video_.SetExternalDecoderFactory(video_decoder_factory);
50 video_.SetExternalEncoderFactory(video_encoder_factory); 50 video_.SetExternalEncoderFactory(video_encoder_factory);
51 } 51 }
52 }; 52 };
53 53
54 } // namespace cricket 54 } // namespace cricket
55 55
56 cricket::MediaEngineInterface* CreateWebRtcMediaEngine( 56 std::unique_ptr<cricket::MediaEngineInterface> CreateWebRtcMediaEngine(
57 webrtc::AudioDeviceModule* adm, 57 webrtc::AudioDeviceModule* adm,
58 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& 58 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>&
59 audio_decoder_factory, 59 audio_decoder_factory,
60 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, 60 cricket::WebRtcVideoEncoderFactory* video_encoder_factory,
61 cricket::WebRtcVideoDecoderFactory* video_decoder_factory, 61 cricket::WebRtcVideoDecoderFactory* video_decoder_factory,
62 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) { 62 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) {
63 return new cricket::WebRtcMediaEngine2(adm, audio_decoder_factory, 63 return std::unique_ptr<cricket::MediaEngineInterface>(
64 video_encoder_factory, 64 new cricket::WebRtcMediaEngine2(adm, audio_decoder_factory,
65 video_decoder_factory, audio_mixer); 65 video_encoder_factory,
66 video_decoder_factory, audio_mixer));
66 } 67 }
67 68
68 void DestroyWebRtcMediaEngine(cricket::MediaEngineInterface* media_engine) { 69 void DestroyWebRtcMediaEngine(cricket::MediaEngineInterface* media_engine) {
69 delete media_engine; 70 delete media_engine;
70 } 71 }
71 72
72 namespace cricket { 73 namespace cricket {
73 74
74 // TODO(ossu): Backwards-compatible interface. Will be deprecated once the 75 // TODO(ossu): Backwards-compatible interface. Will be deprecated once the
75 // audio decoder factory is fully plumbed and used throughout WebRTC. 76 // audio decoder factory is fully plumbed and used throughout WebRTC.
76 // See: crbug.com/webrtc/6000 77 // See: crbug.com/webrtc/6000
77 MediaEngineInterface* WebRtcMediaEngineFactory::Create( 78 std::unique_ptr<MediaEngineInterface> WebRtcMediaEngineFactory::Create(
78 webrtc::AudioDeviceModule* adm, 79 webrtc::AudioDeviceModule* adm,
79 WebRtcVideoEncoderFactory* video_encoder_factory, 80 WebRtcVideoEncoderFactory* video_encoder_factory,
80 WebRtcVideoDecoderFactory* video_decoder_factory) { 81 WebRtcVideoDecoderFactory* video_decoder_factory) {
81 return CreateWebRtcMediaEngine( 82 return CreateWebRtcMediaEngine(
82 adm, webrtc::CreateBuiltinAudioDecoderFactory(), video_encoder_factory, 83 adm, webrtc::CreateBuiltinAudioDecoderFactory(), video_encoder_factory,
83 video_decoder_factory, nullptr); 84 video_decoder_factory, nullptr);
84 } 85 }
85 86
86 MediaEngineInterface* WebRtcMediaEngineFactory::Create( 87 std::unique_ptr<MediaEngineInterface> WebRtcMediaEngineFactory::Create(
87 webrtc::AudioDeviceModule* adm, 88 webrtc::AudioDeviceModule* adm,
88 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& 89 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>&
89 audio_decoder_factory, 90 audio_decoder_factory,
90 WebRtcVideoEncoderFactory* video_encoder_factory, 91 WebRtcVideoEncoderFactory* video_encoder_factory,
91 WebRtcVideoDecoderFactory* video_decoder_factory) { 92 WebRtcVideoDecoderFactory* video_decoder_factory) {
92 return CreateWebRtcMediaEngine(adm, audio_decoder_factory, 93 return CreateWebRtcMediaEngine(adm, audio_decoder_factory,
93 video_encoder_factory, video_decoder_factory, 94 video_encoder_factory, video_decoder_factory,
94 nullptr); 95 nullptr);
95 } 96 }
96 97
97 // Used by PeerConnectionFactory to create a media engine passed into 98 // Used by PeerConnectionFactory to create a media engine passed into
98 // ChannelManager. 99 // ChannelManager.
99 MediaEngineInterface* WebRtcMediaEngineFactory::Create( 100 std::unique_ptr<MediaEngineInterface> WebRtcMediaEngineFactory::Create(
100 webrtc::AudioDeviceModule* adm, 101 webrtc::AudioDeviceModule* adm,
101 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& 102 const rtc::scoped_refptr<webrtc::AudioDecoderFactory>&
102 audio_decoder_factory, 103 audio_decoder_factory,
103 WebRtcVideoEncoderFactory* video_encoder_factory, 104 WebRtcVideoEncoderFactory* video_encoder_factory,
104 WebRtcVideoDecoderFactory* video_decoder_factory, 105 WebRtcVideoDecoderFactory* video_decoder_factory,
105 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) { 106 rtc::scoped_refptr<webrtc::AudioMixer> audio_mixer) {
106 return CreateWebRtcMediaEngine(adm, audio_decoder_factory, 107 return CreateWebRtcMediaEngine(adm, audio_decoder_factory,
107 video_encoder_factory, video_decoder_factory, 108 video_encoder_factory, video_decoder_factory,
108 audio_mixer); 109 audio_mixer);
109 } 110 }
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 } 209 }
209 if (codec.GetParam(kCodecParamMaxBitrate, &bitrate_kbps) && 210 if (codec.GetParam(kCodecParamMaxBitrate, &bitrate_kbps) &&
210 bitrate_kbps > 0) { 211 bitrate_kbps > 0) {
211 config.max_bitrate_bps = bitrate_kbps * 1000; 212 config.max_bitrate_bps = bitrate_kbps * 1000;
212 } else { 213 } else {
213 config.max_bitrate_bps = -1; 214 config.max_bitrate_bps = -1;
214 } 215 }
215 return config; 216 return config;
216 } 217 }
217 } // namespace cricket 218 } // namespace cricket
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698