mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-14 06:10:40 +01:00

When injecting video codec factories in the Obj-C SDK, use the new peer connection API that uses webrtc::Video{De,En}CoderFactory classes and does not automatically add internal software codecs. Instead the injected factory can support internal VP8 and VP9 codecs through the included Obj-C classes RTCVideo{De,En}coderVP{8,9}. When not explicitly injecting any video codec factory, the old code path is still used and injects only H264 as an external codec and the internal codec factory is used. Bug: webrtc:7925 Change-Id: I657d30dfde71da9c0be341e213ab9f97a04caa58 Reviewed-on: https://webrtc-review.googlesource.com/3620 Commit-Queue: Anders Carlsson <andersc@webrtc.org> Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20175}
25 lines
900 B
Objective-C
25 lines
900 B
Objective-C
/*
|
|
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
#import "WebRTC/RTCVideoCodec.h"
|
|
#include "api/video_codecs/sdp_video_format.h"
|
|
#include "api/video_codecs/video_encoder.h"
|
|
#include "media/base/codec.h"
|
|
|
|
@interface RTCWrappedNativeVideoEncoder : NSObject <RTCVideoEncoder>
|
|
|
|
- (instancetype)initWithNativeEncoder:(std::unique_ptr<webrtc::VideoEncoder>)encoder;
|
|
|
|
/* This moves the ownership of the wrapped encoder to the caller. */
|
|
- (std::unique_ptr<webrtc::VideoEncoder>)releaseWrappedEncoder;
|
|
|
|
@end
|