Jump to content

Spatial Audio


gorilli09
 Share

Recommended Posts

I support this.
Currently, spatial audio is usually shared with the EAX field, but those 2 are different techs for different purposes:
Spatial audio is about directional positioning in 3D, while EAX is about environmental reverb/echo.
I think it would be if nice spatial audio had its own field, but if having too many is a concern, perhaps it could be merged with the Surround field instead.
Maybe with a broader but still accurate term like "binaural audio" or something more common like "channel configuration", "audio mix" or something along these lines.
Tho I gotta admit it might be a challenge to show people how to report/update the new fields (maybe a description when hovering the fields?), let alone updating/unmerging old entries posted in the EAX section.

Either way, I've been compiling a database of games/apps that support proper 3D spatial audio or virtual surround as well as guides to set it up, demos, notes, etc.:
Binaural spreadsheet - You can filter/sort/group by renderer/backend/platform/rating/etc
Binaural search - Needs a (free) Airtable account but it's the easiest way to search and navigate the entire database.
Anyone can add missing/new games using this form.
I also made a brief intro for the general context and anyone interested in the tech can join our Discord server.

If the PCGamingWiki devs want to link to my database, I'd be willing to help with the process.
Many games in the database have an associated Steam ID that maybe could be used to link them to specific PCGW articles. https://airtable.com/shrvCI0M2DwOvunl3
Or maybe there's a better method, I'm open to talks so feel free to contact me, I'm more active on Discord (3DJ#5426)

Link to comment
Share on other sites

This is something has been firesly discussed on our Discord server and despite having support, unfortunately it has not lead to any actionable conclusion due to the complications surround it's addition. I would suggest if you haven't already to join the Discord server, have a look at the old discussion and bring it back up again as the only way it is ever going to get any resolution.

Link to comment
Share on other sites

I'm already in the server and I think I skimmed through the conversation you're referring to, might have to dig it back up.
Is there anyone in particular I should be talking to?
and is this really that controversial of a change? I don't wanna step on anyone's toes, I just wanna help spread useful info for anyone who's looking for it

Link to comment
Share on other sites

I wouldn't say it's controversial, not the idea itself I mean as from what I remember when reading through it not long ago, everyone was in support of the idea, the issue was that no one could agree on would a good implementation of it would be and look like that works with the current system and setup the Wiki currently has, that's all.

I didn't contribute to the conversion myself as I have little knowledge or interest in it personally, but I recall one point of content was the definition, what exactly to call it on the wiki, and the confusion from the many different terms that exist.

The only reason nothing has happened yet is that it just hasn't gained enough traction, as it's always only ever been the very few people advocating and discussing it, where there is only so much to say before you start going around in circles, while the rest of don;t have a stake in the matter but would be willing to support it if a definitive answer/position can be reached.

Basically this is one of those uncommon opptunities where getting more people involved in the discussion is actually a good thing and likely the only way for something to ever get done about it, as it adds a fresh perspective and driving force behind the idea.

Link to comment
Share on other sites

Nobody is really against implementing it, however how such an implementation would look like is what we constantly stumble on. And with me and seemingly nobody else interested in actually spending the necessary time to figure everything out, we never end up seeing a suggested implementation either.

  • "Spatial audio" (which is really a catch-all umbrella term)
  • Audio renderers (the "backend" that renders the audio)
  • Audio mixes (e.g. Battlefield's various ways of mixing the audio)
  • Supported channel outputs and whatnot (e.g. mono, stereo, 5.1, etc)

It usually starts with someone suggesting something simple ("add support for listing Dolby Atmos support in Windows!") but then that suggestion grows because "Dolby Atmos" in this case is most often merely an audio renderer of Windows' Spatial Sound platform, meaning any game that "supports" Dolby Atmos technically supports all Spatial Sound audio renderers, so both Dolby Atmos, DTS Headphone:X, and Windows Sonic for Headphones... But then just because that wasn't complicated enough, we also have "native" Dolby Atmos (HDMI) aka "Dolby Atmos for home theater", which sorta is its own thing but also not, in that it requires the whole audio output from the system to be encoded in Dolby Atmos which has its own consequences even for non-spatial sound capable apps and whatnot...

And it is at this point that someone brings up older spatial audio (aka 3D audio) renderers, such as OpenAL, DirectSound3D (DS3D), XAudio2 (I think?), Steam Audio, AMD TrueAudio, and whatnot, while someone else brings up the channel output configurations again, and notes how games might expost or use differnet sound/output options depending on whether the audio output device is actually reported as having multiple discrete channels, or just stereo, and whatnot.

This discussion and additional complexity usually goes on for at least an hour and often more, and at this point something that were initially regarded as rather simple turns out to be convuluted enough that I personally do not feel equipped to create even the initial implementation because I can't keep track of everything any longer nor how they relate to each other, much less how we would then document this in the editing guide for people to know how to fill out.

As it stands the project needs someone to take lead of it and actually start creating initial implementations of how it would be tracked/documented on the wiki for it to go somewhere, and the only thing I can say for sure is that I personally don't want to take that lead after my unsuccessful early attempts over the last couple of years.

Link to comment
Share on other sites

  • 4 weeks later...

Sorry for the late response, got really busy during the holidays 😅

On 12/9/2022 at 2:21 AM, dave247 said:

I wouldn't say it's controversial, not the idea itself I mean as from what I remember when reading through it not long ago, everyone was in support of the idea, the issue was that no one could agree on would a good implementation of it would be and look like that works with the current system and setup the Wiki currently has, that's all.

I didn't contribute to the conversion myself as I have little knowledge or interest in it personally, but I recall one point of content was the definition, what exactly to call it on the wiki, and the confusion from the many different terms that exist.

The only reason nothing has happened yet is that it just hasn't gained enough traction, as it's always only ever been the very few people advocating and discussing it, where there is only so much to say before you start going around in circles, while the rest of don;t have a stake in the matter but would be willing to support it if a definitive answer/position can be reached.

Basically this is one of those uncommon opptunities where getting more people involved in the discussion is actually a good thing and likely the only way for something to ever get done about it, as it adds a fresh perspective and driving force behind the idea.

I see. In that case, I might be able to bring in a few more brains to pick on the subject.

On 12/9/2022 at 5:27 AM, Aemony said:

Nobody is really against implementing it, however how such an implementation would look like is what we constantly stumble on. And with me and seemingly nobody else interested in actually spending the necessary time to figure everything out, we never end up seeing a suggested implementation either.

  • "Spatial audio" (which is really a catch-all umbrella term)
  • Audio renderers (the "backend" that renders the audio)
  • Audio mixes (e.g. Battlefield's various ways of mixing the audio)
  • Supported channel outputs and whatnot (e.g. mono, stereo, 5.1, etc)

It usually starts with someone suggesting something simple ("add support for listing Dolby Atmos support in Windows!") but then that suggestion grows because "Dolby Atmos" in this case is most often merely an audio renderer of Windows' Spatial Sound platform, meaning any game that "supports" Dolby Atmos technically supports all Spatial Sound audio renderers, so both Dolby Atmos, DTS Headphone:X, and Windows Sonic for Headphones... But then just because that wasn't complicated enough, we also have "native" Dolby Atmos (HDMI) aka "Dolby Atmos for home theater", which sorta is its own thing but also not, in that it requires the whole audio output from the system to be encoded in Dolby Atmos which has its own consequences even for non-spatial sound capable apps and whatnot...

And it is at this point that someone brings up older spatial audio (aka 3D audio) renderers, such as OpenAL, DirectSound3D (DS3D), XAudio2 (I think?), Steam Audio, AMD TrueAudio, and whatnot, while someone else brings up the channel output configurations again, and notes how games might expost or use differnet sound/output options depending on whether the audio output device is actually reported as having multiple discrete channels, or just stereo, and whatnot.

This discussion and additional complexity usually goes on for at least an hour and often more, and at this point something that were initially regarded as rather simple turns out to be convuluted enough that I personally do not feel equipped to create even the initial implementation because I can't keep track of everything any longer nor how they relate to each other, much less how we would then document this in the editing guide for people to know how to fill out.

As it stands the project needs someone to take lead of it and actually start creating initial implementations of how it would be tracked/documented on the wiki for it to go somewhere, and the only thing I can say for sure is that I personally don't want to take that lead after my unsuccessful early attempts over the last couple of years.

Totally agree: it's quite a complicated subject that has to be carefully broken down so we can categorize stuff accurately.
Even though it's not 100% set in stone (suggestions are welcome), I took a stab at it. The basic category hierarchy goes something like:

  • Binaural Audio (over headphones or speakers)
    • Backend: audio API (DirectSound3D, OpenAL, Miles Sound System, Microsoft Spatial Sound, etc.)
    • Feature: complimentary effects that are part of the backend (EAX, EFX, Dolby Surround, Dolby Pro-Logic II, etc.)
    • Decoder: matrix surround upmixer (FreeSurround, HeSuVi matrix surround decoders, etc.)
    • Wrapper: API translator (Creative Alchemy, DSOAL, etc)
    • Renderer: HRTF audio mixer (Windows Sonic for Headphones, Dolby Atmos for Headphones, DTS Headphone:X, OpenAL Soft, HeSuVi, etc.)
    • HRTF: audio filters used to simulate extra dimensions in limited hardware.
    • Configuration:
      • (Virtual) Surround: audio in 2 dimensions (channel-based without height like 4.0, 5.1, 7.1, etc)
      • Spatial audio: audio in 3 dimensions (object-based, channel-based with height like 7.1.2, ambisonics or binaural recording)

I don't have a lot of experience editing PCGW articles —let alone advanced restructuring— but I'm willing to give a hand so more people can find useful/relevant info from the database. Basically, the database is organized into bases (as in base game) and profiles (known possible configurations for every base/game). For instance, we could pull the best known profile for the matching Steam ID and add it to the PCGW article, or maybe even do something more advanced via the Airtable API.
I'm not sure what would be the best way to integrate the database into articles, but there are plenty of options we can discuss 👍

Link to comment
Share on other sites

  • 1 month later...

I didn't contribute to the conversion myself as I have little knowledge or interest in it personally, but I recall one point of content was the definition, what exactly to call it on the wiki, and the confusion from the many different terms that exist.

Link to comment
Share on other sites

  • 11 months later...

Going back to what gorilli09 is requesting, this is simple enough to do; just define "Microsoft Spatial Sound" in the Audio table, because I'm 99% confident that any Windows game that can output Atmos to an HDMI audio device is using Microsoft Spatial Sound (https://learn.microsoft.com/en-us/windows/win32/coreaudio/spatial-sound). It's that easy because this is a Windows 10+ feature, games either support it or they don't and we don't need to be concerned with defining every aspect of spatial audio, we only need to note when this specific Microsoft/Windows feature is used in games just like we do with EAX, DirectX, HDR, ultra widescreen, DLSS, gamepads and so on.

If I were to create a field breakdown for the audio template (https://www.pcgamingwiki.com/wiki/PCGamingWiki:Editing_guide/Audio), this is an example of what I'd submit:

Field
Microsoft Spatial Sound

Definition
Microsoft’s platform-level solution for spatial sound support on Windows enabling both surround and elevation (above or below the listener) audio cues.

How to find
Games will either automatically utilize this feature or in-game options will be available and usable, but only when a spatial sound option is selected via the Windows system sound device settings.

Notes
At least Windows 10 is required. Windows Sonic for Headphones is a native Windows option that will enable this feature in games. Connecting a Dolby Atmos or DTS:X HDMI AV receiver or soundbar or using applications such as DTS Sound Unbound and Dolby Access will populate more spatial sound device options in the Windows sound device properties. Height speakers will be utilized by Atmos or DTS:X HDMI devices, but usage may vary by game.

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Found PCGamingWiki useful? Please consider making a Donation or visiting our Patreon.
  • Who's Online   2 Members, 0 Anonymous, 375 Guests (See full list)

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Forum Statistics

    1.7k
    Total Topics
    9.1k
    Total Posts
×
×
  • Create New...