XNA Framework Feature Question: Audio


The native XACT APIs have added the support for programmatic wave playback. I.e. at runtime, you can load *.wav files into a Wavebank and play them from there, without needing to create a project and compile the binaries.  This is something we’re looking at supporting in our next release, but I want to gauge how much interest there is in this feature?  Keep in mind that implementing this feature may very well mean we can’t do some other feature.


So how important is this to you? Is using the XACT editor and precompiling your audio a big issue? Is it just a learning curve for the editor, and then you move on?



Please vote here: http://forums.xna.com/7198/ShowThread.aspx#7198


Comments (4)

  1. Mitch, I really appreciate giving us the chance to offer feedback on this.  I have been looking for a way to dynamically create audio in XNA – for example, by putting together the audio bytes in realtime and passing them into a StreamingBuffer.  This was possible using Managed DirectX but I haven’t found the way to do this in XNA.

    I love the precompiled audio and the XACT pipeline, but for some purposes where audio needs to be synthesized in real time, it won’t get the job done.  If I could vote for one audio feature that I’d be grateful to see in future releases, it’d be the ability to get a little lower-level and do something like this.

  2. Also – just to weigh in on this issue – regarding the specific feature you describe here, I think the XACT pipeline is so easy to learn that I’m not sure what the feature you describe would buy us.  It wouldn’t be effective for the types of scenarios I describe, because saving the dynamic audio to a .wav file (even a tiny one) and loading it in would create too much latency.  I’m not sure if there’s a scenario in mind that I’m not thinking of, except for just bypassing the XACT pipeline, but right now I’d question what bypassing it and loading a .wav file into a Wavebank manually would buy me.

  3. coldacid says:

    I was actually amazed (and not in a good way) that it wasn’t there in the first place, and a bit unhappy that it was still missing with the refresh. While it’s nice to be able to use XACT to handle most of a project’s audio, there are some things (such as video playback for cutscenes, etc) where XACT just gets in the way — when there’s a way to get around, which at this point there just doesn’t seem to be, at least on the 360.

    More important than letting us throw random .wav files at it, though, it would certainly be more useful to add a way to stream in wave audio, so that way any movies don’t require as much time to prepare for playback. The audio could be decompressed and streamed in on the fly rather than converted to a .wav file and then passed to XACT.

    Still, don’t pass on this just to add streaming audio only. What’s really needed is both.

  4. So what’s next for the XNA Framework now that the 1.0 Refresh has been released? Mitch Walker on the XNA team is wondering if developers want to play with loose .wav files rather than process all audio ahead of time as is currently done.