IVSStageAudioManagerUseCasePreset
Objective-C
enum IVSStageAudioManagerUseCasePreset : NSInteger {}
Swift
enum UseCasePreset : Int, @unchecked Sendable
Presets for common Stage use cases that set tested combinations of category, categoryOptions, and mode.
-
This is the default preset that is active if nothing is set on
IVSStageAudioManager
. This is the recommended preset when using bidirectional communication between multiple participants. iOS may restrict the number of possible input and output devices when this preset is used. When using this mode the system will treat the conversation as a phone call, so call volume will be used instead of media volume. It uses the categoryplayAndRecord
. It uses the category options,allowBluetooth
,allowBluetoothA2DP
,defaultToSpeaker
,mixWithOthers
. It uses the modevideoChat
. Echo cancellation is enabled when using this preset.Declaration
Objective-C
IVSStageAudioManagerUseCasePresetVideoChat
Swift
case videoChat = 0
-
This is the recommended preset when users are only subscribing to remote participants but not publishing. It will improve audio quality compared to the
videoChat
preset.- note: using this preset while a microphone is attached will cause problems with the underlying `AVAudioEngine`. Only use this mode if no microphone will be attached. It uses the category `playback`. It uses the category options, `mixWithOthers`. It uses the mode `moviePlayback`. Echo cancellation is disabled when using this preset.
Declaration
Objective-C
IVSStageAudioManagerUseCasePresetSubscribeOnly
Swift
case subscribeOnly = 1
-
This is the recommended preset when using bidirectional communication between multiple participants but it is important that audio quality remain as high as possible. This preset is only recommended when it is known that users will be using hardware that prevents echo, such as the combination of a headset and an external studio mic.
This mode can be used for a scenario where a "main broadcaster" is bringing other participants onto their broadcast as a guest. If the "main broadcaster" is using external audio equipment, they can use `.studio` while the guest that is joining uses `.videoChat`. It uses the category `playAndRecord`. It uses the category options, `allowBluetooth`, `allowBluetoothA2DP`, `defaultToSpeaker`, `mixWithOthers`. It uses the mode `default`. Echo cancellation is disabled when using this preset.
Declaration
Objective-C
IVSStageAudioManagerUseCasePresetStudio
Swift
case studio = 2