blob: 899d7c347800080fb612561167d2fab30ca2e0c6 [file] [log] [blame]
Jon Hjelleca91e382016-01-21 15:36:47 -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
tkchin9eeb6242016-04-27 01:54:20 -070011#import <WebRTC/RTCMediaStreamTrack.h>
Jon Hjelleca91e382016-01-21 15:36:47 -080012
tkchin9eeb6242016-04-27 01:54:20 -070013#import <WebRTC/RTCMacros.h>
tkchin8b577ed2016-04-19 10:04:41 -070014
Jon Hjelleca91e382016-01-21 15:36:47 -080015NS_ASSUME_NONNULL_BEGIN
16
17@protocol RTCVideoRenderer;
18@class RTCPeerConnectionFactory;
19@class RTCVideoSource;
20
tkchin8b577ed2016-04-19 10:04:41 -070021RTC_EXPORT
Jon Hjelleca91e382016-01-21 15:36:47 -080022@interface RTCVideoTrack : RTCMediaStreamTrack
23
24/** The video source for this video track. */
25@property(nonatomic, readonly) RTCVideoSource *source;
26
27- (instancetype)init NS_UNAVAILABLE;
28
Jon Hjelleca91e382016-01-21 15:36:47 -080029/** Register a renderer that will render all frames received on this track. */
30- (void)addRenderer:(id<RTCVideoRenderer>)renderer;
31
32/** Deregister a renderer. */
33- (void)removeRenderer:(id<RTCVideoRenderer>)renderer;
34
35@end
36
37NS_ASSUME_NONNULL_END