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

Side by Side Diff: webrtc/api/peerconnectioninterface.h

Issue 3004353002: Expose new video codec factories in the PeerConnectionFactory API (Closed)
Patch Set: Created 3 years, 3 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 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2012 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 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 class MediaEngineInterface; 105 class MediaEngineInterface;
106 class WebRtcVideoDecoderFactory; 106 class WebRtcVideoDecoderFactory;
107 class WebRtcVideoEncoderFactory; 107 class WebRtcVideoEncoderFactory;
108 } 108 }
109 109
110 namespace webrtc { 110 namespace webrtc {
111 class AudioDeviceModule; 111 class AudioDeviceModule;
112 class AudioMixer; 112 class AudioMixer;
113 class CallFactoryInterface; 113 class CallFactoryInterface;
114 class MediaConstraintsInterface; 114 class MediaConstraintsInterface;
115 class VideoDecoderFactory;
116 class VideoEncoderFactory;
115 117
116 // MediaStream container interface. 118 // MediaStream container interface.
117 class StreamCollectionInterface : public rtc::RefCountInterface { 119 class StreamCollectionInterface : public rtc::RefCountInterface {
118 public: 120 public:
119 // TODO(ronghuawu): Update the function names to c++ style, e.g. find -> Find. 121 // TODO(ronghuawu): Update the function names to c++ style, e.g. find -> Find.
120 virtual size_t count() = 0; 122 virtual size_t count() = 0;
121 virtual MediaStreamInterface* at(size_t index) = 0; 123 virtual MediaStreamInterface* at(size_t index) = 0;
122 virtual MediaStreamInterface* find(const std::string& label) = 0; 124 virtual MediaStreamInterface* find(const std::string& label) = 0;
123 virtual MediaStreamTrackInterface* FindAudioTrack( 125 virtual MediaStreamTrackInterface* FindAudioTrack(
124 const std::string& id) = 0; 126 const std::string& id) = 0;
(...skipping 981 matching lines...) Expand 10 before | Expand all | Expand 10 after
1106 rtc::Thread* worker_thread, 1108 rtc::Thread* worker_thread,
1107 rtc::Thread* signaling_thread, 1109 rtc::Thread* signaling_thread,
1108 AudioDeviceModule* default_adm, 1110 AudioDeviceModule* default_adm,
1109 rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory, 1111 rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory,
1110 rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory, 1112 rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory,
1111 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, 1113 cricket::WebRtcVideoEncoderFactory* video_encoder_factory,
1112 cricket::WebRtcVideoDecoderFactory* video_decoder_factory, 1114 cricket::WebRtcVideoDecoderFactory* video_decoder_factory,
1113 rtc::scoped_refptr<AudioMixer> audio_mixer, 1115 rtc::scoped_refptr<AudioMixer> audio_mixer,
1114 rtc::scoped_refptr<AudioProcessing> audio_processing); 1116 rtc::scoped_refptr<AudioProcessing> audio_processing);
1115 1117
1118 // Create a new instance of PeerConnectionFactoryInterface with optional video
1119 // codec factories. These video factories represents all video codecs, i.e. no
1120 // extra internal video codecs will be added.
1121 rtc::scoped_refptr<PeerConnectionFactoryInterface> CreatePeerConnectionFactory(
1122 rtc::Thread* network_thread,
1123 rtc::Thread* worker_thread,
1124 rtc::Thread* signaling_thread,
1125 rtc::scoped_refptr<AudioDeviceModule> default_adm,
1126 rtc::scoped_refptr<AudioEncoderFactory> audio_encoder_factory,
1127 rtc::scoped_refptr<AudioDecoderFactory> audio_decoder_factory,
1128 std::unique_ptr<VideoEncoderFactory> video_encoder_factory,
1129 std::unique_ptr<VideoDecoderFactory> video_decoder_factory,
1130 rtc::scoped_refptr<AudioMixer> audio_mixer,
1131 rtc::scoped_refptr<AudioProcessing> audio_processing);
Taylor Brandstetter 2017/09/15 00:42:51 nit: Maybe it's time to make a struct that contain
magjed_webrtc 2017/09/15 13:39:16 I totally agree, these create functions are obviou
1132
1116 // Create a new instance of PeerConnectionFactoryInterface with external audio 1133 // Create a new instance of PeerConnectionFactoryInterface with external audio
1117 // mixer. 1134 // mixer.
1118 // 1135 //
1119 // If |audio_mixer| is null, an internal audio mixer will be created and used. 1136 // If |audio_mixer| is null, an internal audio mixer will be created and used.
1120 rtc::scoped_refptr<PeerConnectionFactoryInterface> 1137 rtc::scoped_refptr<PeerConnectionFactoryInterface>
1121 CreatePeerConnectionFactoryWithAudioMixer( 1138 CreatePeerConnectionFactoryWithAudioMixer(
1122 rtc::Thread* network_thread, 1139 rtc::Thread* network_thread,
1123 rtc::Thread* worker_thread, 1140 rtc::Thread* worker_thread,
1124 rtc::Thread* signaling_thread, 1141 rtc::Thread* signaling_thread,
1125 AudioDeviceModule* default_adm, 1142 AudioDeviceModule* default_adm,
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
1215 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, 1232 cricket::WebRtcVideoEncoderFactory* video_encoder_factory,
1216 cricket::WebRtcVideoDecoderFactory* video_decoder_factory, 1233 cricket::WebRtcVideoDecoderFactory* video_decoder_factory,
1217 rtc::scoped_refptr<AudioMixer> audio_mixer, 1234 rtc::scoped_refptr<AudioMixer> audio_mixer,
1218 std::unique_ptr<cricket::MediaEngineInterface> media_engine, 1235 std::unique_ptr<cricket::MediaEngineInterface> media_engine,
1219 std::unique_ptr<CallFactoryInterface> call_factory, 1236 std::unique_ptr<CallFactoryInterface> call_factory,
1220 std::unique_ptr<RtcEventLogFactoryInterface> event_log_factory); 1237 std::unique_ptr<RtcEventLogFactoryInterface> event_log_factory);
1221 1238
1222 } // namespace webrtc 1239 } // namespace webrtc
1223 1240
1224 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_ 1241 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/media/engine/webrtcmediaengine.h » ('j') | webrtc/pc/createpeerconnectionfactory.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698