/** * SPDX-FileCopyrightText: 2020 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: GPL-3.0-or-later */ #import #import #import extern NSString * const AudioSessionDidChangeRouteNotification; extern NSString * const AudioSessionWasActivatedByProviderNotification; extern NSString * const AudioSessionDidChangeRoutingInformationNotification; @interface NCAudioController : NSObject @property (nonatomic, strong) RTCAudioSession *rtcAudioSession; @property (nonatomic, assign) BOOL isSpeakerActive; @property (nonatomic, assign) NSInteger numberOfAvailableInputs; + (instancetype)sharedInstance; - (void)setAudioSessionToVoiceChatMode; - (void)setAudioSessionToVideoChatMode; - (void)disableAudioSession; - (void)providerDidActivateAudioSession:(AVAudioSession *)audioSession; - (void)providerDidDeactivateAudioSession:(AVAudioSession *)audioSession; - (BOOL)isAudioRouteChangeable; @end