AVAudioSession configuration when using Wwise
Learn how to configure AVAudioSession when using Wwise.
阅读时间1 分钟最后更新于 18 小时前
If WWise is not configured correctly on iOS, Vivox and WWise can disagree on the configuration of
AVAudioSessionAVAudioSessionAt game initialization
Configure WWise to ensure theAVAudioSessionAkAudioSessionCategoryOptionDefaultToSpeakerAkAudioSessionCategoryOptionAllowBluetoothAkPlatformInitSettings platformInitSettings;AK::SoundEngine::GetDefaultPlatformInitSettings(platformInitSettings);platformInitSettings.audioSession.eCategory = AkAudioSessionCategory::AkAudioSessionCategoryPlayback;platformInitSettings.audioSession.eMode = AkAudioSessionMode::AkAudioSessionModeDefault;platformInitSettings.audioSession.eCategoryOptions = (AkAudioSessionCategoryOptions)(AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionDefaultToSpeaker | AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionAllowBluetooth);AK::SoundEngine::iOS::ChangeAudioSessionProperties(platformInitSettings.audioSession);
Before a channel join
Before joining a Vivox channel, configure WWise to prepare itsAVAudioSessionAkPlatformInitSettings platformInitSettings;AK::SoundEngine::GetDefaultPlatformInitSettings(platformInitSettings);platformInitSettings.audioSession.eCategory = AkAudioSessionCategory::AkAudioSessionCategoryPlayAndRecord;platformInitSettings.audioSession.eMode = AkAudioSessionMode::AkAudioSessionModeVoiceChat;platformInitSettings.audioSession.eCategoryOptions = (AkAudioSessionCategoryOptions)(AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionDefaultToSpeaker | AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionAllowBluetooth);AK::SoundEngine::iOS::ChangeAudioSessionProperties(platformInitSettings.audioSession);
After leaving a channel
After leaving a channel, reconfigure theAVAudioSessionAkPlatformInitSettings platformInitSettings;AK::SoundEngine::GetDefaultPlatformInitSettings(platformInitSettings);platformInitSettings.audioSession.eCategory = AkAudioSessionCategory::AkAudioSessionCategoryPlayback;platformInitSettings.audioSession.eMode = AkAudioSessionMode::AkAudioSessionModeDefault;platformInitSettings.audioSession.eCategoryOptions = (AkAudioSessionCategoryOptions)(AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionDefaultToSpeaker | AkAudioSessionCategoryOptions::AkAudioSessionCategoryOptionAllowBluetooth);AK::SoundEngine::iOS::ChangeAudioSessionProperties(platformInitSettings.audioSession);