blob: 3291797d5a41cf7a526926be452fdc7f1a0f05da [file] [log] [blame]
Anders Carlsson7bca8ca2018-08-30 09:30:29 +02001/*
2 * Copyright 2017 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
13#import "RTCMacros.h"
14#import "RTCVideoCodecInfo.h"
15#import "RTCVideoEncoder.h"
16
17NS_ASSUME_NONNULL_BEGIN
18
19/** RTCVideoEncoderFactory is an Objective-C version of webrtc::VideoEncoderFactory. */
Mirko Bonadeie8d57242018-09-17 10:22:56 +020020RTC_OBJC_EXPORT
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020021@protocol RTCVideoEncoderFactory <NSObject>
22
23- (nullable id<RTCVideoEncoder>)createEncoder:(RTCVideoCodecInfo *)info;
24- (NSArray<RTCVideoCodecInfo *> *)supportedCodecs; // TODO(andersc): "supportedFormats" instead?
25
Kári Tristan Helgason6e706ed2019-08-23 13:02:05 +020026@optional
27- (NSArray<RTCVideoCodecInfo *> *)implementations;
28
Anders Carlsson7bca8ca2018-08-30 09:30:29 +020029@end
30
31NS_ASSUME_NONNULL_END