initWithFactory: is clumsy and makes classes difficult to mock out in tests. By keeping methods on the factory, we can simply mock out the factory's methods instead. We can consider adding regular Obj-C like ctors if we move to making the factory a singleton, but that requires further discussion. BUG= R=haysc@webrtc.org, hjon@webrtc.org Review URL: https://codereview.webrtc.org/1820193002 . Cr-Commit-Position: refs/heads/master@{#12089}
43 lines
1.3 KiB
Objective-C
43 lines
1.3 KiB
Objective-C
/*
|
|
* 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 "RTCVideoSource.h"
|
|
|
|
@class AVCaptureSession;
|
|
@class RTCMediaConstraints;
|
|
@class RTCPeerConnectionFactory;
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
/**
|
|
* RTCAVFoundationVideoSource is a video source that uses
|
|
* webrtc::AVFoundationVideoCapturer. We do not currently provide a wrapper for
|
|
* that capturer because cricket::VideoCapturer is not ref counted and we cannot
|
|
* guarantee its lifetime. Instead, we expose its properties through the ref
|
|
* counted video source interface.
|
|
*/
|
|
@interface RTCAVFoundationVideoSource : RTCVideoSource
|
|
|
|
- (instancetype)init NS_UNAVAILABLE;
|
|
|
|
/** Returns whether rear-facing camera is available for use. */
|
|
@property(nonatomic, readonly) BOOL canUseBackCamera;
|
|
|
|
/** Switches the camera being used (either front or back). */
|
|
@property(nonatomic, assign) BOOL useBackCamera;
|
|
|
|
/** Returns the active capture session. */
|
|
@property(nonatomic, readonly) AVCaptureSession *captureSession;
|
|
|
|
@end
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|