IVSStageAudioManager

Objective-C


@interface IVSStageAudioManager : NSObject <IVSErrorSource>

Swift

class IVSStageAudioManager : NSObject, IVSErrorSource

Use this class to manage the AVAudioSession instance used by the SDK while in a stage.

Note

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 an IVSStage. If you need to call these APIs while an IVSStage is active, make sure to validate the devices you expect to be used can still be used by the system.
  • Unavailable

    Do not create instances of this class directly

    Declaration

    Objective-C

    IVS_INIT_UNAVAILABLE
  • Unavailable

    Do not create instances of this class directly

    Declaration

    Objective-C

    IVS_INIT_UNAVAILABLE
  • The most recently set IVSStageAudioManagerCategory

    Declaration

    Objective-C

    @property (readonly) IVSStageAudioManagerCategory category;

    Swift

    var category: IVSStageAudioManager.Category { get }
  • The most recently set IVSStageAudioManagerCategoryOptions

    Declaration

    Objective-C

    @property (readonly) IVSStageAudioManagerCategoryOptions options;

    Swift

    var options: IVSStageAudioManager.CategoryOptions { get }
  • The most recently set IVSStageAudioManagerMode

    Declaration

    Objective-C

    @property (readonly) IVSStageAudioManagerMode mode;

    Swift

    var mode: IVSStageAudioManager.Mode { get }
  • Indicates whether echo cancellation is enabled on the microphone device. By default this is YES.

    Note

    Changing this property while the microphone is in use may result in momentary audio loss. Setting this property to a value of YES may require microphone permissions. echoCancellation is incompatible with the record category and will not be enabled.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readwrite,
              getter=isEchoCancellationEnabled) BOOL echoCancellationEnabled;

    Swift

    var isEchoCancellationEnabled: Bool { get set }
  • The shared instance of IVSStageAudioManager.

    Declaration

    Objective-C

    + (nonnull instancetype)sharedInstance;

    Swift

    class func sharedInstance() -> Self
  • Set a new preset for the audio session configuration.

    Declaration

    Objective-C

    - (void)setPreset:(IVSStageAudioManagerUseCasePreset)preset;

    Swift

    func setPreset(_ preset: IVSStageAudioManager.UseCasePreset)
  • Manually specify the category, options, and mode for the audio session configuration.

    Declaration

    Objective-C

    - (void)setCategory:(IVSStageAudioManagerCategory)categoroy
                options:(IVSStageAudioManagerCategoryOptions)options
                   mode:(IVSStageAudioManagerMode)mode;

    Swift

    func setCategory(_ categoroy: IVSStageAudioManager.Category, options: IVSStageAudioManager.CategoryOptions = [], mode: IVSStageAudioManager.Mode)