IVSBroadcastError

Objective-C

enum IVSBroadcastError {}

Swift

enum IVSBroadcastError : Int

Known errors that can be returned by various APIs in the Broadcast SDK

  • This happens when you use the exchange devices API but the devices are of a different type, for example a microphone and a camera. Both devices must be of the same type.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceExchangeIncompatibleTypes = 10100

    Swift

    case deviceExchangeIncompatibleTypes = 10100
  • This happens when trying to attach a device but the device is not found. This could happen if you query all the devices and store them in an array, a device goes offline or is unplugged, and then you attempt to connect to that device.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceNotFound = 10101

    Swift

    case deviceNotFound = 10101
  • This happens when a device you are trying to add could not be added to the AVCaptureSession as an input source.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceAttachDeviceCouldNotAddAsInput = 10102

    Swift

    case deviceAttachDeviceCouldNotAddAsInput = 10102
  • This happens when a new output stream for the attaching device could not be added to the AVCaptureSession.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceAttachDeviceCouldNotAddOutputStream = 10103

    Swift

    case deviceAttachDeviceCouldNotAddOutputStream = 10103
  • At the moment, only a single input source of each type is allowed. In the future multiple cameras may be allowed, but a single microphone will likely be a requirement for the foreseeable future.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceTypeAlreadyAttached = 10104

    Swift

    case deviceTypeAlreadyAttached = 10104
  • The device being attached was unable to pair to a IVSMixerSlotConfiguration. Make sure your IVSBroadcastConfiguration has a slot with a matching preferred input device type.

    Declaration

    Objective-C

    IVSBroadcastErrorDeviceFoundNoMatchingSlot = 10105

    Swift

    case deviceFoundNoMatchingSlot = 10105
  • The device that was submitted to attach to the IVSBroadcastSession is not supported.

    Declaration

    Objective-C

    IVSBroadcastErrorUnsupportedDeviceType = 10106

    Swift

    case unsupportedDeviceType = 10106
  • When multiple external audio inputs are plugged in, only the most recently connected device can be attached to the broadcast session. The built-in microphone can always be attached.

    Declaration

    Objective-C

    IVSBroadcastErrorTooManyExternalAudioInputs = 10107

    Swift

    case tooManyExternalAudioInputs = 10107
  • The attaching camera does not support any of the pixel formats that the broadcast SDK supports.

    Declaration

    Objective-C

    IVSBroadcastErrorNoSupportedPixelFormats = 10108

    Swift

    case noSupportedPixelFormats = 10108
  • Thrown when the exchange device API is called and the device being swapped out is not currently attached.

    Declaration

    Objective-C

    IVSBroadcastErrorExchangeDeviceOldDeviceNotAttached = 10109

    Swift

    case exchangeDeviceOldDeviceNotAttached = 10109
  • The audio bitrate set on the IVSBroadcastConfiguration must be between 64k and 160k. This error is thrown when the audio bitrate is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidAudioBitrate = 10200

    Swift

    case configurationInvalidAudioBitrate = 10200
  • The audio channels set on the IVSBroadcastConfiguration must be equal to 2. This error is thrown when the audio channels is set to a value that is not 2.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidAudioChannels = 10201

    Swift

    case configurationInvalidAudioChannels = 10201
  • The video initial bitrate set on the IVSBroadcastConfiguration must be between 100k and 8,500k. This error is thrown when the video initial bitrate is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoInitialBitrate = 10202

    Swift

    case configurationInvalidVideoInitialBitrate = 10202
  • The video maximum bitrate set on the IVSBroadcastConfiguration must be between 100k and 8,500k. This error is thrown when the video maximum bitrate is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoMaxBitrate = 10203

    Swift

    case configurationInvalidVideoMaxBitrate = 10203
  • The video minimum bitrate set on the IVSBroadcastConfiguration must be between 100k and 8,500k. This error is thrown when the video minimum bitrate is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoMinBitrate = 10204

    Swift

    case configurationInvalidVideoMinBitrate = 10204
  • The video target framerate set on the IVSBroadcastConfiguration must be between 10 and 60. This error is thrown when the video target framerate is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoTargetFramerate = 10205

    Swift

    case configurationInvalidVideoTargetFramerate = 10205
  • The video keyframe interval set on the IVSBroadcastConfiguration must be between 1 and 10. This error is thrown when the video keyframe interval is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoKeyframeInterval = 10206

    Swift

    case configurationInvalidVideoKeyframeInterval = 10206
  • The video size set on the IVSBroadcastConfiguration must have a width and height of greater than 160, less than 1080, and the total number of pixels must be less than 2,073,600. For example, the smallest possible size is 160x160, and the biggest possible size is either 1080x1920 or 1920x1080.. This error is thrown when the video size does not meet the specified criteria.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidVideoSize = 10207

    Swift

    case configurationInvalidVideoSize = 10207
  • The mixer slot name set on the IVSBroadcastConfiguration must be between 1 and 50 characetrs in length. This error is thrown when the name is shorter or longer than the requirements.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidMixerSlotName = 10208

    Swift

    case configurationInvalidMixerSlotName = 10208
  • The mixer slot gain set on the IVSBroadcastConfiguration must be between 0 and 2. This error is thrown when the gain is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidMixerSlotGain = 10209

    Swift

    case configurationInvalidMixerSlotGain = 10209
  • The mixer slot transparency set on the IVSBroadcastConfiguration must be between 0 and 1. This error is thrown when the transparency is set to a value outside this range.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationInvalidMixerSlotTransparency = 10210

    Swift

    case configurationInvalidMixerSlotTransparency = 10210
  • There are multiple IVSMixerSlotConfiguration objects with the same name. All names must be unique.

    Declaration

    Objective-C

    IVSBroadcastErrorConfigurationDuplicateMixerNames = 10211

    Swift

    case configurationDuplicateMixerNames = 10211
  • When creating the preview view for a surface, there was an error obtaining the metal default library. The property “sourceError” will include the originating error.

    Declaration

    Objective-C

    IVSBroadcastErrorPreviewMetalLibraryInvalid = 10300

    Swift

    case previewMetalLibraryInvalid = 10300
  • When creating the preview view for a surface, there was an error generating the metal render pipeline state The property “sourceError” will include the originating error.

    Declaration

    Objective-C

    IVSBroadcastErrorPreviewMetalStateDescriptorInvalid = 10301

    Swift

    case previewMetalStateDescriptorInvalid = 10301
  • The device you’re using this on does not support Metal. Metal is a requirement for using the IVS Broadcast SDK.

    Declaration

    Objective-C

    IVSBroadcastErrorMetalNotSupported = 10302

    Swift

    case metalNotSupported = 10302
  • This is thrown when the IVSBroadcastSession‘s isReady property is set to NO and a method is called on the session anyway.

    Declaration

    Objective-C

    IVSBroadcastErrorSessionIsNotReady = 10400

    Swift

    case sessionIsNotReady = 10400
  • This is thrown when a IVSCustomImageSource is used and an unsupported pixel format is provided. The currently supported pixel formats are: kCVPixelFormatType_32BGRA kCVPixelFormatType_420YpCbCr8BiPlanarFullRange kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange

    Declaration

    Objective-C

    IVSBroadcastErrorInvalidVideoFormat = 10401

    Swift

    case invalidVideoFormat = 10401
  • This is thrown when an image submitted via onSampleBuffer exceeds 32400 KB (32 bpp at 3840×2160). If you have images in resolutions greater than 4k, please convert them to format such as kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange to reduce the total size of the image below the threshold.

    Declaration

    Objective-C

    IVSBroadcastErrorImageTooLarge = 10402

    Swift

    case imageTooLarge = 10402
  • This is thrown when PCM data is submitted via onPCMBuffer or onSampleBuffer and the total size of the data is greater than 5.5 MB. If you run into this while submitting valid data, break up your sample into multiple smaller samples.

    Declaration

    Objective-C

    IVSBroadcastErrorPCMDataTooLong = 10403

    Swift

    case pcmDataTooLong = 10403
  • This is thrown when IVSBroadcastSession.automaticallyConfiguresApplicationAudioSession is set to YES and the AVAudioSession was modified outside of the broadcast SDK.

    Declaration

    Objective-C

    IVSBroadcastErrorAVSessionModified = 10404

    Swift

    case avSessionModified = 10404
  • This is thrown when the broadcast session is stopped due to a loss in network connectivity. You can monitor your device’s connection and start the stream again when connectivity is restored.

    Declaration

    Objective-C

    IVSBroadcastErrorNetworkConnectivityLost = 10405

    Swift

    case networkConnectivityLost = 10405