OpenTok iOS SDK reference

The OpenTok iOS SDK includes the following classes:

Class Description
OTAudioBus The audio bus marshals audio data between the network and the audio device. Call the [OTAudioDevice setAudioBus:] method to define the object that implements the OTAudioBus protocol. The audio device pushes captured audio samples to and fetches unrendered audio samples from the audio bus.
OTAudioData Defines audio data passed into the [OTCustomAudioTransformer transform:] method. method.
OTAudioDevice Defines an audio device for use in a session. See [OTAudioDeviceManager setAudioDevice:] .
OTAudioDeviceManager Use the AudioDeviceManager to set a custom audio device to be used by the app. The audio device manages access to the audio capturing and rendering hardware.
OTAudioFormat Defines the format of the audio when a custom audio driver is used.
OTAudioSessionManager Defines an audio session manager for use with calling services like CallKit. Implementation of this protocol is optional. Custom audio devices can implement these methods to manage the AVAudioSession. The default audio device in the SDK provides a working implementation.
OTAudioTransformer Defines a transformer of an audio stream.
OTCameraCaptureFrameRate Defines values for the cameraFrameRate parameter of the [OTPublisher initWithDelegate:name:cameraResolution:cameraFrameRate:] method.
OTCameraCaptureResolution Defines values for the cameraResolution parameter of the [OTPublisher initWithDelegate:name:cameraResolution:cameraFrameRate:] method.
OTConnection Represents a connection to an OpenTok session. The OTSession class includes a connection property, which is an OTConnection object. Also, The OTStream class includes a connection property, which is an OTConnection object.
OTCustomAudioTransformer Defines a custom transformer for an audio stream, to be passed into the [OTAudioTransformer initWithName:transformer:] method.
OTCustomVideoTransformer Defines a custom transformer for a video stream, to be passed into the [OTVideoTransformer initWithName:transformer:] method.
OTDegradationPreference Default value. The video engine will decide the optimal degradation preference.
OTError Defines errors for the OpenTok iOS SDK.
OTMuteForcedInfo Defines the muteForced parameter of the [OTSessionDelegate session:muteForced:] message.
OTNetworkCondition Estimated network condition score for a transport.
OTNetworkDegradationSource Indicates the source of video or network degradation in the session.
OTNetworkReason Describes the primary reason impacting network condition.
OTPixelFormat Defines values for pixel format for the pixelFormat property of an OTVideoFrame object.
OTPublisher A publisher captures an audio-video stream from the device’s microphone and camera. You can then publish the audio-video stream to an OpenTok session by sending the [OTSession publish:error:] message.
OTPublisherDelegate Used for sending messages for an OTPublisher instance.
OTPublisherErrorCode Enumerations of error code values used by [OTPublisherKitDelegate publisher:didFailWithError:] .
OTPublisherKit A publisher captures an audio-video stream from the sources you specify. You can then publish the audio-video stream to an OpenTok session by sending the [OTSession publish:error:] message.
OTPublisherKitAudioLevelDelegate Used for monitoring the audio levels of the publisher.
OTPublisherKitAudioNetworkStats Describes audio statistics for a publisher. See [OTPublisherKit setNetworkStatsDelegate:] .
OTPublisherKitDelegate Used for sending messages for an OTPublisher instance. The OTPublisher class includes a delegate property. When you send the [OTPublisherKit initWithDelegate:] message or the [OTPublisherKit initWithDelegate:settings:] message, you specify an OTPublisherKitDelegate object.
OTPublisherKitMediaLinkStats Provides publisher media link statistics including local transport metrics.
OTPublisherKitNetworkStatsDelegate Used to monitor audio and video statistics for the publisher. See [OTPublisherKit networkStatsDelegate] .
OTPublisherKitRtcStatsReportDelegate Used for sending messages reporting publisher RTC statistics. Set the [OTPublisherKit rtcStatsReportDelegate] property to use this delegate. After you call the [OTPublisherKit getRtcStatsReport] method, the [OTPublisherKitRtcStatsReportDelegate publisher:rtcStatsReport:] message is sent to report th
OTPublisherKitSettings Defines settings to be used when initializing a publisher using the [OTPublisherKit initWithDelegate:settings:] method.
OTPublisherKitVideoLayerStats Describes statistics for a single published video layer.
OTPublisherKitVideoNetworkStats Describes video statistics for a publisher. See [OTPublisherKit setNetworkStatsDelegate:] .
OTPublisherKitVideoType Defines values for the [OTPublisherKit videoType] property.
OTPublisherRtcStats Represents RTC statistics for a media stream published by the publisher.
OTPublisherSettings Defines settings to be used when initializing a publisher using the [OTPublisher initWithDelegate:settings:] method.
OTPublisherVideoEventReason Video enabled and disabled events are accompanied with a reason code, for determining why the video track was enabled/disabled.
OTSenderStats Represents video statistics reported by the sender side, such as bitrate estimates.
OTSession The first step in using the OpenTok iOS SDK is to initialize an OTSession object with your API key and a valid session ID Use the OTSession object to connect to OpenTok using your developer API key and a valid token .
OTSessionCapabilities Defines the [OTSession capabilities] property. After you have connected to a session and the [OTSessionDelegate sessionDidConnect:] method has been called, this property identifies whether the client can publish and subscribe to streams in the session, based on the role assigned to the token used to
OTSessionConnectionStatus The connection status codes, available through [OTSession sessionConnectionStatus] .
OTSessionDelegate Used to send messages for an OTSession instance. The OTSession class includes a delegate property. When you send the [OTSession initWithApiKey:sessionId:delegate:] message, you specify an OTSessionDelegate object.
OTSessionErrorCode Enumerations of error code values used by [OTSessionDelegate session:didFailWithError:] .
OTSessionICEConfig Defines the property. This defines the TURN servers to be used by the client in the session.
OTSessionICEIncludeServers Defines settings for whether to use only your custom TURN servers or to use those servers in addition to OpenTok TURN servers. Defines values for the property.
OTSessionICETransportPolicy Defines settings for whether to use all ICE transport types (such as host, srflx, and TURN) to establish media connectivity or to only use TURN. Used in the [OTSessionICEConfig transportPolicy] setting.
OTSessionSettings Defines settings to be used when initializing an OTSession object using the [OTSession initWithApiKey:sessionId:delegate:settings:] method.
OTStream An OTStream object represents a stream of multimedia, which may contain video and/or audio data.
OTStreamVideoType Defines values for the [OTStream videoType] property.
OTSubscriber Renders OpenTok streams, and provides a UIView that renders video and provides some simple end-user controls.
OTSubscriberDelegate OTSubscriberDelegate extends OTSubscriberKitDelegate with additional optional callbacks specific to the OTSubscriber implementation. Currently, there is only one additional callback, but others may be added in a future release.
OTSubscriberErrorCode Enumerations of error code values used by [OTSubscriberKitDelegate subscriber:didFailWithError:] .
OTSubscriberKit An OTSubscriberKit (subscriber) object renders media data bound to an OTStream . The OTSubscriberKit class lets you set a custom video renderer for the video stream. Use this class if you are interested in providing your own video processing and rendering implementation. Otherwise, use the OTSubscri
OTSubscriberKitAudioLevelDelegate Used for monitoring the audio levels of the subscriber.
OTSubscriberKitAudioNetworkStats Describes audio statistics for a subscriber. See [OTSubscriberKit setNetworkStatsDelegate:] .
OTSubscriberKitCaptionsDelegate Used for receiving captions for a subscriber’s stream.
OTSubscriberKitDelegate Used to send messages for an OTSubscriber instance. When you send the [OTSubscriberKit initWithStream:delegate:] message, you specify an OTSubscriberKitDelegate object.
OTSubscriberKitMediaLinkStats Provides subscriber media link statistics including local and remote transport metrics and network degradation information.
OTSubscriberKitNetworkStatsDelegate Used to monitor audio and video statistics for the subscriber. See [OTSubscriberKit networkStatsDelegate] .
OTSubscriberKitRtcStatsReportDelegate Used for sending messages reporting subscriber RTC statistics. Set the [OTSubscriberKit rtcStatsReportDelegate] property to use this delegate. After you call the [OTSubscriberKit getRtcStatsReport] method, the [OTSubscriberKitRtcStatsReportDelegate subscriber:rtcStatsReport:] message is sent to repo
OTSubscriberKitVideoNetworkStats Describes video statistics for a subscriber. See [OTSubscriberKit setNetworkStatsDelegate:] .
OTSubscriberVideoEventReason Video enabled and disabled events are accompanied with a reason code, for determining why the video track was enabled/disabled.
OTTransportStats Provides network-level transport statistics.
OTVideoBitratePreset Preset strategies for controlling video bitrate in a publisher’s stream.
OTVideoCapture Defines a video capturer to be used by an OTPublisherKit object. See the videoCapture property of an OTPublisherKit object.
OTVideoCaptureConsumer Defines a the consumer of an OTVideoCapture object.
OTVideoCodecPreference @class OTVideoCodecPreference
OTVideoCodecType Define values for the [OTVideoCodecPreference codecs] property as well as items in the array used by the [OTVideoCodecPreference manualWithCodecs:] method.
OTVideoContentHint Defines values for the method.
OTVideoFormat Defines the video format assigned to an instance of an OTVideoFrame object.
OTVideoFrame Defines a frame of a video. See [OTVideoRender renderVideoFrame:] and [OTVideoCaptureConsumer consumeFrame:] .
OTVideoOrientation Defines values for video orientations (up, down, left, right) for the orieintation property of an OTVideoFrame object.
OTVideoRender Defines a video renderer to be used by an OTPublisherKit object or an OTSubscriberKit object. See the videoRender properties of OTPublisherKit object and OTSubscriberKit .
OTVideoTransformer Defines a transformer of a video stream.
OTVideoViewScaleBehavior Defines values for the [OTSubscriber viewScaleBehavior] and [OTPublisher viewScaleBehavior] properties.