blob: 8ed23ba82c0726cb22162788989b57f96a733cb4 [file] [log] [blame]
Jon Hjelle78234952016-01-11 09:47:07 -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
11#import <Foundation/Foundation.h>
12
13NS_ASSUME_NONNULL_BEGIN
14
15@interface RTCVideoFrame : NSObject
16
17/** Width without rotation applied. */
18@property(nonatomic, readonly) size_t width;
19
20/** Height without rotation applied. */
21@property(nonatomic, readonly) size_t height;
22@property(nonatomic, readonly) size_t chromaWidth;
23@property(nonatomic, readonly) size_t chromaHeight;
24@property(nonatomic, readonly) size_t chromaSize;
25// These can return NULL if the object is not backed by a buffer.
26@property(nonatomic, readonly, nullable) const uint8_t *yPlane;
27@property(nonatomic, readonly, nullable) const uint8_t *uPlane;
28@property(nonatomic, readonly, nullable) const uint8_t *vPlane;
29@property(nonatomic, readonly) int32_t yPitch;
30@property(nonatomic, readonly) int32_t uPitch;
31@property(nonatomic, readonly) int32_t vPitch;
32
33- (instancetype)init NS_UNAVAILABLE;
34
35@end
36
37NS_ASSUME_NONNULL_END