OLD | NEW |
---|---|
1 /* | 1 /* |
2 * libjingle | 2 * libjingle |
3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
(...skipping 13 matching lines...) Expand all Loading... | |
24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | 24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF |
25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
26 */ | 26 */ |
27 | 27 |
28 #ifndef TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ | 28 #ifndef TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ |
29 #define TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ | 29 #define TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ |
30 | 30 |
31 #include <string> | 31 #include <string> |
32 | 32 |
33 #include "talk/app/webrtc/dtlsidentitystore.h" | 33 #include "talk/app/webrtc/dtlsidentitystore.h" |
34 #include "talk/app/webrtc/mediacontroller.h" | |
34 #include "talk/app/webrtc/mediastreaminterface.h" | 35 #include "talk/app/webrtc/mediastreaminterface.h" |
35 #include "talk/app/webrtc/peerconnectioninterface.h" | 36 #include "talk/app/webrtc/peerconnectioninterface.h" |
36 #include "talk/session/media/channelmanager.h" | 37 #include "talk/session/media/channelmanager.h" |
37 #include "webrtc/base/scoped_ptr.h" | 38 #include "webrtc/base/scoped_ptr.h" |
38 #include "webrtc/base/scoped_ref_ptr.h" | 39 #include "webrtc/base/scoped_ref_ptr.h" |
39 #include "webrtc/base/thread.h" | 40 #include "webrtc/base/thread.h" |
40 | 41 |
41 namespace webrtc { | 42 namespace webrtc { |
42 | 43 |
43 typedef rtc::RefCountedObject<DtlsIdentityStoreImpl> | 44 typedef rtc::RefCountedObject<DtlsIdentityStoreImpl> |
(...skipping 29 matching lines...) Expand all Loading... | |
73 rtc::scoped_refptr<VideoTrackInterface> | 74 rtc::scoped_refptr<VideoTrackInterface> |
74 CreateVideoTrack(const std::string& id, | 75 CreateVideoTrack(const std::string& id, |
75 VideoSourceInterface* video_source) override; | 76 VideoSourceInterface* video_source) override; |
76 | 77 |
77 rtc::scoped_refptr<AudioTrackInterface> | 78 rtc::scoped_refptr<AudioTrackInterface> |
78 CreateAudioTrack(const std::string& id, | 79 CreateAudioTrack(const std::string& id, |
79 AudioSourceInterface* audio_source) override; | 80 AudioSourceInterface* audio_source) override; |
80 | 81 |
81 bool StartAecDump(rtc::PlatformFile file) override; | 82 bool StartAecDump(rtc::PlatformFile file) override; |
82 | 83 |
83 virtual cricket::ChannelManager* channel_manager(); | 84 virtual webrtc::MediaControllerInterface* media_controller() const; |
84 virtual rtc::Thread* signaling_thread(); | 85 virtual rtc::Thread* signaling_thread(); |
85 virtual rtc::Thread* worker_thread(); | 86 virtual rtc::Thread* worker_thread(); |
86 const Options& options() const { return options_; } | 87 const Options& options() const { return options_; } |
87 | 88 |
88 protected: | 89 protected: |
89 PeerConnectionFactory(); | 90 PeerConnectionFactory(); |
90 PeerConnectionFactory( | 91 PeerConnectionFactory( |
91 rtc::Thread* worker_thread, | 92 rtc::Thread* worker_thread, |
92 rtc::Thread* signaling_thread, | 93 rtc::Thread* signaling_thread, |
93 AudioDeviceModule* default_adm, | 94 AudioDeviceModule* default_adm, |
94 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, | 95 cricket::WebRtcVideoEncoderFactory* video_encoder_factory, |
95 cricket::WebRtcVideoDecoderFactory* video_decoder_factory); | 96 cricket::WebRtcVideoDecoderFactory* video_decoder_factory); |
96 virtual ~PeerConnectionFactory(); | 97 virtual ~PeerConnectionFactory(); |
97 | 98 |
98 private: | 99 private: |
99 cricket::MediaEngineInterface* CreateMediaEngine_w(); | 100 cricket::MediaEngineInterface* CreateMediaEngine_w(); |
100 | 101 |
101 bool owns_ptrs_; | 102 bool owns_ptrs_; |
102 bool wraps_current_thread_; | 103 bool wraps_current_thread_; |
103 rtc::Thread* signaling_thread_; | 104 rtc::Thread* signaling_thread_; |
104 rtc::Thread* worker_thread_; | 105 rtc::Thread* worker_thread_; |
105 Options options_; | 106 Options options_; |
106 rtc::scoped_refptr<PortAllocatorFactoryInterface> default_allocator_factory_; | 107 rtc::scoped_refptr<PortAllocatorFactoryInterface> default_allocator_factory_; |
107 // External Audio device used for audio playback. | 108 // External Audio device used for audio playback. |
108 rtc::scoped_refptr<AudioDeviceModule> default_adm_; | 109 rtc::scoped_refptr<AudioDeviceModule> default_adm_; |
109 rtc::scoped_ptr<cricket::ChannelManager> channel_manager_; | 110 rtc::scoped_ptr<cricket::ChannelManager> channel_manager_; |
111 rtc::scoped_ptr<webrtc::MediaControllerInterface> media_controller_; | |
pthatcher1
2015/10/13 05:31:13
I think there's a problem here. A MediaController
stefan-webrtc
2015/10/13 08:09:20
Yes, sorry about that... I must have stopped think
| |
110 // External Video encoder factory. This can be NULL if the client has not | 112 // External Video encoder factory. This can be NULL if the client has not |
111 // injected any. In that case, video engine will use the internal SW encoder. | 113 // injected any. In that case, video engine will use the internal SW encoder. |
112 rtc::scoped_ptr<cricket::WebRtcVideoEncoderFactory> | 114 rtc::scoped_ptr<cricket::WebRtcVideoEncoderFactory> |
113 video_encoder_factory_; | 115 video_encoder_factory_; |
114 // External Video decoder factory. This can be NULL if the client has not | 116 // External Video decoder factory. This can be NULL if the client has not |
115 // injected any. In that case, video engine will use the internal SW decoder. | 117 // injected any. In that case, video engine will use the internal SW decoder. |
116 rtc::scoped_ptr<cricket::WebRtcVideoDecoderFactory> | 118 rtc::scoped_ptr<cricket::WebRtcVideoDecoderFactory> |
117 video_decoder_factory_; | 119 video_decoder_factory_; |
118 | 120 |
119 rtc::scoped_refptr<RefCountedDtlsIdentityStore> dtls_identity_store_; | 121 rtc::scoped_refptr<RefCountedDtlsIdentityStore> dtls_identity_store_; |
120 }; | 122 }; |
121 | 123 |
122 } // namespace webrtc | 124 } // namespace webrtc |
123 | 125 |
124 #endif // TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ | 126 #endif // TALK_APP_WEBRTC_PEERCONNECTIONFACTORY_H_ |
OLD | NEW |