blob: 2441e0cdbe6248aaebb3e88ee409257d44d0efe6 [file] [log] [blame]
Jon Hjellef6c318e2016-01-11 14:39:01 -08001/*
2 * Copyright 2015 The WebRTC project authors. All Rights Reserved.
3 *
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020011#import "RTCVideoSource.h"
Jon Hjellef6c318e2016-01-11 14:39:01 -080012
tkchind4bfbfc2016-08-30 11:56:05 -070013#import "RTCMediaSource+Private.h"
14
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020015#include "api/mediastreaminterface.h"
Jon Hjellef6c318e2016-01-11 14:39:01 -080016
17NS_ASSUME_NONNULL_BEGIN
18
Jon Hjelle065aacc2016-01-20 13:25:44 -080019@interface RTCVideoSource ()
Jon Hjellef6c318e2016-01-11 14:39:01 -080020
21/**
perkja3ede6c2016-03-08 01:27:48 +010022 * The VideoTrackSourceInterface object passed to this RTCVideoSource during
Jon Hjellef6c318e2016-01-11 14:39:01 -080023 * construction.
24 */
Yves Gerey665174f2018-06-19 15:03:05 +020025@property(nonatomic, readonly) rtc::scoped_refptr<webrtc::VideoTrackSourceInterface>
26 nativeVideoSource;
Jon Hjellef6c318e2016-01-11 14:39:01 -080027
perkja3ede6c2016-03-08 01:27:48 +010028/** Initialize an RTCVideoSource from a native VideoTrackSourceInterface. */
Yura Yaroshevich01cee072018-07-11 15:35:40 +030029- (instancetype)initWithFactory:(RTCPeerConnectionFactory *)factory
30 nativeVideoSource:
31 (rtc::scoped_refptr<webrtc::VideoTrackSourceInterface>)nativeVideoSource
Jon Hjellef6c318e2016-01-11 14:39:01 -080032 NS_DESIGNATED_INITIALIZER;
33
Yura Yaroshevich01cee072018-07-11 15:35:40 +030034- (instancetype)initWithFactory:(RTCPeerConnectionFactory *)factory
35 nativeMediaSource:(rtc::scoped_refptr<webrtc::MediaSourceInterface>)nativeMediaSource
36 type:(RTCMediaSourceType)type NS_UNAVAILABLE;
Jon Hjellef6c318e2016-01-11 14:39:01 -080037
Yura Yaroshevich01cee072018-07-11 15:35:40 +030038- (instancetype)initWithFactory:(RTCPeerConnectionFactory *)factory
39 signalingThread:(rtc::Thread *)signalingThread
40 workerThread:(rtc::Thread *)workerThread;
Anders Carlsson9823ee42018-03-07 10:32:03 +010041
Jon Hjellef6c318e2016-01-11 14:39:01 -080042@end
43
44NS_ASSUME_NONNULL_END