Steam Audio 4.0.3 Valve Corporation

Overview

% Steam Audio 4.0.3 % Valve Corporation

Supported Platforms

Steam Audio supports Windows (32 bit and 64 bit), Linux (32 bit and 64 bit), macOS, and Android (armv7, arm64, x86, x64) platforms.

Supported Integrations

Steam Audio supports Unity 2017.3+, Unreal Engine 4.16+, and FMOD Studio 2.0+.

Additional Links

Comments
  • After upgrading from 2.0.20 to 4.0.1, Unity crashes debilitatingly frequently

    After upgrading from 2.0.20 to 4.0.1, Unity crashes debilitatingly frequently

    I've upgraded to 4.0.1 from 2.0.20. I'm using Unity 2020.2.0f1.

    The editor crashes extremely often now. After hitting the [>] Play button to test, there's about a 1/3 chance that it will crash.

    The crash logs reveal that these crashes are always from within a Steam Audio related DLL, usually Phonon:

    1. 'Attempt to access invalid address.' ... 0x00007FFFCE08D16D (audioplugin_phonon) UnityGetAudioEffectDefinitions
    2. Read from location FFFFFFFFFFFFFFFC caused an access violation. ... 0x00007FFF829B5420 (phonon) embree::TaskScheduler::wait
    3. Read from location FFFFFFFFFFFFFFFF caused an access violation. ... 0x00007FFF829B5420 (phonon) embree::TaskScheduler::wait
    4. 'Attempt to access invalid address.' ... (audioplugin_phonon) UnityGetAudioEffectDefinitions
    5. 'Attempt to access invalid address.' ... (audioplugin_phonon) UnityGetAudioEffectDefinitions
    6. 'Attempt to access invalid address.' ... (audioplugin_phonon) UnityGetAudioEffectDefinitions
    7. 'Attempt to access invalid address.' ... (audioplugin_phonon) UnityGetAudioEffectDefinitions
    8. Read from location 0000002000000011 caused an access violation. ... (phonon) embree::TaskScheduler::wait
    9. Read from location 0000002000000011 caused an access violation. ... (phonon) embree::TaskScheduler::wait

    I uploaded the crash logs here. Crash_2021-09-22_020218439.zip

    The scene most of these crashes occurred in involves a simple cube-shaped room with baked pathing and reverb. Probes are placed using custom code using the ProbeBatch and ProbeArray classes, though these crashes occur in levels without these things added.

    opened by CodeHatchling 28
  • Difference on the acoustics when changing materials?

    Difference on the acoustics when changing materials?

    Hi all,

    I don't know if it is just me, but I cannot find a proper difference in the room acoustics when changing materials. For example, metallic materials should turn to a more reverberant environment because the attenuation rate is lower; with carpet material, the other way around. I have also tried the Custom material and, in my opinion, I can't see a difference.

    Am I doing something wrong? Because that is not working for me.

    Thank you!

    opened by ariadnasc 26
  • iplRotateAmbisonicsAudioBuffer no effect on audio data.

    iplRotateAmbisonicsAudioBuffer no effect on audio data.

    Hi,

    I'm developing gstreamer plugin based on phonon C API, I created 1st order test file that I'm able to play using iplApplyAmbisonicsBinauralEffect and it gets rendered properly, but if I try to rotate the the ambisonics data using: iplRotateAmbisonicsAudioBuffer before i apply the effect nothing happens to the data in the output buffer (tried both in place rotation and separate in and out buffers, rotator is initialized and rotation set). What I do looks more or less like:

    //once at beginning: iplCreateBinauralRenderer iplCreateAmbisonicsBinauralEffect iplCreateAmbisonicsRotator

    //each time the viewer moves/rotates iplSetAmbisonicsRotation // the quat is normalized.

    //on each audio frame: iplRotateAmbisonicsAudioBuffer iplApplyAmbisonicsBinauralEffect

    I tried rotation in each axis but it looks like the data remains untouched.

    many thanks in advance

    mecowhy

    opened by mecowhy 18
  • audioplugin_phonon.dll access violation 4.0.3

    audioplugin_phonon.dll access violation 4.0.3

    Unity, both in editor and standalone can often crash when the SteamAudioSource performs its Awake phase. I've been having this issue for a while now, but I've found no fixes for this as of yet. This can happen any time, like when an audio source is dynamically created but also when a new scene is loaded.

    I've compiled the audioplugin_phonon.dll from source so I could get the exact location where the exception occurred with the pbd files, and it always seems to come from the method iplSourceRetain(IPLSource source)

    image

    Crashed thread stack trace:

    0x00007FFE8E10ABB9 (audioplugin_phonon) iplUnitySetHRTF
    0x00007FFE8E10AF75 (audioplugin_phonon) iplUnitySetHRTF
    0x00007FFE5953B041 (UnityPlayer) UnityAudioEffect_InternalSetFloatParameterCallback
    0x00007FFE59F1425E (UnityPlayer) FMOD::DSP::setParameter
    0x00007FFE59555FB5 (UnityPlayer) AudioSource::SetSpatializerFloat
    0x00007FFE595A012E (UnityPlayer) AudioSource_CUSTOM_SetSpatializerFloat
    0x0000013A16EE7564 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.AudioSource:SetSpatializerFloat (UnityEngine.AudioSource,int,single)
    0x0000013A16EE780B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\Plugins\SteamAudio\Scripts\Runtime\UnityAudioEngineSource.cs:79] SteamAudio.UnityAudioEngineSource:SetSpatializerIntPtr (intptr,int&) 
    0x0000013A16EE731B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\Plugins\SteamAudio\Scripts\Runtime\UnityAudioEngineSource.cs:56] SteamAudio.UnityAudioEngineSource:UpdateParameters (SteamAudio.SteamAudioSource) 
    0x0000013A16EE636E (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\Plugins\SteamAudio\Scripts\Runtime\SteamAudioSource.cs:167] SteamAudio.SteamAudioSource:Awake () 
    0x00000137CA633870 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
    0x00007FFE6CD1F1E0 (mono-2.0-bdwgc) mono_get_runtime_build_info
    0x00007FFE6CCA2AC2 (mono-2.0-bdwgc) mono_perfcounters_init
    0x00007FFE6CCABB1F (mono-2.0-bdwgc) mono_runtime_invoke
    0x00007FFE592DD23D (UnityPlayer) scripting_method_invoke
    0x00007FFE592D9A4C (UnityPlayer) ScriptingInvocation::Invoke
    0x00007FFE592D9B1E (UnityPlayer) ScriptingInvocation::InvokeChecked
    0x00007FFE5930A8E5 (UnityPlayer) SerializableManagedRef::CallMethod
    0x00007FFE592B95D8 (UnityPlayer) MonoBehaviour::CallAwake
    0x00007FFE592B87AD (UnityPlayer) MonoBehaviour::AddToManager
    0x00007FFE592B8B43 (UnityPlayer) MonoBehaviour::AwakeFromLoad
    0x00007FFE5932F00E (UnityPlayer) AwakeFromLoadQueue::AwakeFromLoadAllQueues
    0x00007FFE589AD8D8 (UnityPlayer) GameObject::ActivateAwakeRecursively
    0x00007FFE589B452F (UnityPlayer) GameObject::SetSelfActive
    0x00007FFE59407195 (UnityPlayer) GameObject_CUSTOM_SetActive
    0x00000137D5F385B9 (Mono JIT Code) (wrapper managed-to-native) UnityEngine.GameObject:SetActive (UnityEngine.GameObject,bool)
    0x00000137D63F2C8B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Library\PackageCache\[email protected]\Runtime\Providers\PrefabCreators\PrefabInstantiator.cs:108] Zenject.PrefabInstantiator/<>c__DisplayClass15_0:<Instantiate>b__0 () 
    0x00000137D5F77BCE (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Library\PackageCache\[email protected]\Runtime\Providers\IProviderExtensions.cs:35] Zenject.IProviderExtensions:GetAllInstances (Zenject.IProvider,Zenject.InjectContext,System.Collections.Generic.List`1<Zenject.TypeValuePair>,System.Collections.Generic.List`1<object>) 
    0x0000013A05ED532B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Library\PackageCache\[email protected]\Runtime\Providers\IProviderExtensions.cs:85] Zenject.IProviderExtensions:GetInstance (Zenject.IProvider,Zenject.InjectContext,System.Collections.Generic.List`1<Zenject.TypeValuePair>) 
    0x0000013A2FC354BB (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Library\PackageCache\[email protected]\Runtime\Factories\PlaceholderFactoryBase.cs:32] Zenject.PlaceholderFactoryBase`1<TValue_REF>:CreateInternal (System.Collections.Generic.List`1<Zenject.TypeValuePair>) 
    0x0000013A2FC3542B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Library\PackageCache\[email protected]\Runtime\Factories\PlaceholderFactory.cs:20] Zenject.PlaceholderFactory`1<TValue_REF>:Create () 
    0x0000013A2FC35142 (Mono JIT Code) Recon.Services.Pooling.ObjectPoolService`1<T_REF>:CreateNewItem ()
    0x0000013A796D6053 (Mono JIT Code) Recon.Services.Pooling.ObjectPoolService`1<T_REF>:Get (UnityEngine.Vector3,System.Action`1<T_REF>)
    0x0000013A7973BFFB (Mono JIT Code) Recon.SCPs.BouncyBall:RpcLogic___PlayBounceSound ()
    0x0000013A7973BF0B (Mono JIT Code) Recon.SCPs.BouncyBall:RpcReader___PlayBounceSound (FishNet.Serializing.PooledReader,FishNet.Transporting.Channel)
    0x0000013A2B6A4C0B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Client\ClientManager.cs:316] FishNet.Managing.Client.ClientManager:ParseReceived (FishNet.Transporting.ClientReceivedDataArgs) 
    0x0000013A2B6A3C93 (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Client\ClientManager.cs:222] FishNet.Managing.Client.ClientManager:Transport_OnClientReceivedData (FishNet.Transporting.ClientReceivedDataArgs) 
    0x0000013A2B6A3C2F (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Plugins\FishySteamworks\FishySteamworks.cs:308] FishySteamworks.FishySteamworks:HandleClientReceivedDataArgs (FishNet.Transporting.ClientReceivedDataArgs) 
    0x0000013A05EDD7FC (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Plugins\FishySteamworks\Core\ClientSocket.cs:184] FishySteamworks.Client.ClientSocket:IterateIncoming () 
    0x0000013A05EDD55B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Plugins\FishySteamworks\FishySteamworks.cs:279] FishySteamworks.FishySteamworks:IterateIncoming (bool) 
    0x0000013A05EDD4B8 (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Transporting\TransportManager.cs:318] FishNet.Managing.Transporting.TransportManager:IterateIncoming (bool) 
    0x0000013A05EDD263 (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Timing\TimeManager.cs:838] FishNet.Managing.Timing.TimeManager:TryIterateData (bool) 
    0x0000013A05EDCE73 (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Timing\TimeManager.cs:633] FishNet.Managing.Timing.TimeManager:IncreaseTick () 
    0x0000013A05EDCCB3 (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Managing\Timing\TimeManager.cs:352] FishNet.Managing.Timing.TimeManager:TickUpdate () 
    0x0000013A05EDCA9B (Mono JIT Code) [C:\Users\Stepe\Documents\development\recontainment\Assets\FishNet\Runtime\Transporting\NetworkReaderLoop.cs:29] FishNet.Transporting.NetworkReaderLoop:Update () 
    0x00000137D5F33F00 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_void__this__ (object,intptr,intptr,intptr)
    0x00007FFE6CD1F1E0 (mono-2.0-bdwgc) mono_get_runtime_build_info
    0x00007FFE6CCA2AC2 (mono-2.0-bdwgc) mono_perfcounters_init
    0x00007FFE6CCABB1F (mono-2.0-bdwgc) mono_runtime_invoke
    0x00007FFE592DD23D (UnityPlayer) scripting_method_invoke
    0x00007FFE592D9A4C (UnityPlayer) ScriptingInvocation::Invoke
    0x00007FFE592B96F3 (UnityPlayer) MonoBehaviour::CallMethodIfAvailable
    0x00007FFE592B97CF (UnityPlayer) MonoBehaviour::CallUpdateMethod
    0x00007FFE58BD78C0 (UnityPlayer) BaseBehaviourManager::CommonUpdate<BehaviourManager>
    0x00007FFE58BDE8AD (UnityPlayer) BehaviourManager::Update
    0x00007FFE58EBFF2E (UnityPlayer) `InitPlayerLoopCallbacks'::`2'::UpdateScriptRunBehaviourUpdateRegistrator::Forward
    0x00007FFE58EAB06E (UnityPlayer) ExecutePlayerLoop
    0x00007FFE58EAB13F (UnityPlayer) ExecutePlayerLoop
    0x00007FFE58EB1072 (UnityPlayer) PlayerLoop
    0x00007FFE588D565A (UnityPlayer) PerformMainLoop
    0x00007FFE588D34EB (UnityPlayer) MainMessageLoop
    0x00007FFE588D8E3B (UnityPlayer) UnityMainImpl
    0x00007FFE588D9DFB (UnityPlayer) UnityMain
    0x00007FF6AB4F11F2 (SCPArchive) __scrt_common_main_seh
    0x00007FFEBF127034 (KERNEL32) BaseThreadInitThunk
    0x00007FFEC0282651 (ntdll) RtlUserThreadStart
    

    Here the dump, log and pbd files: crash.zip

    opened by stepperman 12
  • Costum HRTF wont't load

    Costum HRTF wont't load

    Hey there, I am using the new version of the steam Audio plugin with costum HRTF. I did everything described in the HTML file. Checked it several times, deinstalled and installed all plugins several times, but my costum HRTF won't load. When I type a random name for HRTF the "not found" error occurs, when using the name of a sofa file, no error occurs (as expected), but the used HRTFs are not my costum ones. To verify my problem, I used HRTF with time delays and also used HRTF with only zeros in it, but it seems that it doesn't change to my costum HRTF, instead using the default ones (but no error occurs, saying that the system switched back to default). I am using simpleFreeFieldHRIR Sofa conventions, as explained in the HTML file. Does anyone have a clue what I am doing wrong? Or is it a common error? Thanks for your help.

    opened by SilkeKleinerBogen 11
  • Custom HRTFs in the unity plugin

    Custom HRTFs in the unity plugin

    Hi, apologies in advance for opening an issue essentially to ask a question, I'm limited in terms of places to turn for guidance on this one!

    I know this feature isn't technically supported, but I've been trying to this plugin to work with my own custom HRTFs in Unity. I think I sorta understand how it's supposed to work, from a combination of the guide posted on the page for the app on Steam and trial and error, but I've hit something of a dead end.

    I have three functions (assigned to the _____callback variables in the HrtfParams): public void onLoadHrtf(int numSamples, int numSpectrumSamples, Phonon.FFTHelper fft, System.IntPtr data) public void onUnloadHrtf() public void onLookupHrtf(System.IntPtr direction, System.IntPtr leftHrtf, System.IntPtr rightHrtf)

    • onLoadHrtf fetches the HRTF set I'm using, processes it as needed, and stores it in the IntPtr named data (there don't seem to be any issues with this function currently)
    • onUnloadHrtf currently does nothing because of the thing I'm stuck on, but I understand it should get rid of the HRTF set I've loaded
    • onLookupHrtf should read the Vector3 stored at direction, then identify the correct left/right HRTFs in my dataset, and copy them into leftHrtf and rightHrtf spots in memory

    However, the problem is that I can't find any way to access my HRTF set once I've loaded it using onLoadHrtf! I've checked, as far as I can tell, every class in the Phonon namespace going entirely off Visual Studio prompts that pop up when I start typing "phonon."

    I don't know if I'm misunderstanding the intended way of implementing this, or if it's actually impossible to get custom HRTFs working with this plugin at the moment, literally any tips/pointers would be so appreciated - I'm utterly stumped!

    opened by gilmoregrills 11
  • Android ARM64 is completely broken (v4.0.2). Only ARMv7 works. (Unity + IL2CPP + Oculus Quest 2)

    Android ARM64 is completely broken (v4.0.2). Only ARMv7 works. (Unity + IL2CPP + Oculus Quest 2)

    I have integrated Steam Audio 4.0.2 in my Unity project by installing the "SteamAudio.unitypackage". I am targeting Android (Oculus Quest 2) with the IL2CPP scripting backend.

    By default, the target architecture of my project was initially set to ARMv7, and builds with this configuration ran just fine on the Oculus Quest 2.

    However, I just changed the target architecture to ARM64 (recommended by Oculus due to performance) and this causes Steam Audio to completely stop functioning in Android builds. I am faced with a multitude of errors that are constantly streaming (unable to load DLL 'phonon'), no spatialized audio sources play, and the game sometimes crashes. What can be done to fix Steam Audio for ARM64?

    See images below:

    ARMv7 ARM64 Error 01 Error 03 Error 04 (Logs from the Oculus Quest were taken via Android Logcat in Unity)

    opened by ForemanDesigns 10
  • [Unity] Steam Audio + FMod 2.01 Attenuation/Occlusion/Reflection broken

    [Unity] Steam Audio + FMod 2.01 Attenuation/Occlusion/Reflection broken

    I'm trying to implement Steam Audio together with FMOD 2.01. So far sounds work and binaural works as well but what doesn't work is any attenuation (all sound plays at the same volume at every single distance) and the reflections/occlusion don't work.

    I've exported the scene and put a SteamAudioSource on it, but it simply refuses to work.

    Is this a problem with FMod 2.0?

    opened by stepperman 10
  • Unity Geometry Materials Not Working - No Effect On Sound

    Unity Geometry Materials Not Working - No Effect On Sound

    Hello

    I'm very new to the world of Unity so there is a strong possibility I'm missing something glaringly obvious, but here goes!

    Firstly, if this makes a difference, I am using Mac OS.

    I'm trying to create and immersive sound experience, in which a user can move the player around and hear full 3D sound, complete with HRTF and have the materials of the room effect the audio sources eg echoes, occlusion etc. However, although I am getting a 3D sound as far as directivity is concerned, the geometry of the environment has no effect on my audio sources.

    Following the documentation supplied by Steam Audio, I have created my project, imported the Steam Audio Package and selected Steam Audio for my Spatializer Plugin and Ambisonic Plugin.

    After selecting Steam Audio from the Window tab, I have created my walls and floor using cubes, stored them in an empty object, and tagged the empty object with a Steam Audio Geometry component and selected Export All Children. Then, I have added Steam Audio Material component and selected Concrete (I thought this would give an obvious echo to test). The documentation then suggest Pre-Export Scene in Window>Steam Audio 'to ensure scene setup changes are available to Steam Audio'. I don't fully understand the importance of this so there might be something here where I am going wrong.

    Once I have quickly create a player using a capsule and camera, I add a Steam Audio Listener to the camera, and create a Cube to attach my Audio Source to. I check 'Play On Awake' and 'Loop', 'Spatial Blend' is set to '3D' and check 'Spatialize'. After adding a Steam Audio Source to my cube, the setup in this component is; Direct Binaural - checked; HRTF Interpolation - Bilinear; Direct Sound Occlusion - On, Frequency Dependant Transmission; Occlusion Method -Raycast; Physics Based Attenuation - checked; Air Absorption - checked;

    I also have Indirect sound; Reflections checked, simulation type at Realtime and Indirect Binaural checked.

    Now, I don't believe there is anything I have missed but the materials in the space seem to have no effect on the sound.

    Sorry if there is a lot to read through, but I didn't know a better way to describe it. I'm pulling my hair out as I can't see why this isn't working and I'm hoping it's a really silly mistake!

    Any ideas?

    Thanks in Advance

    opened by CraigApps 10
  • Random Unity crashes with

    Random Unity crashes with "phonon.dll caused an Access Violation" after upgrade to 4.0.0

    Hello!

    First, congrats on the 4.0.0 version release, it's looking (well sounding) awesome! (also love the reason for the new version number).

    We have been using Steam Audio with Unity probably over a year in our project with no issues. After I've upgraded our project to 4.0.0 version, we started getting reports of random crashes from some of our players, caused by Access Violation in phonon.dll

    Below I've attached a few of the crash dumps that we collected from our users: Steam Audio 4.0.0 Crashes.zip

    Unfortunately I am not certain how to replicate this, as the crashes are seemingly random and only affect some users from what I can tell. I hope the crash dumps are sufficient, but let me know if there's anything more from my end that I could provide.

    After downgrading back to 2.0-beta20 the crashes have stopped.

    Most of the crashes seem to occur in the rtcUpdateBuffer function. The stacktraces look typically like this:

    Stack Trace of Crashed Thread 8816:
    0x00007FFD5FD79745 (phonon) rtcUpdateBuffer
    0x00007FFD5FDE970E (phonon) embree::TaskScheduler::wait
    0x00007FFD5FDE9C58 (phonon) embree::TaskScheduler::wait
    0x00007FFD5FE1311F (phonon) iplContextRetain
    0x00007FFDB68FC774 (audioplugin_phonon) UnityGetAudioEffectDefinitions
    0x00007FFD893C2666 (UnityPlayer) UnityMain
    0x00007FFD898C5CC8 (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD898C596A (UnityPlayer) UnityMain
    0x00007FFD899370E1 (UnityPlayer) UnityMain
    0x00007FFD898E6269 (UnityPlayer) UnityMain
    0x00007FFD89932394 (UnityPlayer) UnityMain
    0x00007FFD898BE926 (UnityPlayer) UnityMain
    0x00007FFD89D629E0 (UnityPlayer) UnityMain
    0x00007FFDD5B27034 (KERNEL32) BaseThreadInitThunk
    0x00007FFDD7762651 (ntdll) RtlUserThreadStart
    
    opened by Frooxius 9
  • The state of Steam Audio

    The state of Steam Audio

    Hi, I revisited steam audio today, about 2 years later. It seems oclussion is still too agressive (No diffraction #9) and it also cuts of audio in wierd ways when moving through door ways and similar. What's the general state of the software? It seems it was a long time since project members were active here in the issue section?

    Here I showcase some of my problems, steam audio 2 beta 17

    https://youtu.be/77pR0z87-T4

    opened by AndersMalmgren 9
  • Fix compatibility with Enter Play Mode options

    Fix compatibility with Enter Play Mode options

    Unity allows developers to speed up iteration time in Editor with Play Mode options (https://docs.unity3d.com/Manual/ConfigurableEnterPlayMode.html). However, currently using any of the two options doesn't work with Steam Audio. This PR addreses this.

    Disabling Scene Reload causes the SceneManager.sceneLoaded event to not be fired on initialization. When this option is enabled, OnSceneLoaded has to be called manually. This should address #219 and potentially #225.

    Disabling Domain Reload leaves the SceneManager event handlers still subscribed even when SteamAudioManager is destroyed, which can be fixed by explicitly unsubscribing during shutdown. Tested on Unity 2021.3

    opened by Matusson 0
  • SteamAudio/Phonon with Low Level Fmod Dsp Effect

    SteamAudio/Phonon with Low Level Fmod Dsp Effect

    Hi!

    I'm sorry if this isn't the correct place to post, but...

    Is there any official documentation on how to use the SteamAudio Fmod plugin (phonon_fmod) with the low level Fmod Api?

    Right now, I'm trying the following:

    • Load the Fmod system;
    • Create a channel group;
    • Load a sound file;
    • Set the loaded sound to 3d mode and to loop;
    • Create a channel on the channel group;
    • Play the loaded sound on the created channel;
    • Load the phonon plugin (phonon_fmod.dll);
    • Create a Steam Audio Spatializer dsp effect from the loaded plugin;
    • Set the first parameter (source) of the created dsp with a instance of FMOD_DSP_PARAMETER_3DATTRIBUTES;
    • Attach the created dsp to the channel;
    • At this point the channel becomes mute.

    I used to follow the previous steps with the 2.0 version of the plugin. But after updating to the 4.1.1, the fmod channel becomes mute when I insert the dsp on the channel.

    So... Is there any official documentation on how to use the SteamAudio Fmod plugin (phonon_fmod) with the low level Fmod Api?

    opened by CDanSantana 3
  • [UE4.27] Reverb introduces massive crackling to sound

    [UE4.27] Reverb introduces massive crackling to sound

    Hello,

    I can't get steam audio reverb to work in Unreal Engine 4.27. When I follow the Steam Audio documentation it always introduces a massive crackling to the sound that it is used on. Tried many different settings without any luck. My wild guess is, that something is not right in the SoundEffectSubmixPreset(SteamAudioReverbSubmixPlugin). But I have no Idea.

    Here is a Link to a default project with the issue. https://drive.google.com/file/d/1VBHhfB4XfvmNXO7YARUJPk014D7PC3dv/view?usp=share_link

    opened by rePewtr 2
  • [Unity] NullReferenceException if `AudioListener` component isn't present when `SteamAudioManager.AutoInitialize` is invoked

    [Unity] NullReferenceException if `AudioListener` component isn't present when `SteamAudioManager.AutoInitialize` is invoked

    In projects where an AudioListener instance is not present until after SteamAudioManager.AutoInitialize is invoked on entering play mode/starting the app, SteamAudioManager.OnSceneLoaded:L399 will cause a NullReferenceException to be thrown, as both UnityAudioEngineStateHelpers and FMODStudioAudioEngineStateHelpers attempt to return the Transform of a found AudioListener component without first checking if that component actually exists i.e. is not null.

    mListener = AudioEngineStateHelpers.Create(SteamAudioSettings.Singleton.audioEngine).GetListenerTransform();
    

    This could occur for a number of legitimate architectural reasons, e.g. additively loading a camera rig scene containing an audio listener or instantiating an environment-specific camera rig prefab after the Steam Audio Manager instance has been initialized.

    To fix this, I would suggest that implementers of AudioEngineStateHelpers.GetListenerTransform should return null if an AudioListener component is not found, and all usages of SteamAudioManager.mListener should also first check if that reference is null before proceeding.

    opened by robinnorth 0
  • [UE4.27] Crashes when running dedicated server with the plugin enabled

    [UE4.27] Crashes when running dedicated server with the plugin enabled

    2022.10.01-13.24.05:159][  0]LogWindows: Error: === Critical error: ===
    [2022.10.01-13.24.05:160][  0]LogWindows: Error: 
    [2022.10.01-13.24.05:160][  0]LogWindows: Error: Fatal error!
    [2022.10.01-13.24.05:160][  0]LogWindows: Error: 
    [2022.10.01-13.24.05:161][  0]LogWindows: Error: Unhandled Exception: EXCEPTION_INT_DIVIDE_BY_ZERO
    [2022.10.01-13.24.05:161][  0]LogWindows: Error: 
    [2022.10.01-13.24.05:161][  0]LogWindows: Error: [Callstack] 0x00007fffd1902c08 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:161][  0]LogWindows: Error: [Callstack] 0x00007fffd2a45706 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:162][  0]LogWindows: Error: [Callstack] 0x00007fffd1917ed6 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:162][  0]LogWindows: Error: [Callstack] 0x00007fffd2a598ed phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:162][  0]LogWindows: Error: [Callstack] 0x00007fffd2a58b85 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:163][  0]LogWindows: Error: [Callstack] 0x00007fffd19201e4 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:163][  0]LogWindows: Error: [Callstack] 0x00007fffd191f99f phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:163][  0]LogWindows: Error: [Callstack] 0x00007fffd191f753 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:163][  0]LogWindows: Error: [Callstack] 0x00007fffd2a66651 phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:164][  0]LogWindows: Error: [Callstack] 0x00007fffd2a667dd phonon.dll!UnknownFunction []
    [2022.10.01-13.24.05:164][  0]LogWindows: Error: [Callstack] 0x00007ff65a4f33d6 Game.exe!SteamAudio::FSteamAudioManager::InitializeSteamAudio() [C:\Game Development\Perforce\Game\Game\Plugins\SteamAudio\Source\SteamAudio\Private\SteamAudioManager.cpp:289]
    [2022.10.01-13.24.05:164][  0]LogWindows: Error: [Callstack] 0x00007ff65a4f4ed4 Game.exe!SteamAudio::FSteamAudioModule::OnEngineLoopInitComplete() [C:\Game Development\Perforce\Game\Game\Plugins\SteamAudio\Source\SteamAudio\Private\SteamAudioModule.cpp:109]
    [2022.10.01-13.24.05:164][  0]LogWindows: Error: [Callstack] 0x00007ff65a4ef6ae Game.exe!TBaseRawMethodDelegateInstance<0,SteamAudio::FSteamAudioModule,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:469]
    [2022.10.01-13.24.05:165][  0]LogWindows: Error: [Callstack] 0x00007ff65a18821d Game.exe!TMulticastDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::Broadcast() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Core\Public\Delegates\DelegateSignatureImpl.inl:955]
    [2022.10.01-13.24.05:165][  0]LogWindows: Error: [Callstack] 0x00007ff65a177c4e Game.exe!FEngineLoop::Init() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:4130]
    [2022.10.01-13.24.05:165][  0]LogWindows: Error: [Callstack] 0x00007ff65a18feb3 Game.exe!GuardedMain() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Launch\Private\Launch.cpp:160]
    [2022.10.01-13.24.05:166][  0]LogWindows: Error: [Callstack] 0x00007ff65a1900da Game.exe!GuardedMainWrapper() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:137]
    [2022.10.01-13.24.05:166][  0]LogWindows: Error: [Callstack] 0x00007ff65a19214c Game.exe!LaunchWindowsStartup() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:273]
    [2022.10.01-13.24.05:166][  0]LogWindows: Error: [Callstack] 0x00007ff65a1a08d4 Game.exe!WinMain() [C:\Game Development\Git\UnrealEngine\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:321]
    [2022.10.01-13.24.05:166][  0]LogWindows: Error: [Callstack] 0x00007ff66144b12e Game.exe!__scrt_common_main_seh() [d:\a01\_work\12\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
    [2022.10.01-13.24.05:167][  0]LogWindows: Error: [Callstack] 0x00007ff8a4a054e0 KERNEL32.DLL!UnknownFunction []
    [2022.10.01-13.24.05:167][  0]LogWindows: Error: [Callstack] 0x00007ff8a5ae485b ntdll.dll!UnknownFunction []
    [2022.10.01-13.24.05:167][  0]LogWindows: Error: 
    [2022.10.01-13.24.05:171][  0]LogExit: Executing StaticShutdownAfterError
    [2022.10.01-13.24.05:186][  0]LogWindows: FPlatformMisc::RequestExit(1)
    [2022.10.01-13.24.05:186][  0]LogWindows: FPlatformMisc::RequestExitWithStatus(1, 3)
    [2022.10.01-13.24.05:186][  0]LogCore: Engine exit requested (reason: Win RequestExit)
    [2022.10.01-13.24.05:195][  0]Log file closed, 10/02/22 02:24:05
    
    opened by RyroNZ 0
Releases(v4.1.2)
  • v4.1.2(Nov 22, 2022)

    Steam Audio SDK 4.1.2

    • Allow hybrid reverb effect to be used with a NULL impulse response, in which case it's equivalent to parametric reverb.
    • Allow the Ambisonics decode effect to be used with a NULL HRTF. (https://github.com/ValveSoftware/steam-audio/issues/218)
    • Updated to latest version of libmysofa.
    • Fix crashes when adding/removing static meshes when using Embree. (https://github.com/ValveSoftware/steam-audio/issues/221)
    • Fix bug in surface area calculations for the default ray tracer on ARM CPUs.
    • Fix crash when exporting to OBJ when using Embree. (https://github.com/ValveSoftware/steam-audio/issues/215)
    • Fix crash when creating a static mesh with certain kinds of degenerate geometry using the default ray tracer. (https://github.com/ValveSoftware/steam-audio/issues/216)
    • Fix crash in sample API sample program.

    Steam Audio Unity Plugin 4.1.2

    • Updated to use Steam Audio SDK 4.1.2.
    • Updated to use Steam Audio FMOD Studio Plugin 4.1.2.
    • Potential fix for various crashes caused by using SetSpatializerFloat to send a float* from managed code to native code.
    • Fix issue where mixer return effect would sometimes emit silence. (https://github.com/ValveSoftware/steam-audio/issues/197) (https://github.com/ValveSoftware/steam-audio/issues/223)
    • Fix issue where reverb would not work after calling Reinitialize().
    • If Unity passes a mono output buffer to the spatialize effect, do nothing.
    • Add a menu command to copy FMOD Studio plugins to the correct directory based on the version of FMOD Studio used.

    Steam Audio Unreal Engine Plugin 4.1.2

    • Updated to use Steam Audio SDK 4.1.2.
    • Updated to use Steam Audio FMOD Studio Plugin 4.1.2.

    Steam Audio FMOD Studio Plugin 4.1.2

    • Updated to use Steam Audio SDK 4.1.2.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.1.2.zip(121.61 MB)
    steamaudio_fmod_4.1.2.zip(113.50 MB)
    steamaudio_unity_4.1.2.zip(106.71 MB)
    steamaudio_unreal_4.1.2.zip(169.35 MB)
  • v4.1.1(Jul 14, 2022)

  • v4.1.0(Jul 5, 2022)

    Steam Audio SDK 4.1.0

    • Added a new peakDelays parameter to IPLBinauralEffectParams. This is an output parameter that can be used to retrieve the left- and right- ear peak delays corresponding to the HRIRs applied by Steam Audio when iplBinauralEffectApply is called.
    • Fix crash in iplSimulatorCommit when the simulator has not been initialized for reflections. (https://github.com/ValveSoftware/steam-audio/issues/190)

    Steam Audio Unity Plugin 4.1.0

    • Updated to use Steam Audio SDK 4.1.0.
    • Updated for compatibility with Steam Audio FMOD Studio Plugin 4.1.0.
    • Fixed bug where probe generation failed if the Steam Audio Static Mesh was not in a root-level GameObject. (https://github.com/ValveSoftware/steam-audio/issues/183)
    • Fixed memory leak in Steam Audio Source component. (https://github.com/ValveSoftware/steam-audio/issues/199)
    • Potential fix for crash in setParam callback of the spatializer effect. (https://github.com/ValveSoftware/steam-audio/issues/189)

    Steam Audio Unreal Engine Plugin 4.1.0

    This is a major update to the Steam Audio Unreal Engine plugin, and is not backwards-compatible with previous releases.

    Steam Audio Unreal Engine Plugin 4.1.0 requires Unreal Engine 4.27 or later.

    Major New Features

    • Updated to use Steam Audio SDK 4.1.0.
    • Added support for using Steam Audio in Unreal Engine with FMOD Studio. Events authored in FMOD Studio can now use occlusion, transmission, reverb, pathing, etc. simulated in your Unreal Engine levels.
    • Sublevels, including streaming sublevels, are now supported. Geometry data can be exported for all open sublevels, or selectively for the currently active sublevel. When sublevels are streamed in or out, Steam Audio will automatically add (or remove) the relevant geometry from its internal copy for simulation.
    • Blueprint classes can be configured as dynamic geometry. Instances of the Blueprint class will automatically affect sound propagation as they are instantiated, destroyed, or moved.
    • Added support for Linux and macOS (precompiled binaries for macOS are not provided in this release, but will be added in a subsequent patch release).
    • Exported scene data and baked probe data is stored in .uasset files. This simplifies the process of packaging your project.
    • The plugin UI has been significantly updated, in particular to allow the use of new Steam Audio features like pathing and hybrid reverb.
    • The documentation has been significantly updated.

    Improvements

    • Occlusion and transmission simulation now run in the main thread.
    • Distance attenuation, air absorption, and directivity calculations are now run in the audio thread.
    • The update rate of reflection and pathing simulation can be controlled using the Simulation Update Interval parameter.

    Steam Audio FMOD Studio Plugin 4.1.0

    • Updated to use Steam Audio SDK 4.1.0.
    • Added option for toggling whether to use HRTF or panning when rendering the direct sound path.
    • Added support for event-level min/max distance range, introduced in FMOD Studio 2.02. (https://github.com/ValveSoftware/steam-audio/issues/193)
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.1.0.zip(121.92 MB)
    steamaudio_fmod_4.1.0.zip(113.80 MB)
    steamaudio_unity_4.1.0.zip(106.01 MB)
    steamaudio_unreal_4.1.0.zip(188.68 MB)
  • v4.0.3(Nov 17, 2021)

    Steam Audio SDK 4.0.3

    • Fixed issue where 64-bit ARM Android binary (libphonon.so) would not load successfully due to unresolved external symbols. (https://github.com/ValveSoftware/steam-audio/issues/172)
    • Performance improvement in Ambisonics Panning/Decode Effect.

    Steam Audio Unity Plugin 4.0.3

    • Updated to use Steam Audio SDK 4.0.3.

    Steam Audio FMOD Studio Plugin 4.0.3

    • Updated to use Steam Audio SDK 4.0.3.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.0.3.zip(120.83 MB)
    steamaudio_fmod_4.0.3.zip(113.34 MB)
    steamaudio_unity_4.0.3.zip(100.43 MB)
  • v4.0.2(Oct 11, 2021)

    Steam Audio SDK 4.0.2

    • Fixed crash in iplPathBakerBake if the progress callback is set to NULL. (https://github.com/ValveSoftware/steam-audio/issues/167)
    • Fixed memory leak in Ambisonics Binaural Effect / Ambisonics Decode Effect. (https://github.com/ValveSoftware/steam-audio/issues/168)
    • Fixed crash when pathing simulation is run without baked pathing data being present. (https://github.com/ValveSoftware/steam-audio/issues/169)

    Steam Audio Unity Plugin 4.0.2

    • Updated to use Steam Audio SDK 4.0.2.
    • Fixed some intermittent crashes when using the Steam Audio Spatializer plugin. (https://github.com/ValveSoftware/steam-audio/issues/169)

    Steam Audio FMOD Studio Plugin 4.0.2

    • Updated to use Steam Audio SDK 4.0.2.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.0.2.zip(136.02 MB)
    steamaudio_fmod_4.0.2.zip(126.87 MB)
    steamaudio_unity_4.0.2.zip(113.27 MB)
  • v4.0.1(Sep 13, 2021)

    Steam Audio SDK 4.0.1

    • Fixed issue in the sample program included in the documentation. (https://github.com/ValveSoftware/steam-audio/issues/156)
    • Fixed crash when using custom ray tracer callbacks for reflection/reverb simulation. (https://github.com/ValveSoftware/steam-audio/issues/158)
    • Fixed bug with updating reflections from dynamic geometry. (https://github.com/ValveSoftware/steam-audio/issues/159)
    • Fixed crash when using Radeon Rays to trace rays into a scene with no static meshes. (https://github.com/ValveSoftware/steam-audio/issues/160)
    • Fixed C compiler error in phonon.h due to empty structs. (https://github.com/ValveSoftware/steam-audio/issues/161)
    • Fixed a performance regression in code that uses AVX instructions.
    • Update to IPP v2021.3.
    • Update to latest version of libmysofa.

    Steam Audio Unity Plugin 4.0.1

    • Updated to use Steam Audio SDK 4.0.1.
    • Added "Direct Binaural" checkbox to Steam Audio Source, to toggle between binaural (2-channel) and panning (multi-channel speaker layouts).
    • Fixed issue in documentation regarding the maximum Ambisonic order supported by Unity.

    Steam Audio FMOD Studio Plugin 4.0.1

    • Updated to use Steam Audio SDK 4.0.1.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.0.1.zip(135.99 MB)
    steamaudio_fmod_4.0.1.zip(126.84 MB)
    steamaudio_unity_4.0.1.zip(113.25 MB)
  • v4.0.0(Jul 22, 2021)

    Steam Audio SDK 4.0.0

    This is a major update to the Steam Audio SDK, and is not backwards-compatible with previous releases.

    Major New Features

    This release of Steam Audio introduces the following major new features:

    • Pathing. Steam Audio can simulate and bake propagation paths from moving sources to moving listeners. This allows modeling how sound travels along corridors, through doorways, etc., and applying the appropriate filters and spatialization. Baked paths can also be updated in real-time to respond to occlusions by moving geometry.
    • Hybrid Reverb. Steam Audio can render reflections and reverb using a technique called hybrid reverb. This is a hybrid of convolution reverb and parametric (artificial) reverb, which involves rendering the early reflections using convolution, and the late reverberation tail using parametric reverb. This allows realistic rendering of large, reverberant spaces, as well as detailed early reflections, with reduced CPU usage as compared to pure convolution reverb. Hybrid reverb also allows the reverb tail length to be controlled by designers to override the simulation results.
    • The Steam Audio API has been significantly updated. One of the main changes is a cleaner separation between simulation and rendering, which provides more opportunities for designers (or custom game code) to intervene and fine-tune the results generated by Steam Audio. It also allows simulation results to be used outside of spatial audio rendering, for example, the loudness of sound propagation paths can be used to drive enemy AI.
    • The API documentation has been significantly updated.

    Improvements

    • InstancedMesh objects (dynamic geometry) are now supported using the Phonon ray tracer. In particular, this allows dynamic geometry to be supported on Android.
    • Direct path simulation (i.e., occlusion, transmission, etc.), reflection simulation, and pathing simulation can be run concurrently.
    • Switched to using FlatBuffers for serialization.
    • Materials are now stored in StaticMesh objects instead of Scene objects. This allows static meshes to be easily added and removed from a scene.
    • OpenCL can now be initialized using existing command queues, instead of newly-created command queues in a newly-created context.
    • Embree and Radeon Rays are now statically linked into Steam Audio.
    • Upgraded TrueAudio Next to v1.3.1.1.

    Fixes

    • Disabled flushing denormal numbers to zero by default.
    • Fixed various potential crashes when using Radeon Rays.
    • Fixed bug in BVH construction when using the Phonon ray tracer.
    • Fixed bug in convolution reverb on Android.

    Steam Audio Unity Plugin 4.0.0

    This is a major update to the Steam Audio Unity Plugin, and is not backwards-compatible with previous releases.

    Steam Audio Unity Plugin 4.0.0 requires Unity 2017.3 or later.

    Major New Features

    • Updated to use Steam Audio SDK 4.0.0.
    • Additive scenes are now fully supported. Multiple scenes can be additively opened in the editor, and exported to separate files. At run-time, scenes can be additively loaded (and unloaded), and Steam Audio will automatically add (and remove) the relevant geometry from its internal copy for simulation.
    • Exported scene data and baked probe data is stored in .asset files, which can be placed anywhere in in your project's Assets directory, and referenced from within scenes or prefabs. This allows generation of self-contained AssetBundles that contain all necessary Steam Audio data referenced by scenes or prefabs in the AssetBundle. https://github.com/ValveSoftware/steam-audio/issues/136
    • Steam Audio settings are now project-wide, instead of specified per-scene.
    • There is now a single .unitypackage to import, which includes all binaries for all platforms, including Embree, Radeon Rays, and TrueAudio Next integration, as well as FMOD Studio support. (If you're not using FMOD Studio, you can uncheck the FMOD directory when importing the package.)
    • The plugin UI has been significantly updated, in particular to allow the use of new Steam Audio features like pathing and hybrid reverb.
    • The documentation has been significantly updated.

    Improvements

    • Occlusion and transmission simulation now run in the main thread.
    • Distance attenuation, air absorption, and directivity calculations are now run in the audio thread.
    • The update rate of reflection and pathing simulation can be controlled using the Simulation Update Interval parameter.
    • The plugin's directory layout has been reorganized. C# scripts, native plugin binaries, and other data files are all placed in Assets/Plugins/SteamAudio.
    • The project-wide settings are placed in the Assets/Plugins/SteamAudio/Resources/SteamAudioSettings.asset file.
    • Acoustic materials are now placed in .asset files. The built-in materials are available in Assets/Plugins/SteamAudio/Resources/Materials. You can create your own materials and place them anywhere, and reference them from Steam Audio Geometry components.

    Fixes

    • Fix various unnecessary GC allocations.
    • Added a workaround for a potential issue in Unity where distant sounds may play with the wrong volume for the first few frames.
    • phonon_fmod.dll (or libphonon_fmod.so, etc.) is placed in the correct place in the Assets folder, so FMOD Studio can find and load it.

    Steam Audio FMOD Studio Plugin 4.0.0

    This is a major update to the Steam Audio FMOD Studio plugin, and is not backwards-compatible with previous releases.

    Steam Audio FMOD Studio Plugin 4.0.0 requires FMOD Studio 2.0 or later.

    Major New Features

    • The plugin UI has been significantly updated.
    • The documentation has been significantly updated.

    Improvements

    • Distance attenuation, air absorption, and directivity calculations are now run in the audio thread.
    • Distance attenuation curves can be edited directly on the Steam Audio Spatializer. This means you no longer need to add an FMOD Spatializer effect just to control the distance attenuation curve.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_4.0.0.zip(140.41 MB)
    steamaudio_fmod_4.0.0.zip(131.27 MB)
    steamaudio_unity_4.0.0.zip(116.54 MB)
  • v2.0-beta.20(Apr 13, 2021)

    Steam Audio Unity Plugin 2.0-beta.20

    • Added a workaround for a bug in Unity 2018.4+, where spatialized Audio Sources may play at the wrong volume for the first few frames.
    • Fixed a few intermittent CPU usage spikes caused by unnecessary GC allocations.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.20.zip(105.24 MB)
    steamaudio_fmod_2.0-beta.20.zip(40.78 MB)
    steamaudio_radeonrays_2.0-beta.20.zip(316.71 KB)
    steamaudio_tan_2.0-beta.20.zip(959.15 KB)
    steamaudio_unity_2.0-beta.20.zip(85.72 MB)
  • v2.0-beta.19(Nov 18, 2020)

    Steam Audio SDK 2.0-beta.19

    • Embree is now supported on x86 platforms on Windows and Linux.
    • Fixed issues caused by modifying the CPU's handling floating-point denormal values on x86 and x64 processors.

    Steam Audio Unity Plugin 2.0-beta.19

    • Updated to use Steam Audio SDK 2.0-beta.19.
    • Added support for additive scenes.
    • No separate package needs to be imported to enable Embree support.
    • Embree is now supported on x86 platforms on Windows and Linux.
    • Adds a log message if no data has been baked for Steam Audio Source that has Baked Static Source and reflections set.
    • Fixed a crash when audio settings are changed for a Unity project.
    • Fixed multiple issues caused by modifying the CPU's handling floating-point denormal values on x86 and x64 processors.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.19.zip(105.24 MB)
    steamaudio_fmod_2.0-beta.19.zip(40.78 MB)
    steamaudio_radeonrays_2.0-beta.19.zip(316.77 KB)
    steamaudio_tan_2.0-beta.19.zip(959.23 KB)
    steamaudio_unity_2.0-beta.19.zip(85.71 MB)
  • v2.0-beta.18(Apr 22, 2020)

    Steam Audio SDK 2.0-beta.18

    • Extended Android support to include 64-bit ARM (armv8/arm64/aarch64), 32-bit Intel (x86), and 64-bit Intel (x64/x86_64/amd64) CPUs.
    • Added support for spatial blend in the binaural effect, which smoothly blends between fully-spatialized point source and unspatialized stereo input audio.
    • Added support for custom distance attenuation and air absorption curves, which affect both direct and indirect sound.
    • Enabled the number of volumetric occlusion samples to be specified separately for each source, and to be changed on the fly.
    • Improved quality of bilinear interpolation when using custom HRTFs from SOFA files.
    • Reduced unwanted volume boost in reflected sound when source and listener are both close to geometry.
    • Modified behavior of baked indirect sound to continue using previous impulse response if no baked data is available for the current source/listener position.
    • Reduced data size of baked indirect sound.
    • Improved performance of various operations.
    • Fixed popping artifact in baked reverb when the listener is at the exact same position as a probe.
    • Fixed bug where impulse responses were not properly updated in some cases when the source or listener position changed.
    • Fixed bug in Ambisonics rotation where rotations were not properly interpolated from one frame to the next.
    • Fixed crash when adding or removing instanced meshes while a simulation is running.
    • Fixed crash due to source directivity information not being initialized correctly.
    • Fixed crash when trying to initialize Radeon Rays on non-AMD GPUs.
    • Fixed crash when trying to initialize Radeon Rays or TrueAudio Next when multiple OpenCL drivers are installed (e.g., Intel for CPU and AMD for GPU).

    Steam Audio Unity Plugin 2.0-beta.18

    • Updated to use Steam Audio SDK 2.0-beta.18.
    • Updated to be compatible with Steam Audio FMOD Studio Plugin 2.0-beta.18.
    • Extended Android support to include 64-bit ARM (armv8/arm64/aarch64) and 32-bit Intel (x86) CPUs.
    • Updated Steam Audio Spatializer effect to use the Audio Source's Spatial Blend parameter to drive the new spatial blend feature, which smoothly blends between fully-spatialized point source and unspatialized stereo input audio. In addition, Spatial Blend also affects distance attenuation (but not occlusion, indirect sound, etc.).
    • Enabled custom distance attenuation curves authored in an Audio Source component to affect direct and indirect sound rendered by the spatializer plugin.
    • Fixed unnecessary GC allocations when using Unity's built-in ray tracer.
    • Fixed build errors when using the IL2CPP backend.
    • Fixed bug where static geometry export included disabled GameObjects.
    • Fixed bug where indirect sound was incorrect if the Audio Listener was scaled. The new behavior allows the Audio Listener to be uniformly scaled (non-uniform scales are currently not supported).
    • Fixed bug where scaling an Audio Source playing an Ambisonic audio clip would result in volume changes.
    • Fixed bug where source and listener transforms were not applied correctly when decoding Ambisonic audio clips.
    • Fixed bug where playing an Ambisonic audio clip with the output format set to 5.1/7.1 would result in crackling.
    • Fixed bug where spatializing an Audio Source at the same position as the Audio Listener would result in silence.
    • Fixed bug where spatialized Audio Sources were occasionally initialized incorrectly, causing all audio output to be silent.
    • Fixed bug where the first few frames of a spatialized Audio Source with a Steam Audio Source attached would play with incorrect occlusion settings.
    • Fixed bug where occlusion settings were not properly updated when a GameObject containing the Steam Audio Source was enabled and/or disabled.
    • Fixed crash when trying to initialize Radeon Rays on non-AMD GPUs.
    • Fixed crash when trying to initialize Radeon Rays or TrueAudio Next when multiple OpenCL drivers are installed (e.g., Intel for CPU and AMD for GPU).

    Steam Audio FMOD Studio Plugin 2.0-beta.18

    • Updated to use Steam Audio SDK 2.0-beta.18.
    • Extended Android support to include 64-bit ARM (armv8/arm64/aarch64) and 32-bit Intel (x86) CPUs.
    • Fixed bug with FMOD Studio + Unity integration where switching scenes or reloading scenes at runtime would result in silence.

    Contributor List for Steam Audio 2.0-beta.18

    • @Schroedingers-Cat
    • @jonas-johansson
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.18.zip(67.41 MB)
    steamaudio_embree_2.0-beta.18.zip(73.28 MB)
    steamaudio_fmod_2.0-beta.18.zip(23.23 MB)
    steamaudio_radeonrays_2.0-beta.18.zip(316.70 KB)
    steamaudio_tan_2.0-beta.18.zip(959.15 KB)
    steamaudio_unity_2.0-beta.18.zip(55.94 MB)
  • v2.0-beta.17(Feb 21, 2019)

    Steam Audio SDK 2.0-beta.17

    • Added support for instanced meshes, which allow geometry to be moved (via rigid-body motion) freely within a scene. Instanced meshes can also be added to and removed from a scene at run-time. Instanced meshes are initially supported using the Intel Embree ray tracer only.
    • Added support for Dual RTQ when using TrueAudio Next and/or Radeon Rays on AMD GPUs. This feature allows the creation of up to 2 sets of reserved CUs, leaving the remaining unreserved CUs for graphics and general compute. This requires AMD Radeon Software Adrenalin 2019 Edition v19.2.1 or later. Previously only 1 set of reserved CUs could be created.
    • Added support for using the AMD Radeon Rays ray tracer for real-time simulation in addition to baking.
    • Added a new scene-wide parameter to IPLSimulationSettings, called irradianceMinDistance. This allows limiting the amount of energy reflected by a surface that's very close to a point source, as might happen when baking a probe that has been placed too close to wall.
    • Updated AMD TrueAudio Next support to v1.2.2.4, which adds support for non-uniform partitioned convolution. This feature improves convolution performance when using small frame sizes (64 samples or fewer).
    • Updated custom ray tracer integration to use the batched any-hit callback when performing visibility checks during baked data lookup.
    • Updated iplSetAmbisonicsRotation to take the listener orientation as a set of IPLVector3 parameters, rather than an IPLQuaternion.
    • Removed the IPLQuaternion struct.
    • Fixed bug where the influence radius of a probe generated with the IPL_PLACEMENT_CENTROID strategy was larger than the size of the containing probe box.
    • Fixed bug where TrueAudio Next could not be used to run convolution on the entire GPU (i.e., without CU reservation).
    • Fixed bug where impulse responses generated using Radeon Rays did not match those generated using Embree or the built-in ray tracer, due to incorrect handling of occluded rays.

    Steam Audio Unity Plugin 2.0-beta.17

    • Updated to use Steam Audio SDK 2.0-beta.17.
    • Updated to be compatible with Steam Audio FMOD Studio Plugin 2.0-beta.17.
    • Added the Steam Audio Dynamic Object component. The GameObject to which this is attached, and all of its children, are exported as instanced meshes, which means game code can move it (via rigid-body motion) freely through the scene, and occlusion, transmission, and real-time indirect sound will update accordingly. Steam Audio Dynamic Object components can be added to prefabs, which can be instantiated and destroyed freely at run-time, with corresponding updates to occlusion, transmission, and real-time indirect sound. This functionality is initially supported using the Intel Embree ray tracer only.
    • Added the Steam Audio Ambisonics decoder plugin, which can decode and spatialize up to first order Ambisonics clips. This plugin can use custom HRTFs loaded from SOFA files for spatialization.
    • Added a new scene-wide parameter to the simulation settings in the Steam Audio window, called Irradiance Min Distance. This allows limiting the amount of energy reflected by a surface that's very close to a point source, as might happen when baking a probe that has been placed too close to wall.
    • Updated the Steam Audio Reverb effect to output reverb only, without mixing in any dry signal. Wet-dry mix can be controlled using the Send/Receive or Wet/Dry Mix functionality built into Unity.
    • Updated the Steam Audio Custom Settings component to allow configuration of Dual RTQ functionality on AMD GPUs. CUs can be reserved for convolution (using TrueAudio Next) and IR update (using Radeon Rays + TrueAudio Next) independently.

    Steam Audio FMOD Studio Plugin 2.0-beta.17

    • Updated to use Steam Audio SDK 2.0-beta.17.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.17.zip(50.56 MB)
    steamaudio_embree_2.0-beta.17.zip(73.28 MB)
    steamaudio_fmod_2.0-beta.17.zip(19.67 MB)
    steamaudio_fmod_2.0-beta.17_2020-06-17.zip(20.27 MB)
    steamaudio_radeonrays_2.0-beta.17.zip(316.51 KB)
    steamaudio_tan_2.0-beta.17.zip(959.03 KB)
    steamaudio_unity_2.0-beta.17.zip(37.72 MB)
    steamaudio_unreal_2.0-beta.17_binaries.zip(55.09 MB)
    steamaudio_unreal_2.0-beta.17_binaries_2020-06-16.zip(48.35 MB)
  • v2.0-beta.16(Oct 25, 2018)

    Steam Audio SDK 2.0-beta.16

    • Added support for loading custom HRTF data from SOFA files.
    • Fixed potential performance issue when using baked indirect sound with Radeon Rays.
    • Fixed potential crash when using custom memory allocator callbacks.

    Steam Audio Unity Plugin 2.0-beta.16

    • Updated to use Steam Audio SDK 2.0-beta.16.
    • Added support for loading custom HRTF data from one or more SOFA files.
    • Added support for simulating occlusion by dynamic geometry, using Unity's built-in ray tracer.
    • Fixed behavior of the Spatial Blend setting of an Audio Source when spatialized using the Steam Audio Spatializer.

    Steam Audio FMOD Studio Plugin 2.0-beta.16

    • Updated to use Steam Audio SDK 2.0-beta.16, including compatibility with Intel Embree, AMD Radeon Rays, and multi-threaded simulation of indirect sound.
    • Added support for source directivity.
    • Added support for loading custom HRTF data from one or more SOFA files.
    • Fixed behavior of events spatialized using Steam Audio Spatializer to work correctly with FMOD Studio's virtualization system.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.16.zip(50.21 MB)
    steamaudio_embree_2.0-beta.16.zip(73.28 MB)
    steamaudio_fmod_2.0-beta.16.zip(25.14 MB)
    steamaudio_radeonrays_2.0-beta.16.zip(314.26 KB)
    steamaudio_tan_2.0-beta.16.zip(872.49 KB)
    steamaudio_unity_2.0-beta.16.zip(43.04 MB)
  • v2.0-beta.15(Aug 23, 2018)

    Steam Audio SDK 2.0-beta.15

    • Added multi-threading support for baking and real-time simulation of occlusion, reverb, and reflections. Multiple CPU cores can be used for real-time simulation and baking with the default ray tracer and Intel Embree.
    • Added support for GPU-accelerated baking using AMD Radeon Rays, which works on any modern AMD, NVIDIA, or other GPU. On PC platforms, using Radeon Rays for baking can result in over 100x speed-ups over the default ray tracer.
    • Fixed an issue where indirect sound would sometimes exhibit significant update lag when using TrueAudio Next for convolution.
    • Fixed a potential crash when using Embree for ray tracing.

    Steam Audio Unity Plugin 2.0-beta.15

    • Updated to use Steam Audio SDK 2.0-beta.15.
    • Added multi-threading support for the default ray tracer and Embree.
    • Added Radeon Rays support.
    • Fixed an issue where changing source or listener positions or orientations in the Scene tab would not correctly update the rendered audio when in Play mode. (This fix requires Unity 2018.2 or later.)

    Steam Audio FMOD Studio Plugin remains at version 2.0-beta.13.

    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.15.zip(60.83 MB)
    steamaudio_embree_2.0-beta.15.zip(73.28 MB)
    steamaudio_radeonrays_2.0-beta.15.zip(314.27 KB)
    steamaudio_tan_2.0-beta.15.zip(872.49 KB)
    steamaudio_unity_2.0-beta.15.zip(42.66 MB)
  • v2.0-beta.14(Jun 25, 2018)

    Steam Audio SDK 2.0-beta.14

    • Added support for Intel Embree. On PC platforms, enabling Embree results in a significant performance improvement in real-time simulation of occlusion, reverb, and reflections; as well as baking.
    • Added support for specifying sound source directivity patterns. Directivity patterns affect indirect sound (reflections) in addition to direct sound.
    • Added support for specifying any arbitrary directivity patterns using callback functions. An arbitrary directivity pattern specified this way will also affect indirect sound in addition to direct sound.
    • Updated TrueAudio Next support to use TrueAudio Next v1.2.2.3.
    • Fixed bug where binaural rendering could result in no sound being heard on Android.

    Steam Audio Unity Plugin 2.0-beta.14

    • Updated to use Steam Audio SDK 2.0-beta.14.
    • Added support for Intel Embree.
    • Added support for specifying and visualization source directivity patterns.
    • Fixed a crash when transitioning between scenes and the Convolution Option is changed between Phonon and TrueAudio Next.
    • Fixed a crash when transitioning between scenes while an occlusion-enabled source is playing.

    Steam Audio FMOD Studio Plugin remains at version 2.0-beta.13.

    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.14.chm(433.47 KB)
    steamaudio_api_2.0-beta.14.zip(60.55 MB)
    steamaudio_embree_2.0-beta.14.zip(73.28 MB)
    steamaudio_tan_2.0-beta.14.zip(872.46 KB)
    steamaudio_unity_2.0-beta.14.zip(42.66 MB)
  • v2.0-beta.13(Feb 5, 2018)

    Steam Audio SDK 2.0-beta.13

    • Added support for AMD TrueAudio Next. On supported AMD GPUs, this allows developers to reserve a portion of the user's GPU for accelerating convolution. Existing CPU-based convolution continues to be available.
    • Added callbacks for tracing batches of rays when using a custom ray tracer. This allows developers to use more efficient batched ray tracing approaches and reduce the amount of function call overhead.

    Steam Audio Unity Plugin 2.0-beta.13

    • Updated to use Steam Audio SDK 2.0-beta.13.
    • Updated to be compatible with Steam Audio FMOD Studio Plugin 2.0-beta.13.
    • Added support for AMD TrueAudio Next.
    • Fixed a crash when transitioning between scenes with different Ambisonics orders configured in their Steam Audio Managers.
    • Fixed a bug where occluded sources played without occlusion for the first few frames after a scene load.
    • Fixed a performance issue in the Steam Audio Probe Box UI when adjusting the Horizontal Spacing slider after creating probes.
    • Fixed a potential performance issue caused by the Steam Audio Source repeatedly querying for the Steam Audio Manager via FindObjectOfType.

    Steam Audio FMOD Studio Plugin 2.0-beta.13

    • Updated to use Steam Audio SDK 2.0-beta.13.
    • Added support for AMD TrueAudio Next.

    Steam Audio Unreal Engine Plugin 2.0-beta.13

    • Updated to use Steam Audio SDK 2.0-beta.13.
    • Added support for AMD TrueAudio Next.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.13.chm(428.84 KB)
    steamaudio_api_2.0-beta.13.zip(60.10 MB)
    steamaudio_fmod_2.0-beta.13.zip(6.72 MB)
    steamaudio_tan_2.0-beta.13.zip(864.81 KB)
    steamaudio_unity_2.0-beta.13.zip(42.26 MB)
    steamaudio_unreal_2.0-beta.13_binaries.zip(52.68 MB)
  • v2.0-beta.12(Jan 10, 2018)

    This is the 2.0-beta.12 release of the Steam Audio SDK. Changes from the previous release include:

    • (FMOD Studio) Steam Audio is now available as a plugin for FMOD Studio 1.10.01+. Source code and Windows binaries are available for download; other platforms may be built from source.
    • (FMOD Studio, Unity) The Steam Audio Unity plugin now supports using FMOD Studio as your audio engine. This is required if using the Steam Audio plugin in FMOD Studio.
    • (Unity) Fixed a bug where unoccluded sound is incorrectly played in the first few frames after an occluded Audio Source starts playing.
    • (Unity) Eliminated intermittent CPU spikes when using the Steam Audio Source component.
    • (FMOD Studio, Unity, Unreal) Documentation format changed to single page embedded HTML.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.12.chm(421.77 KB)
    steamaudio_api_2.0-beta.12.zip(60.06 MB)
    steamaudio_fmod_2.0-beta.12.zip(6.73 MB)
    steamaudio_unity_2.0-beta.12.zip(42.23 MB)
  • v2.0-beta.11(Dec 1, 2017)

    This is the 2.0-beta.11 release of the Steam Audio SDK. Changes from the previous release include:

    • (Unity) Fixed a bug where all audio stops playing when Unity applies a distance attenuation value of 0 to an Audio Source with Spatial Blend set to 3D.
    • (Unity) Fixed a bug where convolution reverb tails do not properly play when using the Steam Audio Mixer Return or Steam Audio Reverb effects. This issue persists when not using the Mixer Return, and is a known limitation of the Unity native audio engine.
    • (Unity) Fixed CPU usage spike that occurs in some cases when using the Steam Audio Source component.
    • (C API, Unity) Significantly reduced the size of the Steam Audio dynamic libraries.
    • (C API, Unity) Various updates to documentation to clarify the use of transmission coefficients, provide standard acoustic material properties, and highlight unsupported options when creating probes.
    • (C API) Fixed a bug where Ambisonics audio buffers were not decoded and spatialized correctly when encoded using an external encoder.
    • (C API) Updated the Steam Audio API header file to support wrapper generation using SWIG.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.11.chm(413.01 KB)
    steamaudio_api_2.0-beta.11.zip(60.08 MB)
    steamaudio_unity_2.0-beta.11.zip(43.11 MB)
    steamaudio_unity_manual_2.0-beta.11.pdf(1.29 MB)
    steamaudio_unreal_manual_2.0-beta.11.pdf(2.18 MB)
  • v2.0-beta.9(Sep 1, 2017)

    This is 2.0-beta.9 release of Steam Audio SDK. Changes from the previous release include:

    • (C API) Changed the signature of iplGetDirectSoundPath: it now takes a handle to an Environment object, rather than an Environmental Renderer object.
    • (C API) Up to 2x improvement in the performance of iplCreateBinauralRenderer.
    • (C API) Ambisonics orders higher than 3rd order are no longer supported.
    • (C API) Fixed a potential compiler error in phonon.h due to size_t not being defined.
    • (C API) Fixed a potential crash when using a Direct Sound Effect.
    • (C API, Unity Integration) Reduced unnecessary low-passing when decoding Ambisonics to binaural (using the iplApplyAmbisonicsBinauralEffect API function, or enabling Indirect Binaural in Unity).
    • (Unity Integration) The Steam Audio Spatializer effect makes more consistent use of the listener position provided by Unity.
    • (Unity Integration) Fixed a bug where the distance attenuation curve of an Audio Source was incorrectly applied to indirect sound by the Spatializer Effect.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.9.chm(412.40 KB)
    steamaudio_api_2.0-beta.9.zip(123.16 MB)
    steamaudio_manual_2.0-beta.9.pdf(1.28 MB)
    steamaudio_unity_2.0-beta.9.zip(89.04 MB)
    steamaudio_unreal_2.0-beta.9_binaries.zip(117.10 MB)
  • v2.0-beta.10(Oct 16, 2017)

    This is 2.0-beta.10 release of Steam Audio SDK. Changes from the previous release include:

    • (C API, Unreal Engine, Unity) Changed probe batch finalization to handle large numbers of probes.
    • (C API, Unreal Engine, Unity) Fixed secondary ray generation bug that was causing significant energy loss.
    • (C API, Unreal Engine, Unity) Normalized data interpolation to smooth rendering of baked data.
    • (C API, Unreal Engine, Unity) Fixed ray leakage in indirect simulation.
    • (C API) Changed custom ray tracer closest hit callback to return the hit point's material, rather than a material index.
    • (Unreal Engine) Android support for spatialization and occlusion.
    • (Unreal Engine) Added editor mode for easy access to Steam Audio functionality.
    • (Unreal Engine) Added buttons to add/remove Phonon Geometry components to all static mesh actors.
    • (Unreal Engine) Added button to export the scene to .obj for debugging.
    • (Unreal Engine) Removed Phonon Scene actor in favor of export to file.
    • (Unreal Engine) Probe generation and baking writes data to disk, to avoid slow loading and saving of map files.
    • (Unreal Engine) Fixed incorrect material indices on scene export.
    • (Unreal Engine) Added display of # of triangles in the Phonon scene.
    • (Unreal Engine) Improved display of data sizes.
    • (Unity) Fixed bug where using a Steam Audio Mixer Return effect caused acoustic geometry to persist across scene changes, resulting in incorrect indirect sound.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.10.chm(412.59 KB)
    steamaudio_api_2.0-beta.10.zip(123.50 MB)
    steamaudio_unity_2.0-beta.10.zip(89.04 MB)
    steamaudio_unity_manual_2.0-beta.10.pdf(1.28 MB)
    steamaudio_unreal_2.0-beta.10_binaries.zip(117.11 MB)
    steamaudio_unreal_manual_2.0-beta.10.pdf(2.18 MB)
  • v2.0-beta.8(Aug 16, 2017)

    This is the 2.0-beta.8 release of the Steam Audio SDK. Apart from the source code release of the Unity plugin, there are no major changes from previous release:

    • (Unity Integration) Source code released for the Steam Audio Unity plugin. Click here for source code access.
    • (Unity Integration, C API) The size of the native audio plugins (audioplugin_phonon.dll, libaudioplugin_phonon.so, audioplugin_phonon.bundle) has been significantly reduced.
    • (C API) For macOS, both .bundle and .dylib files are shipped with the Steam Audio API.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.8.chm(412.31 KB)
    steamaudio_api_2.0-beta.8.zip(121.16 MB)
    steamaudio_manual_2.0-beta.8.pdf(1.24 MB)
    steamaudio_unity_2.0-beta.8.zip(87.59 MB)
  • v2.0-beta.7(Aug 7, 2017)

    This is 2.0-beta.7 release of Steam Audio SDK. Changes from the previous release include:

    • (Unity Integration) The Steam Audio Unity plugins have been migrated to Unity's native audio plugin framework; older versions of the plugin (beta 6 and older) are now deprecated.
    • (Unity Integration) Steam Audio spatializer plugin: Enable Steam Audio spatialization by checking Spatialize on any Audio Source; customize settings using a Steam Audio Source component.
    • (Unity Integration) Steam Audio mixer plugins: apply reverb on a subset of your sounds by attaching a Steam Audio Reverb effect to any Audio Mixer Group.
    • (Unity Integration) Fixed bug where certain values of IR duration led to a crash on startup.
    • (C API, Unity Integration) Fixed audible artifacts with certain kinds of sound clips when using bilinear HRTF interpolation.
    • (C API, Unity Integration) Up to 25% performance boost when using bilinear HRTF interpolation.
    • (C API, Unity Integration) Using iplDumpSceneToObjFile to generate a .obj file from a Scene object now also creates a .mtl file containing material properties.
    • (C API) It is no longer necessary to specify every field in IPLAudioFormat, only the ones relevant to the audio format being described.
    • (C API) It is no longer necessary to create a Scene object to model frequency-dependent air absorption.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.7.chm(412.36 KB)
    steamaudio_api_2.0-beta.7.zip(92.82 MB)
    steamaudio_manual_2.0-beta.7.pdf(1.24 MB)
    steamaudio_unity_2.0-beta.7.zip(171.86 MB)
  • v2.0-beta.6(Jun 19, 2017)

    This is 2.0-beta.6 release of Steam Audio SDK. Changes from the previous release include:

    • (C API) Changed the behavior of iplSaveFinalizedScene to serialize scene data to a user-supplied memory buffer, rather than a file. The application is now responsible for storing this data in an appropriate location.
    • (C API) Static libraries (phonons.lib, libphonons.a) are no longer supplied with the C API.
    • (Unity Integration) The minimum version of Unity supported is now Unity 5.3. Unity 5.2 or older are no longer supported.
    • (Unity Integration) Steam Audio log messages are now displayed in the Unity editor's Console window.
    • (Unity Integration) Probe boxes can now be freely rotated, scaled, or translated in the editor.
    • (Unity Integration) Updated Phonon Listener GUI to ensure that Accelerated Mixing and Enable Reverb are mutually exclusive options.
    • (Unity Integration) Disabled changing Global Simulation and other properties when the Unity editor is in play mode.
    • (Unity Integration) Fixed a bug where generating probes did not mark the scene as dirty, making it possible to exit Unity without being prompted to save changes.
    • (Unity Integration) Fixed a bug with unnecessary per-frame memory allocations.
    • (Unity Integration, C API) Updated Copyright notice.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.6.chm(413.32 KB)
    steamaudio_api_2.0-beta.6.zip(106.74 MB)
    steamaudio_manual_2.0-beta.6.pdf(1.21 MB)
    steamaudio_manual_unreal_2.0-beta.6.pdf(2.01 MB)
    steamaudio_unity_2.0-beta.6.zip(99.35 MB)
  • v2.0-beta.5(Jun 1, 2017)

    This is 2.0-beta.5 release of Steam Audio SDK. Changes from the previous release include:

    • (C API) Fixed potential performance issue when using Convolution Effects with custom memory allocator callbacks.
    • (C API) Fixed performance issue when calling iplGetMixedEnvironmentalAudio when no Convolution Effect objects have been created.
    • (C API) Fixed occasional audio glitch in the first frame rendered using a Convolution Effect.
    • (C API) Improved simulation performance in some cases by pruning ray paths based on propagation time.
    • (C API) Reduced unnecessary memory allocations during audio processing.
    • (C API) Fixed bug where probes could not be generated when using custom ray tracer callbacks.
    • (C API) Changed the center frequencies used for material properties.
    • (Unity Integration, C API) The Steam Audio DLLs no longer require the Visual C++ 2015 Redistributable to be installed.
    • (Unity Integration, C API) Added support for transmission coefficients to Phonon Material.
    • (Unity Integration, C API) Added support for modeling transmission of sound through geometry, along the direct sound path. Two modes of transmission have been added: frequency-dependent and frequency-independent.
    • (Unity Integration, C API) Added support for modeling frequency-dependent air absorption along the direct sound path. This can be toggled on or off on a per-source basis.
    • (Unity Integration) Fixed a bug where materials were incorrectly mapped to scene geometry.
    • (Unity Integration) Reduced per frame memory overhead caused by instantiating WaitForEndOfFrame every frame.
    • (Unity Integration) Fixed a bug where no sound was heard if starting a scene with Enable Reflections unchecked on a Phonon Source and Accelerated Mixing checked on the Phonon Listener.
    • (Unity Integration) Changed physics-based attenuation to be off by default on a Phonon Source.
    • (Unity Integration) Fixed error with GUI elements on versions of Unity older than 5.5.
    • (Unity Integration) Updated documentation to clarify that the Phonon Manager component should not be added manually.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.5.chm(407.41 KB)
    steamaudio_api_2.0-beta.5.zip(149.43 MB)
    steamaudio_manual_2.0-beta.5.pdf(1.21 MB)
    steamaudio_unity_2.0-beta.5.zip(99.38 MB)
  • v2.0-beta.4(May 2, 2017)

    This is 2.0-beta.4 release of Steam Audio SDK. Changes from the previous release include:

    • (Unreal Engine) Steam Audio is now available with Unreal Engine 4, starting with Unreal Engine 4.16 Preview 2.
    • (C API) Added callback functions to allow users to use their own HRTF data with Steam Audio.
    • (C API) Fixed bug when converting wide-character strings containing non-ASCII characters to UTF-8 on Windows.
    • (C API) Linking against the C API static library on Windows should no longer result in warnings about the "/GL" compiler flag.
    • (Unity Integration) Detailed baking statistics are provided for Phonon Source, Phonon Listener, and Baked Static Listener Node.
    • (Unity Integration) Added an advanced option in Phonon Manager to choose whether or not to search for Audio Listener and Phonon Listener objects every frame.
    • (Unity Integration) Added an advanced option in Phonon Manager that provides a centralized place for baking any source, reverb, or static listener in the scene.
    • (Unity Integration) Improved support for pre-exporting scenes whose names contain non-ASCII characters.
    • (Unity Integration) Improved support for Phonon Source and Baked Static Listener Node unique identifiers with non-ASCII characters.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.4.chm(394.40 KB)
    steamaudio_api_2.0-beta.4.zip(142.88 MB)
    steamaudio_manual_2.0-beta.4.pdf(621.14 KB)
    steamaudio_unity_2.0-beta.4.zip(124.34 MB)
  • v2.0-beta.3(Apr 20, 2017)

    This is 2.0-beta.3 release of Steam Audio SDK. Changes from the previous release include:

    • (C API) Improved quality of bilinear interpolation when the source is directly to the left or right of the listener.
    • (C API) Fixed occasional popping artifacts when using Accelerated Mixing for indirect sound.
    • (Unity Integration) Fixed a bug which lead to glitches on toggling a component with Phonon Source on or off.
    • (Unity Integration) Fixed a bug which prevented dynamically adding a Phonon Source component or toggling the component.
    • (Unity Integration) Fixed an issue which prevented Audio Listener from being swapped at runtime.
    • (Unity Integration) Up to 4x improvement in load time performance by reducing number of expensive FIndObjectOfType calls.
    • (Hotfix-1) Fixed an issue with UI when baking with Probe Boxes set to null.
    • (Hotfix-1) Fixed an issue with Unity integration where Steam Audio objects are not destroyed completely.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.3.chm(377.37 KB)
    steamaudio_api_2.0-beta.3.zip(142.70 MB)
    steamaudio_manual_2.0-beta.3.pdf(590.36 KB)
    steamaudio_manual_unreal_2.0-beta.3.pdf(1.92 MB)
    steamaudio_unity_2.0-beta.3.zip(124.30 MB)
  • v2.0-beta.2(Mar 16, 2017)

    This is 2.0-beta.2 release of Steam Audio SDK. Changes from the previous release include:

    • (Unity Integration) Fixed a bug where baked data is not properly saved with the scene, requiring a bake every time a project is opened in the Unity editor.
    • (Unity Integration) Fixed a bug where all audio sources stop playing when Partial occlusion is turned on and a source intersects with a geometry.
    • (Unity Integration) Fixed a bug which introduced a buzz artifact when moving fast or transporting from one location to another.
    • (Unity integration) Fixed a bug where baking reverb or propagation effect crashes Unity if no probes have been generated.
    • (Unity Integration) Fixed a bug where coroutines on Phonon Source and Phonon Listener did not start properly if a GameObject is toggled.
    • (Unity Integration) Cleaned up Phonon Effect UX by dividing it into Phonon Source and Phonon Listener.
    • (Unity Integration) Reduced overhead when dynamically creating a GameObject with Phonon Source or Phonon Listener.
    • (C API) Fixed incorrect baked data lookup when two or more sources use baked data.
    • (Performance) Bilinear interpolation for HRTF is up to 4x faster on PC (Windows, Linux, macOS).
    • (Performance) Convolution for indirect sound is up to 2x faster.
    • (Documentation) Added information on the actual frequencies of the low, mid, and high frequency bands used for acoustic materials.
    • (Documentation) Added more introductory material to the API documentation.
    • (Hotfix-1) Fixed issue with Unity integration when Audio Listener is not present.
    • (Hotfix-1) Updated documentation - Environment Component, Environmental Renderer Component, and Phonon Static Listener Component can be attached to any GameObject in Unity.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.2.chm(370.99 KB)
    steamaudio_api_2.0-beta.2.zip(193.28 MB)
    steamaudio_manual_2.0-beta.2.pdf(548.66 KB)
    steamaudio_unity_2.0-beta.2.zip(124.23 MB)
  • v2.0-beta.1(Feb 23, 2017)

    This is the initial release of Steam Audio SDK. Changes from Phonon 1.7 to Steam Audio SDK 2.0 Beta 1 include:

    • Unified solution for 3D audio, real-time propagation, and baked propagation.
    • Available as a Unity plugin and C API; additional integrations under development.
    • Support for raycast and partial occlusion of direct sound.
    • Quality improvements to 3D audio (previously called Phonon 3D), reducing frequency coloration of audio clips when spatialized.
    • Support for Ambisonics based 3D audio for sound propagation.
    • Performance improvements for real-time sound propagation.
    • Increased flexibility in specifying how and where reverb is baked (previously called Phonon Reverb).
    • Support for direction-dependent reverb, using Ambisonics.
    • Support for baking per-sound sound propagation effect (previously called Phonon SoundFlow).
    • Support for baking sound propagation effect for static listener.
    • (Unity plugin) Performance improvements for scene export.
    Source code(tar.gz)
    Source code(zip)
    steamaudio_api_2.0-beta.1.chm(290.28 KB)
    steamaudio_api_2.0-beta.1.zip(191.10 MB)
    steamaudio_manual_2.0-beta.1.pdf(508.42 KB)
    steamaudio_unity_2.0-beta.1.zip(124.07 MB)
Owner
Valve Software
Valve Software
PortAudio is a portable audio I/O library designed for cross-platform support of audio

PortAudio is a cross-platform, open-source C language library for real-time audio input and output.

PortAudio 758 Nov 28, 2022
A simple C++ library for reading and writing audio files.

AudioFile A simple header-only C++ library for reading and writing audio files. Current supported formats: WAV AIFF Author AudioFile is written and ma

Adam Stark 673 Dec 3, 2022
A C library for reading and writing sound files containing sampled audio data.

libsndfile libsndfile is a C library for reading and writing files containing sampled audio data. Authors The libsndfile project was originally develo

null 1.1k Dec 1, 2022
C library for cross-platform real-time audio input and output

libsoundio C library providing cross-platform audio input and output. The API is suitable for real-time software such as digital audio workstations as

Andrew Kelley 1.6k Dec 2, 2022
C++ Audio and Music DSP Library

_____ _____ ___ __ _ _____ __ __ __ ____ ____ / \\_ \\ \/ / |/ \| | | | \_ \/ \ | Y Y \/ /_ \> <| | Y Y \ | |_|

Mick Grierson 1.4k Nov 26, 2022
Single file audio playback and capture library written in C.

A single file library for audio playback and capture. Example - Documentation - Supported Platforms - Backends - Major Features - Building - Unofficia

David Reid 2.5k Nov 25, 2022
SimplE Lossless Audio

SELA SimplE Lossless Audio A lossless audio codec which aims to be as simple as possible while still having good enough compression ratios. Code Quali

Ratul Saha 207 Sep 13, 2022
Easy and efficient audio synthesis in C++

Tonic Fast and easy audio synthesis in C++. Prefer coding to patching? Love clean syntax? Care about performance? That's how we feel too, and why we m

null 479 Nov 22, 2022
An audio mixer that supports various file formats for Simple Directmedia Layer.

An audio mixer that supports various file formats for Simple Directmedia Layer.

Simple Directmedia Layer 194 Nov 29, 2022
Explore fractals in an audio-visual sandbox

Fractal Sound Explorer Explore fractals in an audio-visual sandbox Download executable on my itch.io page: https://codeparade.itch.io/fractal-sound-ex

null 979 Dec 4, 2022
Audio out with an FTDI UART cable

Audio out with an FTDI UART cable This encodes audio as either PDM (using a first order sigma-delta stage), 32-bits PWM or 64-bits PWM and sends it as

Konrad Beckmann 42 Jun 23, 2022
Sexy, audio-responsive effects on LED strips.

Striptease Sexy, audio-responsive effects on LED strips. For Teensy 4 with Audio Adapter Board, by PJRC. Quick demo Shooting video of LEDs is very tri

Luca Paolini 35 Jun 19, 2022
audio monitor filter for OBS Studio

Audio Monitor dock and filter for OBS Studio Plugin for OBS Studio to add Audio Monitor dock and filter. It allows you to put the audio of a OBS sourc

Exeldro 219 Dec 3, 2022
Lightweight Embedded Audio Framework

LEAF (Lightweight Embedded Audio Framework) is a C library for audio synthesis and processing created by Jeff Snyder, Mike Mulshine, and Matt Wang at Princeton University's New Instrument Research Lab. It was originally called OOPS when we started writing it in 2017, so you may see references to it under that name as well.

Jeff Snyder 107 Nov 1, 2022
An Audio Steganography Tool, written in C++

HiddenWave Hide your personal Data inside The Audio wav file Written in C++ by Gaurav Raj [TheHackersBrain] Hiddenwave is an audio steganography tool

Gaurav Raj 48 Nov 2, 2022
C++ audio time-stretching implementation

Time Stretcher C++ audio time-stretching implementation, based on the algorithms presented in: Audio Time Stretching with an Adaptive Phase Vocoder, N

null 59 Nov 13, 2022
Block all ads in vídeo, áudio, banner, anti-skip

NoAdSpotify Block spotify ad This is an updated and simplified version of the project: BlockTheSpot Last updated: 6th June 2021 Last tested version: 1

null 14 Nov 5, 2022
Arduino Audio Tools (Music Player, Music Recorder supporting I2S, Microphones, DAC, ADC, A2DP, Url)

Arduino Audio Tools Some basic header-only C++ classes that can be used for Audio Processing provided as Arduino Library: a simple I2S class (to read

Phil Schatzmann 478 Nov 27, 2022
Audacity is an easy-to-use, multi-track audio editor and recorder for Windows, Mac OS X, GNU/Linux and other operating systems

Audacity is an easy-to-use, multi-track audio editor and recorder for Windows, Mac OS X, GNU/Linux and other operating systems. Audacity is open source software licensed under GPL, version 2 or later.

Audacity 8.5k Nov 30, 2022