| Index: webrtc/sdk/objc/Framework/Classes/RTCPeerConnectionFactory.mm
|
| diff --git a/webrtc/sdk/objc/Framework/Classes/RTCPeerConnectionFactory.mm b/webrtc/sdk/objc/Framework/Classes/RTCPeerConnectionFactory.mm
|
| deleted file mode 100644
|
| index 18a707cf4c9987062272925f7e5e0eff4d85cd9b..0000000000000000000000000000000000000000
|
| --- a/webrtc/sdk/objc/Framework/Classes/RTCPeerConnectionFactory.mm
|
| +++ /dev/null
|
| @@ -1,144 +0,0 @@
|
| -/*
|
| - * Copyright 2015 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 "RTCPeerConnectionFactory+Private.h"
|
| -
|
| -#import "NSString+StdString.h"
|
| -#import "RTCAVFoundationVideoSource+Private.h"
|
| -#import "RTCAudioSource+Private.h"
|
| -#import "RTCAudioTrack+Private.h"
|
| -#import "RTCMediaConstraints+Private.h"
|
| -#import "RTCMediaStream+Private.h"
|
| -#import "RTCPeerConnection+Private.h"
|
| -#import "RTCVideoSource+Private.h"
|
| -#import "RTCVideoTrack+Private.h"
|
| -#import "WebRTC/RTCLogging.h"
|
| -
|
| -#include "objcvideotracksource.h"
|
| -#include "videotoolboxvideocodecfactory.h"
|
| -
|
| -@implementation RTCPeerConnectionFactory {
|
| - std::unique_ptr<rtc::Thread> _networkThread;
|
| - std::unique_ptr<rtc::Thread> _workerThread;
|
| - std::unique_ptr<rtc::Thread> _signalingThread;
|
| - BOOL _hasStartedAecDump;
|
| -}
|
| -
|
| -@synthesize nativeFactory = _nativeFactory;
|
| -
|
| -- (instancetype)init {
|
| - if ((self = [super init])) {
|
| - _networkThread = rtc::Thread::CreateWithSocketServer();
|
| - BOOL result = _networkThread->Start();
|
| - NSAssert(result, @"Failed to start network thread.");
|
| -
|
| - _workerThread = rtc::Thread::Create();
|
| - result = _workerThread->Start();
|
| - NSAssert(result, @"Failed to start worker thread.");
|
| -
|
| - _signalingThread = rtc::Thread::Create();
|
| - result = _signalingThread->Start();
|
| - NSAssert(result, @"Failed to start signaling thread.");
|
| -
|
| - const auto encoder_factory = new webrtc::VideoToolboxVideoEncoderFactory();
|
| - const auto decoder_factory = new webrtc::VideoToolboxVideoDecoderFactory();
|
| -
|
| - // Ownership of encoder/decoder factories is passed on to the
|
| - // peerconnectionfactory, that handles deleting them.
|
| - _nativeFactory = webrtc::CreatePeerConnectionFactory(
|
| - _networkThread.get(), _workerThread.get(), _signalingThread.get(),
|
| - nullptr, encoder_factory, decoder_factory);
|
| - NSAssert(_nativeFactory, @"Failed to initialize PeerConnectionFactory!");
|
| - }
|
| - return self;
|
| -}
|
| -
|
| -- (RTCAudioSource *)audioSourceWithConstraints:(nullable RTCMediaConstraints *)constraints {
|
| - std::unique_ptr<webrtc::MediaConstraints> nativeConstraints;
|
| - if (constraints) {
|
| - nativeConstraints = constraints.nativeConstraints;
|
| - }
|
| - rtc::scoped_refptr<webrtc::AudioSourceInterface> source =
|
| - _nativeFactory->CreateAudioSource(nativeConstraints.get());
|
| - return [[RTCAudioSource alloc] initWithNativeAudioSource:source];
|
| -}
|
| -
|
| -- (RTCAudioTrack *)audioTrackWithTrackId:(NSString *)trackId {
|
| - RTCAudioSource *audioSource = [self audioSourceWithConstraints:nil];
|
| - return [self audioTrackWithSource:audioSource trackId:trackId];
|
| -}
|
| -
|
| -- (RTCAudioTrack *)audioTrackWithSource:(RTCAudioSource *)source
|
| - trackId:(NSString *)trackId {
|
| - return [[RTCAudioTrack alloc] initWithFactory:self
|
| - source:source
|
| - trackId:trackId];
|
| -}
|
| -
|
| -- (RTCAVFoundationVideoSource *)avFoundationVideoSourceWithConstraints:
|
| - (nullable RTCMediaConstraints *)constraints {
|
| - return [[RTCAVFoundationVideoSource alloc] initWithFactory:self
|
| - constraints:constraints];
|
| -}
|
| -
|
| -- (RTCVideoSource *)videoSource {
|
| - rtc::scoped_refptr<webrtc::ObjcVideoTrackSource> objcVideoTrackSource(
|
| - new rtc::RefCountedObject<webrtc::ObjcVideoTrackSource>());
|
| - return [[RTCVideoSource alloc] initWithNativeVideoSource:objcVideoTrackSource];
|
| -}
|
| -
|
| -- (RTCVideoTrack *)videoTrackWithSource:(RTCVideoSource *)source
|
| - trackId:(NSString *)trackId {
|
| - return [[RTCVideoTrack alloc] initWithFactory:self
|
| - source:source
|
| - trackId:trackId];
|
| -}
|
| -
|
| -- (RTCMediaStream *)mediaStreamWithStreamId:(NSString *)streamId {
|
| - return [[RTCMediaStream alloc] initWithFactory:self
|
| - streamId:streamId];
|
| -}
|
| -
|
| -- (RTCPeerConnection *)peerConnectionWithConfiguration:
|
| - (RTCConfiguration *)configuration
|
| - constraints:
|
| - (RTCMediaConstraints *)constraints
|
| - delegate:
|
| - (nullable id<RTCPeerConnectionDelegate>)delegate {
|
| - return [[RTCPeerConnection alloc] initWithFactory:self
|
| - configuration:configuration
|
| - constraints:constraints
|
| - delegate:delegate];
|
| -}
|
| -
|
| -- (BOOL)startAecDumpWithFilePath:(NSString *)filePath
|
| - maxSizeInBytes:(int64_t)maxSizeInBytes {
|
| - RTC_DCHECK(filePath.length);
|
| - RTC_DCHECK_GT(maxSizeInBytes, 0);
|
| -
|
| - if (_hasStartedAecDump) {
|
| - RTCLogError(@"Aec dump already started.");
|
| - return NO;
|
| - }
|
| - int fd = open(filePath.UTF8String, O_WRONLY | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR);
|
| - if (fd < 0) {
|
| - RTCLogError(@"Error opening file: %@. Error: %d", filePath, errno);
|
| - return NO;
|
| - }
|
| - _hasStartedAecDump = _nativeFactory->StartAecDump(fd, maxSizeInBytes);
|
| - return _hasStartedAecDump;
|
| -}
|
| -
|
| -- (void)stopAecDump {
|
| - _nativeFactory->StopAecDump();
|
| - _hasStartedAecDump = NO;
|
| -}
|
| -
|
| -@end
|
|
|