Table of Contents

Target Platform(s):

iOS/tvOS-Specific Information

This chapter contains information that is specific to using the Wwise SDK for the iOS/tvOS platform.

Warning: tvOS SoundBanks must use iOS for their base platform.
Note: Unless otherwise specified, the mention "iOS" in this page and its subsections is used to describe interchangeably the iOS and the tvOS specific platform details.

Bluetooth Stuttering and Starvation

Using Bluetooth speakers and headphones induce a lot of latency in the audio. This is due to the Bluetooth compression and over-the-air communication stack in the OS itself. Because of this, latency-sensitive games such as rythm games will have a degraded gameplay when the Bluetooth device is connected.

Wwise will automatically switch to a high latency mode to avoid stuttering when Bluetooth devices are used. It will revert back to regular latency when the device is disconnected, as specified by AkPlatformInitSettings.uNumRefillsInVoice at initialization.

Note: Using a Bluetooth device with the "Play and Record" audio session will force the OS to downsample all audio to 8 kHz. This behavior is related to the Bluetooth driver itself.

The iOS Audio Session

On iOS, many events such as an incoming phone or FaceTime call, usage of SIRI, calendar alerts, or system sounds can prevent app audio from playing at any moment. Apple's audio session is the mechanic that handles the conflicts for access to audio hardware. Choosing the right audio session for your application is important. Fortunately, most of the implementation details when working with audio session are taken care of by the Wwise iOS SDK and little effort is required by the SDK client app to obtain a compliant and efficient audio app that behaves as expected. The following sections present the concept of the iOS audio session and its related Wwise-implemented policies.