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

Issues
  • 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
  • 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
  • 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
  • Sound propagation should account for custom distance attenuation curves

    Sound propagation should account for custom distance attenuation curves

    In the Unity plugin, the Audio Source can be configured to use a non-physical distance attenuation curve, and the Phonon Effect can be configured to use that curve. However, sound propagation simulation does not seem to be using the custom attenuation curve properly.

    opened by lakulish 9
  • Spatial blend briefly incorrect in unity

    Spatial blend briefly incorrect in unity

    When an audio source plays sound for the first time, spatial blend seems to default to zero and take a moment to update to the value set on the audioSource component. This results in a moment of very loud audio playing from even distant sources. Most noticeable when an audiosource plays well into a level load, e.g. an enemy spawns in and fires their gun.

    opened by zulubo 8
  • SteamAudio: Unity 2021 LTS segfault when using Reverb + building in Docker

    SteamAudio: Unity 2021 LTS segfault when using Reverb + building in Docker

    We are using Unity Docker images from game.ci for building (actually, exporting native projects and then building on the target development OS). The image we are currently using is ubuntu-2021.3.3f1-android-1.0.1

    When we try to use a reverb using SteamAudio, we get this segfault - which doesn't happen when we build manually on Windows.

    Preloading 1 native plugins for Editor in 1.29 ms.
    Caught fatal signal - signo:11 code:1 errno:0 addr:(nil)
    Obtained 26 stack frames.
    #0  0x00559710c0a1dc in burst_signal_handler(int, siginfo_t*, void*)
    #1  0x007fd4739fc980 in funlockfile
    #2  0x007fd4005e442e in ReverbEffect::setParam(UnityAudioEffectState*, int, float)
    #3  0x00559711484711 in UnityAudioEffect_InternalSetFloatParameterCallback(FMOD_DSP_STATE*, int, float)
    #4  0x00559713608d1e in FMOD::DSP::setParameter(int, float)
    #5  0x005597114e0894 in audio::mixer::UpdateAudioMixerMemory(audio::mixer::AudioMixerConstant const&, audio::mixer::AudioMixerMemory&, float, FMOD::System*, float)
    #6  0x005597114df466 in audio::mixer::CreateAudioMixerMemory(audio::mixer::AudioMixerConstant const&, FMOD::System*, RuntimeBaseAllocator&, int, bool, char const*)
    #7  0x005597114a0a80 in AudioMixer::EnsureValidRuntime()
    #8  0x005597114a0952 in AudioMixer::ForceUpdateInEditor()
    #9  0x00559711d2677c in AudioMixerController::AwakeFromLoad(AwakeFromLoadMode)
    #10 0x005597110cfd7d in AwakeFromLoadQueue::InvokePersistentManagerAwake(AwakeFromLoadQueue::Item*, unsigned int, AwakeFromLoadMode, bool)
    #11 0x005597110cf344 in AwakeFromLoadQueue::PersistentManagerAwakeFromLoad(ErrorsAndWarningsCapture*, bool)
    #12 0x005597110a33a3 in PersistentManager::IntegrateAllThreadedObjects()
    #13 0x005597110a416b in PersistentManager::LoadAndIntegrateAllPreallocatedObjects(PersistentManager::LockFlags)
    #14 0x005597110a2dfc in PersistentManager::ReadObject(int, AwakeFromLoadMode)
    #15 0x005597104cae61 in PPtr<Object>::operator Object*() const
    #16 0x00559710754d47 in AssetDatabase_CUSTOM_LoadMainAssetAtPath(ScriptingBackendNativeStringPtrOpaque*)
    #17 0x000000407b0f03 in (wrapper managed-to-native) UnityEditor.AssetDatabase:LoadMainAssetAtPath (string)
    #18 0x00000040aa0b15 in System.Linq.Enumerable/SelectManySingleSelectorIterator`2<TSource_REF, TResult_REF>:MoveNext ()
    #19 0x00000040a9405f in Unity.VisualScripting.LinqUtility/<Concat>d__0`1<T_REF>:MoveNext ()
    #20 0x000000406facae in Unity.VisualScripting.AotPreBuilder/<FindAllProjectStubs>d__15:MoveNext ()
    #21 0x0000004157acf2 in System.Linq.Enumerable/DistinctIterator`1<TSource_REF>:MoveNext ()
    #22 0x000000406f8b4c in Unity.VisualScripting.AotPreBuilder:GenerateCodeAndWriteToStream (System.Collections.Generic.IEnumerable`1<Unity.VisualScripting.AotStubWriter>,System.IO.TextWriter)
    #23 0x000000406f0500 in Unity.VisualScripting.AotPreBuilder:GenerateAotStubs ()
    #24 0x000000406f02f4 in Unity.VisualScripting.AotPreBuilder:OnPreprocessBuild (UnityEditor.Build.Reporting.BuildReport)
    #25 0x000000406be050 in UnityEditor.Build.BuildPipelineInterfaces:OnBuildPreProcess (UnityEditor.Build.Reporting.BuildReport)
    
    opened by jchown 0
  • No Longer supported?

    No Longer supported?

    Is Valve no longer working on this project for Unity?

    There are some serious issues with the current branch, causing a lot of random crashes on loading. Last update was over 7 months ago.

    Is any one else considering not even using Steam Audio for there Unity project? I am seriously considering removing it, because of this, and it's really disappointing.

    opened by aflatau 1
  • [C Api] Documentation inconsistencies & General Crashing Issues

    [C Api] Documentation inconsistencies & General Crashing Issues

    Last few weeks I've spent the time updating a beta version of steam audio to the latest stable and there are a few things I wanted to bring up which stomped me with the implementation.

    Lack of errors/feedback from simulation/baking

    Under certain circumstances, simulations can fail or throw an exception within phonon without a clear indication of why it happens or what caused it. An example of this is attempting to bake a path without a probe batch. This ends up causing an exception within phonon without any feedback on why it happens.

    Inability to fetch specific probe data within a probe batch

    Currently, if we need to fetch any information about a probe within a probe batch, there's no way to do this. We're able to fetch how many probes themselves exist within the batch, but we cannot any individual probes. In contrast, with a probe array, we're able to fetch information about any probe within it. This means to keep compatibility between versions we need to store a copy of all probes within our serialized steam audio file.

    Reverb baking throws warnings unless bakeBatchSize >= 0 default scene bake

    There's an inconsistency in the documentation for this. When specifying baking params for reverb, it's not stated anywhere that bakeBatchSize needs to be a non-zero value. Within the documentation this field makes note of Radeon Rays, however, the warning from the baker refers to this as "max sources"

    Baking progress callbacks can return NaN

    When baking, we can specify a status/progress callback. There are situations where NaN can be passed to our callback function. This can lead to unexpected results when handling how far along the baking process is.

    No ability to append probes to a probe array

    If you want to place one probe at a time within a probe array, there's no nice way to handle this. The workflow is to use iplProbeArrayGenerateProbes with IPL_PROBEGENERATIONTYPE_CENTROID, then add this to a probe batch. Calling iplProbeArrayGenerateProbes multiple times on a single probe array ends up replacing all the probes within the array. Having an option to append without deleting previous probes would make it more intuitive to use.

    Loading a probe batch from serialized data should automatically commit

    Loading serialized data overwrites everything within the probe batch already. There's no reason commit shouldn't be called here automatically as it's a major change. It's a bit counter-intuitive and caught me off guard.

    There might have been a few other oddities I missed but if they come back to me I'll update the issue

    opened by ogniK5377 1
  • [Unity] Exception when baking if Scene Type is explicitly set to Unity

    [Unity] Exception when baking if Scene Type is explicitly set to Unity

    When "Steam Audio -> Settings -> Scene Type" is set to Unity (in order to config the layers) the following exception is thrown when doing a bake on a SteamAudioProbeBatch or SteamAudioBakedSource

    It is the same issue as reported here: https://github.com/ValveSoftware/steam-audio/issues/194 but that solution is not desirable. We still want to confiure which layers are used for raycasting.

    This issue also sounds the same: https://steamcommunity.com/app/596420/discussions/0/3159832276060036018/

    Unity 2021.2.17f1 Steam Audio 4.0.3 FMOD Studio audio engine

    UnityException: get_defaultPhysicsScene can only be called from the main thread.
    Constructors and field initializers will be executed from the loading thread when loading a scene.
    Don't use this function in the constructor or field initializers, instead move initialization code to the Awake or Start function.
    UnityEngine.Physics.get_defaultPhysicsScene () (at <458edbc5053d4539859fb32ae8dd8145>:0)
    UnityEngine.Physics.RaycastNonAlloc (UnityEngine.Vector3 origin, UnityEngine.Vector3 direction, UnityEngine.RaycastHit[] results, System.Single maxDistance, System.Int32 layerMask) (at <458edbc5053d4539859fb32ae8dd8145>:0)
    SteamAudio.SteamAudioManager.AnyHit (SteamAudio.Ray& ray, System.Single minDistance, System.Single maxDistance, System.Byte& occluded, System.IntPtr userData) (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:1202)
    (wrapper native-to-managed) SteamAudio.SteamAudioManager.AnyHit(SteamAudio.Ray&,single,single,byte&,intptr)
    SteamAudio.Baker.BakeThread () (at Assets/Plugins/SteamAudio/Scripts/Runtime/Baker.cs:286)
    System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) (at <6073cf49ed704e958b8a66d540dea948>:0)
    System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) (at <6073cf49ed704e958b8a66d540dea948>:0)
    System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) (at <6073cf49ed704e958b8a66d540dea948>:0)
    System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) (at <6073cf49ed704e958b8a66d540dea948>:0)
    System.Threading.ThreadHelper.ThreadStart () (at <6073cf49ed704e958b8a66d540dea948>:0)
    UnityEngine.Physics:RaycastNonAlloc(Vector3, Vector3, RaycastHit[], Single, Int32)
    SteamAudio.SteamAudioManager:AnyHit(Ray&, Single, Single, Byte&, IntPtr) (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:1202)
    SteamAudio.API:iplPathBakerBake(IntPtr, PathBakeParams&, ProgressCallback, IntPtr)
    SteamAudio.Baker:BakeThread() (at Assets/Plugins/SteamAudio/Scripts/Runtime/Baker.cs:286)
    System.Threading.ThreadHelper:ThreadStart()
    
    opened by TrevorVertigo 0
  • SetSpatializerFloat memory leak

    SetSpatializerFloat memory leak

    SetSpatializerFloat allocates the amount of memory once, which is not cleared after the destroying of SteamAudioSource.

    void SetSpatializerIntPtr(IntPtr ptr, ref int index) <-- only if the pointer is correct

    mAudioSource.SetSpatializerFloat(index++, valueLow); <-- allocating mAudioSource.SetSpatializerFloat(index++, valueHigh); <-- allocating

    Unity 2021.2.3f1 SteamAudio 4.0.3.

    opened by DenisSulyagin 1
  • Unity - SetSpatializerFloat is a consistent source of crashing

    Unity - SetSpatializerFloat is a consistent source of crashing

    I've still noticed crashes after the 4.0.2 patch was released. They were a lot more infrequent, but they're still there - in both builds and the editor. A sore spot seems to be switching levels. There's a much higher chance of a crash occurring there. Perhaps SteamAudio classes are initializing themselves in an unexpected order? Perhaps they are being used before being initialized, or before other classes they depend on are initialized?

    Here are crash logs I recovered for the editor in which Steam Audio was the cause: crash.zip crash2.zip

    Current unity version: 2021.3.1f1 Current steam audio version: 4.0.2

    The changes from 4.0.2 to 4.0.3 don't seem to contain anything that'd address this crash; changes are to:

    • README.md - Version bump.
    • CMakeLists.txt - Android-specific compiler arguments added, version bump.
    • build.py - Android-specific cmake arguments added.
    • phonon_version.h - Version bump.

    (Though "Performance improvement in Ambisonics Panning/Decode Effect" doesn't appear in the diffs either.)

    See this bug report for more details others have reported: https://github.com/ValveSoftware/steam-audio/issues/169

    opened by CodeHatchling 13
Releases(v4.0.3)
  • 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 633 Jun 19, 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 600 Jun 28, 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 1k Jun 21, 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.5k Jun 23, 2022
C++ Audio and Music DSP Library

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

Mick Grierson 1.3k Jun 23, 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.3k Jun 29, 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 206 May 11, 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 464 Jun 16, 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 126 Jun 24, 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 928 Jun 22, 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 180 Jun 28, 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 100 Jun 26, 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 Jun 20, 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 45 Jun 19, 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 13 Apr 7, 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 329 Jun 24, 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 7.6k Jun 23, 2022