Classes
The following classes are available globally.
-
Information about the stats of a audio device.
See moreDeclaration
Objective-C
@interface IVSAudioDeviceStats : NSObjectSwift
class IVSAudioDeviceStats : NSObject -
A configuration object describing the desired format of the final output audio stream.
See moreDeclaration
Objective-C
@interface IVSAudioConfiguration : NSObjectSwift
class IVSAudioConfiguration : NSObject -
A configuration object describing the desired format of the final output video stream
See moreDeclaration
Objective-C
@interface IVSVideoConfiguration : NSObjectSwift
class IVSVideoConfiguration : NSObject -
A configuration object describing additional network parameters
See moreDeclaration
Objective-C
@interface IVSNetworkConfiguration : NSObjectSwift
class IVSNetworkConfiguration : NSObject -
A configuration object describing a layer for composition on the final video output stream.
See moreDeclaration
Objective-C
@interface IVSMixerSlotConfiguration : NSObjectSwift
class IVSMixerSlotConfiguration : NSObject -
A collection of
See moreIVSMixerSlotConfigurationobjects.Declaration
Objective-C
@interface IVSMixerConfiguration : NSObjectSwift
class IVSMixerConfiguration : NSObject -
An object that can configure SDK auto-reconnect functionality.
See moreDeclaration
Objective-C
@interface IVSBroadcastAutoReconnectConfiguration : NSObjectSwift
class IVSBroadcastAutoReconnectConfiguration : NSObject -
An object to broadcast, transform, and distribute audio video content. Changing any properties on this object after providing it to
See moreIVSBroadcastSessionwill not have any effect. A copy of the configuration is made and kept internally. To make changes to the session live, use theIVSBroadcastSession.mixerAPIs, orIVSBroadcastSession.setLogLevel.Declaration
Objective-C
@interface IVSBroadcastConfiguration : NSObjectSwift
class IVSBroadcastConfiguration : NSObject -
BroadcastSession is the primary interaction point with the IVS Broadcast SDK. You must create a BroadcastSession in order to begin broadcasting.
See moreNote
If there as a live broadcast when this object deallocates, internallystopwill be called during deallocation, and it will block until the stream has been gracefully terminated or a timeout is reached. Because of that it is recommended that you always explicitly stop a live broadcast before deallocating.Declaration
Objective-C
@interface IVSBroadcastSession : IVSSessionSwift
class IVSBroadcastSession : IVSSession -
Information about the state of a network quality test.
See moreDeclaration
Objective-C
@interface IVSBroadcastSessionTestResult : NSObjectSwift
class IVSBroadcastSessionTestResult : NSObject -
A handle on the network quality test. You can use this to cancel an ongoing test.
See moreDeclaration
Objective-C
@interface IVSBroadcastSessionTest : NSObjectSwift
class IVSBroadcastSessionTest : NSObject -
A description of the capabilities of an AV device that is usable by the Broadcast SDK.
See moreDeclaration
Objective-C
@interface IVSDeviceDescriptor : NSObjectSwift
class IVSDeviceDescriptor : NSObject -
The interaction point for discovering and creating devices for use with the Broadcast and Stage SDKs.
See moreDeclaration
Objective-C
@interface IVSDeviceDiscovery : NSObjectSwift
class IVSDeviceDiscovery : NSObject -
A data class providing metadata about the frames going through an
See moreIVSImageDevice.Declaration
Objective-C
@interface IVSImageDeviceFrame : NSObjectSwift
class IVSImageDeviceFrame : NSObject -
A view that will auto update its contents with a live preview of either an
See moreIVSImageDevice, or the composited output image of the broadcast session.Declaration
Objective-C
@interface IVSImagePreviewView : UIViewSwift
class IVSImagePreviewView : UIView -
A quality stats class that represents local audio
See moreDeclaration
Objective-C
@interface IVSLocalAudioStats : NSObjectSwift
class IVSLocalAudioStats : NSObject -
Declaration
Objective-C
@interface IVSLocalStageStream : IVSStageStreamSwift
class IVSLocalStageStream : IVSStageStream -
A configuration object describing the desired format of the published audio track associated the
See moreIVSStageStream.Declaration
Objective-C
@interface IVSLocalStageStreamAudioConfiguration : NSObjectSwift
class IVSLocalStageStreamAudioConfiguration : NSObject -
An object that describes the media configuration for the
See moreIVSStageStream.Declaration
Objective-C
@interface IVSLocalStageStreamConfiguration : NSObjectSwift
class IVSLocalStageStreamConfiguration : NSObject -
A configuration object describing simulcast configuration
See moreDeclaration
Objective-C
@interface IVSSimulcastConfiguration : NSObjectSwift
class IVSSimulcastConfiguration : NSObject -
A configuration object describing the desired format of the published video track associated the
See moreIVSStageStream.Declaration
Objective-C
@interface IVSLocalStageStreamVideoConfiguration : NSObjectSwift
class IVSLocalStageStreamVideoConfiguration : NSObject -
A quality stats class that represents local video
See moreDeclaration
Objective-C
@interface IVSLocalVideoStats : NSObjectSwift
class IVSLocalVideoStats : NSObject -
The mixer determines the final on-screen and in-ear state for visual elements and audio.
An element is represented by an
IVSMixerSlotConfigurationthat has a number of associated parameters to place an image stream spatially and set the gain of an audio stream from a device.Each slot can be bound to a single image device (such as a camera) and a single audio device (such as a microphone).
See moreDeclaration
Objective-C
@interface IVSMixer : NSObjectSwift
class IVSMixer : NSObject -
Information about a participant. The properties in this class will remain constant throughout its lifetime, with the exception of
See moreuserInfo.Declaration
Objective-C
@interface IVSParticipantInfo : NSObjectSwift
class IVSParticipantInfo : NSObject -
Standard configurations for
See moreIVSBroadcastConfigurationobjects.Declaration
Objective-C
@interface IVSConfigurationPresets : NSObjectSwift
class IVSConfigurationPresets : NSObject -
Combinations for commonly accessed
See moreIVSDeviceDescriptorobjects.Declaration
Objective-C
@interface IVSDevicePresets : NSObjectSwift
class IVSDevicePresets : NSObject -
A collection of predefined configurations and input device sets.
See moreDeclaration
Objective-C
@interface IVSPresets : NSObjectSwift
class IVSPresets : NSObject -
A quality stats class that represents remote audio
See moreDeclaration
Objective-C
@interface IVSRemoteAudioStats : NSObjectSwift
class IVSRemoteAudioStats : NSObject -
A quality stats class that represents remote video
See moreDeclaration
Objective-C
@interface IVSRemoteVideoStats : NSObjectSwift
class IVSRemoteVideoStats : NSObject -
This is a streamlined version of an
IVSBroadcastSessionto be used in a Broadcast Upload Extension. The extensions are under strict memory constraints, and this class removes some of the SDK features in exchange for a reduction in memory footprint.For example, there are no attach or detach APIs. There are 3 devices created for you, corresponding to the screen, app audio, and the microphone. Pass CMSampleBuffers to these devices from your
RPBroadcastSampleHandlerimplementation. In addition, there is no mixer configuration and no access to anIVSMixer. This class does not support multiple image layers, and the primary layer (the device screen) is always sized to the full output stream scaled to fit. Transparency is also disabled regardless of what is provided in the video configuration.Finally, you can not create a preview for the
systemImageSourceor the session as a whole, they will not render anything.See moreNote
this will automatically setIVSBroadcastSession.applicationAudioSessionStrategytonoAction.Declaration
Objective-C
@interface IVSReplayKitBroadcastSession : NSObjectSwift
class IVSReplayKitBroadcastSession : NSObject -
The base of both Broadcast and Stage Sessions, providing common APIs for working with devices and getting a preview for the composited session.
See moreDeclaration
Objective-C
@interface IVSSession : NSObjectSwift
class IVSSession : NSObject -
The main interaction point for interacting with the Stage SDK.
See moreDeclaration
Objective-C
@interface IVSStage : NSObject <IVSErrorSource>Swift
class IVSStage : NSObject, IVSErrorSource -
Use this class to manage the
AVAudioSessioninstance used by the SDK while in a stage.See moreNote
Calling any of these APIs can change the available microphones and output devices at runtime, and will reset the selected input source on an IVSMicrophone instance, falling back to the default device. It is recommended to setup the audio manager before creating anIVSStage. If you need to call these APIs while anIVSStageis active, make sure to validate the devices you expect to be used can still be used by the system.Declaration
Objective-C
@interface IVSStageAudioManager : NSObject <IVSErrorSource>Swift
class IVSStageAudioManager : NSObject, IVSErrorSource -
IVSTransmissionStatistics contains statistics on the broadcast’s current measured bitrate, recommended bitrate by the SDK’s adaptive bitrate algorithm, average round trip time, broadcast quality (relative to configured minimum and maximum bitrates), and network health.
Expect this callback to be triggered on
See moreIVSBroadcastSession.delegatequite frequently (approximately twice per second) as the measured and recommended bitrates change. Measured versus recommended bitrate behavior can vary significantly between platforms. The documentation on each metric provides instructions on how to interpret these values.Declaration
Objective-C
@interface IVSTransmissionStatistics : NSObjectSwift
class IVSTransmissionStatistics : NSObject
Classes Reference