- RevueSDK
- AudioManager
Class
AudioManager
音訊管理器 — 裝置管理、說話偵測、音量監控
class AudioManagerOverview
let audioManager = AudioManager.shared
audioManager.onDeviceUpdate = { devices in
print("音訊設備變更")
}
audioManager.onMutedSpeechActivity = {
print("使用者被靜音但正在說話")
}
Topics
Instance Properties
var inputDevice: AudioDevice?當前輸入裝置(麥克風)
var inputDevices: [AudioDevice]所有可用輸入裝置
var isMicrophoneMuted: Boolvar isOtherAudioPlaying: Bool是否有其他 App 正在播放音訊
var isSpeakerOutputPreferred: Bool是否偏好揚聲器輸出(
false= 內建聽筒)var localAudioFrameCount: Int本機已發送的 PCM frame 數量
var onDeviceUpdate: (([AudioDevice]) -> Void)?音訊設備變更回調(插入/拔出耳機等)
var onInterruptionBegan: (() -> Void)?音訊中斷開始回調(電話來電、鬧鐘等)
var onInterruptionEnded: ((_ shouldResume: Bool) -> Void)?音訊中斷結束回調
var onMutedSpeechActivity: (() -> Void)?偵測使用者被靜音時在說話
var onOtherAudioPlayingChange: ((Bool) -> Void)?其他 App 的主音訊開始/結束播放時回調(帶當下的 [isOtherAudioPlaying])。
var outputDevice: AudioDevice?當前輸出裝置(揚聲器/耳機)
var outputDevices: [AudioDevice]所有可用輸出裝置
var remoteAudioFrameCount: Int收到遠端的 PCM frame 數量
Type Properties
static let shared: AudioManagerSingleton
static let standardChannelCount: IntSDK 標準聲道數(1 = mono)
static let standardFormat: AVAudioFormatSDK 標準音訊格式(Float32, 24000Hz, 1ch mono)
static let standardSampleRate: DoubleSDK 標準音訊取樣率(24000 Hz)