Skip to main content

Audio

Beam, by default, relies on Unity's Audio system for capturing your game audio.

info

If you use a third party audio system such as Wwise or FMOD then please refer to our Third Party Audio docs

You can change the levels of audio by simply adjusting the volume slider in the Beam Manager

Each audio element (both the game audio and microphone) gets spawned in at runtime, but can also be added to your scene before you start playing if desired.

Do note that you need to place your Beam Unity Listener on the same object as your standard Audio Listener as it binds directly to the OnAudioFilterRead calls. This will also then needed to be re-added on every subsequent scene change. The Beam Audio Mixer will automatically handle this, if you let it.

Microphone Capture

Depending on your choice in the Beam Settings you will either be using the Native or Unity microphone. It is recommended to use the native microphone, but the Unity one can be used if you are encountering problems.

Both options will be automatically spawned into your project at runtime (within the Beam Manager).

Native Microphone

The Native Microphone bypasses Unity's audio system and samples microphone data directly. It produces a higher quality output than Unity will provide, especially on Android.

During the first recording or streaming of your installed application, the native microphone will request the microphone permission from the user. If this is rejected or cancelled then no microphone audio will be recorded and the native microphone will not start. You can also freely implement the logic yourself by following [Unity's guidelines}(https://docs.unity3d.com/ScriptReference/Android.Permission.RequestUserPermission.html), and request the microphone permission earlier on.

If you are using a 3rd party audio solution for your output, you may need to adjust your microphone sample rate to match it. This can be done via the Beam Settings.

Unity Microphone

The Unity Microphone utilises Unity's Microphone.Start call, which may impact your current workflow, especially if you are using third party audio. It does, however, automatically find all the required sample rates but cannot be adjusted like the native microphone. Unity generally samples the microphone at 16kHz on Quest, while our native mic defaults to 48kHz.