OLD | NEW |
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 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
79 class Thread; | 79 class Thread; |
80 } | 80 } |
81 | 81 |
82 namespace cricket { | 82 namespace cricket { |
83 class WebRtcVideoDecoderFactory; | 83 class WebRtcVideoDecoderFactory; |
84 class WebRtcVideoEncoderFactory; | 84 class WebRtcVideoEncoderFactory; |
85 } | 85 } |
86 | 86 |
87 namespace webrtc { | 87 namespace webrtc { |
88 class AudioDeviceModule; | 88 class AudioDeviceModule; |
| 89 class AudioMixer; |
89 class MediaConstraintsInterface; | 90 class MediaConstraintsInterface; |
90 | 91 |
91 // MediaStream container interface. | 92 // MediaStream container interface. |
92 class StreamCollectionInterface : public rtc::RefCountInterface { | 93 class StreamCollectionInterface : public rtc::RefCountInterface { |
93 public: | 94 public: |
94 // TODO(ronghuawu): Update the function names to c++ style, e.g. find -> Find. | 95 // TODO(ronghuawu): Update the function names to c++ style, e.g. find -> Find. |
95 virtual size_t count() = 0; | 96 virtual size_t count() = 0; |
96 virtual MediaStreamInterface* at(size_t index) = 0; | 97 virtual MediaStreamInterface* at(size_t index) = 0; |
97 virtual MediaStreamInterface* find(const std::string& label) = 0; | 98 virtual MediaStreamInterface* find(const std::string& label) = 0; |
98 virtual MediaStreamTrackInterface* FindAudioTrack( | 99 virtual MediaStreamTrackInterface* FindAudioTrack( |
(...skipping 653 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
752 // If non-null, ownership of |default_adm|, |encoder_factory| and | 753 // If non-null, ownership of |default_adm|, |encoder_factory| and |
753 // |decoder_factory| are transferred to the returned factory. | 754 // |decoder_factory| are transferred to the returned factory. |
754 rtc::scoped_refptr<PeerConnectionFactoryInterface> CreatePeerConnectionFactory( | 755 rtc::scoped_refptr<PeerConnectionFactoryInterface> CreatePeerConnectionFactory( |
755 rtc::Thread* network_thread, | 756 rtc::Thread* network_thread, |
756 rtc::Thread* worker_thread, | 757 rtc::Thread* worker_thread, |
757 rtc::Thread* signaling_thread, | 758 rtc::Thread* signaling_thread, |
758 AudioDeviceModule* default_adm, | 759 AudioDeviceModule* default_adm, |
759 cricket::WebRtcVideoEncoderFactory* encoder_factory, | 760 cricket::WebRtcVideoEncoderFactory* encoder_factory, |
760 cricket::WebRtcVideoDecoderFactory* decoder_factory); | 761 cricket::WebRtcVideoDecoderFactory* decoder_factory); |
761 | 762 |
| 763 // Create a new instance of PeerConnectionFactoryInterface with external audio |
| 764 // mixer. |
| 765 // |
| 766 // If |audio_mixer| is null, an internal audio mixer will be created and used. |
| 767 rtc::scoped_refptr<PeerConnectionFactoryInterface> |
| 768 CreatePeerConnectionFactoryWithAudioMixer( |
| 769 rtc::Thread* network_thread, |
| 770 rtc::Thread* worker_thread, |
| 771 rtc::Thread* signaling_thread, |
| 772 AudioDeviceModule* default_adm, |
| 773 cricket::WebRtcVideoEncoderFactory* encoder_factory, |
| 774 cricket::WebRtcVideoDecoderFactory* decoder_factory, |
| 775 rtc::scoped_refptr<AudioMixer> audio_mixer); |
| 776 |
762 // Create a new instance of PeerConnectionFactoryInterface. | 777 // Create a new instance of PeerConnectionFactoryInterface. |
763 // Same thread is used as worker and network thread. | 778 // Same thread is used as worker and network thread. |
764 inline rtc::scoped_refptr<PeerConnectionFactoryInterface> | 779 inline rtc::scoped_refptr<PeerConnectionFactoryInterface> |
765 CreatePeerConnectionFactory( | 780 CreatePeerConnectionFactory( |
766 rtc::Thread* worker_and_network_thread, | 781 rtc::Thread* worker_and_network_thread, |
767 rtc::Thread* signaling_thread, | 782 rtc::Thread* signaling_thread, |
768 AudioDeviceModule* default_adm, | 783 AudioDeviceModule* default_adm, |
769 cricket::WebRtcVideoEncoderFactory* encoder_factory, | 784 cricket::WebRtcVideoEncoderFactory* encoder_factory, |
770 cricket::WebRtcVideoDecoderFactory* decoder_factory) { | 785 cricket::WebRtcVideoDecoderFactory* decoder_factory) { |
771 return CreatePeerConnectionFactory( | 786 return CreatePeerConnectionFactory( |
772 worker_and_network_thread, worker_and_network_thread, signaling_thread, | 787 worker_and_network_thread, worker_and_network_thread, signaling_thread, |
773 default_adm, encoder_factory, decoder_factory); | 788 default_adm, encoder_factory, decoder_factory); |
774 } | 789 } |
775 | 790 |
776 } // namespace webrtc | 791 } // namespace webrtc |
777 | 792 |
778 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_ | 793 #endif // WEBRTC_API_PEERCONNECTIONINTERFACE_H_ |
OLD | NEW |