SINVideoController

Objective-C

@protocol SINVideoController <NSObject>

Swift

protocol SINVideoController : NSObjectProtocol

The SINVideoController provides methods for controlling video related functionality.

  • Indicates the capture device position (front-facing or back-facing camera) currently in use. This property may be set to to change which capture device should be used.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readwrite)
        AVCaptureDevicePosition captureDevicePosition;

    Swift

    var captureDevicePosition: AVCaptureDevice.Position { get set }
  • Automatically set/unset UIApplication.idleTimerDisabled when video capturing is started / stopped. Default is YES.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readwrite)
        BOOL disableIdleTimerOnCapturing;

    Swift

    var disableIdleTimerOnCapturing: Bool { get set }
  • View into which the remote peer video stream is rendered.

    Use -[UIView contentMode] to control how the video frame is rendered. (Note that only UIViewContentModeScaleAspectFit and UIViewContentModeScaleAspectFill will be respected)

    Use -[UIView backgroundColor] to specify color for potential “empty” regions when UIViewContentModeScaleAspectFit is used.

    See

    SINUIViewFullscreenAdditions (SINUIView+Fullscreen.h) for helpers to toggle full screen.

    Declaration

    Objective-C

    - (UIView *)remoteView;

    Swift

    func remoteView() -> UIView!
  • View into which the locally captured video stream is rendered.

    Use -[UIView contentMode] to control how the video frame is rendered. (Note that only UIViewContentModeScaleAspectFit and UIViewContentModeScaleAspectFill will be respected)

    Use -[UIView backgroundColor] to specify color for potential “empty” regions when UIViewContentModeScaleAspectFit is used.

    See

    SINUIViewFullscreenAdditions (SINUIView+Fullscreen.h) for helpers to toggle full screen.

    Declaration

    Objective-C

    - (UIView *)localView;

    Swift

    func localView() -> UIView!
  • Set a callback for handling video frames for remote video streams.

    This callback can be used to process the video frame before it is rendered and displayed in a view.

    Declaration

    Objective-C

    - (void)setRemoteVideoFrameCallback:(id<SINVideoFrameCallback>)callback;

    Parameters

    callback

    The callback object that will receive frames.

  • Set a callback for listening to video frames captured from the local camera.

    This callback can be used to process the locally captured video frame before it is sent to the remote peer(s).

    Declaration

    Objective-C

    - (void)setLocalVideoFrameCallback:(id<SINVideoFrameCallback>)callback;

    Parameters

    callback

    The callback object that will receive frames.