|
|
#1 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
Bring Back DirectSound3D
Windows Vista and 7 have helped catapult graphics into new realms, but cut the knees out from under sound with the exclusion of DirectSound3D.
DirectSound3D was a mature, powerful API as integral to sound as DirectX is to graphics. Providing many important capabilites, it added a new dimension to games with the accurate position of sounds in 3D space as well as the ability to transform even anemic stereo mixes into full surround sound. With the advent of Windows Vista, Microsoft cut DirectSound3D in favor of the noticeably inferior XACT audio (the same audio employed by the XBOX 360), despite claims to treat "Windows as a first–class gaming platform". MaximumPC echoed this sentiment in regards to the loss of DirectSound3D emphasizing "A picture may be worth 1,000 words, but we like good audio too." Soundcard companies such as Creative have made noble strides since then to revive hardware sound, most noticeably with ALchemy, but without the support of an operating system their efforts can only go so far. For more information, a great place to start is the Wikipedia article on DirectSound3D. However, while reading about DirectSound3D is great, the best way to understand it is to experience it. Take Prince of Persia (2008), a fairly recent game for example. It supports DirectSound3D and XACT since the game came out on the XBOX as well. As such, the game provides an ideal opportunity to compare the two sound APIs. A dual boot between Windows XP and Windows 7 allows for this comparison since DirectSound3D is only supported in Windows XP (a simpler comparison can be achieved using ALchemy in Windows 7, but there is some sound corruption documented in the following link. Comparing the two, DirectSound3D is noticeably fuller, more precise, and 3D than XACT. It is difficult to capture something as abstract as sound with words, but what stands out the most is the fact a full 3D audio environment is created and sounds are precisely positioned within it. This is known as 3D audio spatialization. While XACT does attempt to do this, it is considerably more anemic and less precise with sound having a tendency to "jump" between speakers and overall feeling far less dynamic and immersive. In DirectSound3D for instance when Elika casts her tracking spell from behind you, one can "feel" it pass by their character in the game. Perhaps most impressive is that this sensation of 3D audio can be created even from a 2.1 stereo speaker setup thanks to the mature development of the API. In short, DirectSound3D is a mature, powerful, and advanced API capable of delivering a compelling and immersive sound experience . Despite this, Microsoft cut DirectSound3D reducing PC sound to the lowest common denominator, the XBOX 360. This is the key. Microsoft did not cut DirectSound3D because it was an old aging API, and Microsoft did not cut DirectSound3D to make the PC better. It cut it to accomodate the XBOX360. Most ironically, DirectSound3D was actually part of DirectX. Thus, while Microsoft continued to push the graphics envelope far beyond consoles with DirectX 10 and 11, it scaled back sound to match the consoles. Two steps forward for graphics, three steps backwards for sound. If this is sound, I'd rather be deaf. If the Prince of Persia (2008) example wasn't enough, consider Crysis. Crysis is well-known for its graphical prowess and use of DirectX 10 (though much of this was skilled use of DirectX9). But it also used DirectSound3D to acheive accurate 3D sound saptialization. If dedicated hardware was not found, FMOD, one of the more prominent software sound solutions, was used . But now, in Vista/7 appropriate hardware can never be found because DirectSound3D was cut from the OS. The problem is DirectSound3D was better developed and in short sounds noticeablly better. This is the irony. Crysis demanded Vista or higher for the best graphics, but XP or lower for the best sound. This is the crux of the situation at present. Do you want immersive and positional surround sound or do you just want to see pretty explosions? The point is there is no reason not to have both. Sound or Graphics shouldn't have to be a choice. They are compliments, each enhancing the other. A picture may be worth a thousand words, but no one is aching for the days of silent film either. Finally, DirectSound3D is important not just from a sound standpoint, but also a programming standpoint because the API is/was supported by other third party companies, such as Creative (What follows is not exclusive to Creative Labs, but they are used as an example based on their pioneering and prominence in sound). Why is this important? Because no programmer (game or otherwise) should have to spend obscene amounts of time fiddling with a science as complicated as sound. Creative Labs is a company dedicated to making sound sound good. It's what they do. It's in the name: Creative Labs. They have sound scientists dedicated to research and technology in sound. Ideally, a game programmer should collaborate with a company such as Creative, use supported APIs and tap the company's vast pool of knowledge. This not only make the games (or other programs) sound better than software sound, it's easier on the programmers and developers, freeing their efforts up to focus on other important aspects of development. This is exactly what happened here. While this article centers around the OpenAL API, the same argument holds for DirectSound3D as Creative supports this API as well. While OpenAL is a powerful API, where DirectSound3D edged out OpenAL was its integration into the operating system. In the same way a game is a program, the operating system too is a program, but one through which all other programs are run. By integrating DirectSound3D into the operating system, its enhancements could span the entire operating system environment, permeating all programs run through it. We have eyes to see, but also ears to hear. To demand audio fidelity on par with the visual fidelity of DirectX 11, please sign this petition. http://www.ipetitions.com/petition/bringbackds3d/ Last edited by anonymous321: 01-24-2011 at 11:28 PM. |
|
|
|
|
|
#2 |
![]() Join Date: Nov 2009
Reputation: 278
Posts: 873
|
Thanks, that was a good read.
|
|
|
|
|
|
#4 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
The petition is slowly gaining "Steam." Don't let the word "petition" scare you. Check it out.
|
|
|
|
|
|
#5 | |
![]() Join Date: Aug 2009
Reputation: 39
Posts: 782
|
Quote:
it doesnt take a genius to note, we are upgrading everything.. that means higher quality sound samples/bit-rates .. more players per team .. the need/desire/want for more audio going on at once. high definition audio is going to require up to triple amounts of data processing. this processing starts with software and goes through the chipset. new features of directX are going to require more data going through the chipset. and the API has been re-written to bear the load. same thing with the audio engine.. it must be re-written to handle a higher load. and dont even think about mixing the two together, because the data rates are way too high and you will clog the throughput with one engine doing all of the work. it puts an obnoxious overhead onto processing requirements. the audio from video games that date back to the year 2000 have all been pathetic low-bitrate samples. think about having audio that is the same high definition as those that we hear in blu-ray movies. we dont even have DVD quality audio in these video games.. despite what any sampling frequency is listed in a configuration file. i am quite certain that if there are any 44.1khz sampled audio.. it is not 16bit. you can throw in a CD and hear a significant difference. i have read that 'directsound' will play multi-channel high resolution audio. but 'directsound' is not the same thing as 'direct3d' and to be openly honest.. i dont think directsound3d actually had the ability to apply reverb. yes, there was reverb in the audio.. but it was probably recorded with that reverb and the directsound3d API simply 'allowed' the audio file to contain an echo. we should wise up to the fact of 'real-time' effects. doing reverb on the fly would require room measurements.. current location of audio source.. and current position of ears (input source) doing such a thing has its benefits.. although not necessarily worth the processing power using the method described. but would be easier than recording hundreds of impulse response files from different locations of the room so that you can swap/switch from one impulse response file to another. doing that would probably be even slower than doing reverb in real time now that i have given it second thought. constantly changing the room dimensions (going from one room to the next) and calculating all of the soundwaves.. the transition would be smoother, which is probably the most desirable. audio cards released five years ago could do more than one track of reverb at a time. and you only have half a dozen reasons to use reverb in the first place. i think there are principles that are still quite the same.. such as trying to bypass the windows kernel as much as possible (asio) i am willing to guess that directsound is still used as a transport and either directsound3d or Xact is used as an extension. you said that directsound3d is hooked into directX therefore Xact would be better off if ran seperately with only the needed communication between them. trying to have your audio wait on the directX engine to transfer the audio is gonna take a long long long time if you are running all these fancy new features for lights and shadows and tessellation and physics computing. its better to allow multifunction and tune the multifunction so that it is as fast as possible/needed. what is interesting to me.. it says Xact can play .wav OR pcm and for all of you audiophiles that use the computer for audio.. we already know that you can put compressed audio into a .wav file. BUT pcm is uncompressed .. which gives the ability to hear much more details as long as the audio isnt completely software generated. otherwise you fill out a waveform graph and consider it as uncompressed because you are done filling in pixels on the graph. i heard you when you said the difference between the two is bad and that Xact isnt sounding up to par. but how do you know all of what Xact has to offer was being used? and how do you know if the people who were using the Xact program even knew what they were doing? its relatively new and people havent had the chance to master it yet. have you ever watched 'tractor pulls' ? if yes, have you ever seen a tractor with more than one engine on it? it makes clear sense that it is easier to have four 300hp engines instead of trying to build and tune one engine that has 1200hp its cheaper too!! not only can you build a 300hp engine for cheap .. you can replace or repair a 300hp engine far cheaper than the 1200hp engine. its the same thing with computer programming when dealing with API's and seperate kernels for the same program. from what i understand.. when you write the code in c++ or c# all you are doing is building the transmission. and as you go along, you connect an engine. and if each engine's crankshaft has a fly swatter attached to it.. you dont want to add more pistons to the engine if you are relying on that fly swatter to slap so you can move on. adding more pistons means the crankshaft can spin slower because there are more combustion chambers to spin the torque convertor. fewer pistons means the crankshaft will have to spin faster to make the torque convertor spin with the same amount of force. and that means the fly swatter is going to come around and slap much much faster so you can move on. i really think directX 9 was a single or dual engine tractor and the new ones (especially directX 11) now have more engines to help distribute the extra load. what is the load you ask? again, all the new light and shadow effects.. tesselation.. higher quality audio.. higher quality textures.. physics. all of this is like the trailer that the tractor has to pull. see proof of multi engine tractors here: http://upload.wikimedia.org/wikipedi...or_pull_02.JPG **edit** oh yea, forgot something.. sound isnt a science .. its math. therefore there are no sound scientists. the only 'sound scientists' known to exist are the people who havent finished their master degree in school. they are incomplete in their knowledge = audio scientists NOT audio mathematicians software programmers arent supposed to 'fiddle' with audio. doing audio mastering is an entire college master degree completely seperate from software programming. if you sit and play with presets.. you arent going to wow anybody unless those presets have wow-factor. but who wants to design a map around an audio preset?!! sound isnt all that complicated if you know what you want and get straight to the point without being stressed by other things that arent really important. i have been interested in audio since about age 5. and it isnt very difficult to comprehend soundwaves bouncing off of walls and/or phase. although, you might be able to play with some knobs and kinda get the audio to sound the way you want it to.. it takes an audio professional to open up a new menu and show you a knob that does exactly what you want .. but you didnt even know it existed. but yeah, it was probably just another preset of some kind. if you can look at a soundwave, you can stretch it.. you can timeshift.. you can adjust the phase.. you can adjust the delay between channels.. a whole lot of the basics that would really help the audio designer step back and learn what you want, then dive in to get the really hard parts done. Last edited by anwaypasible: 01-27-2011 at 01:21 AM. |
|
|
|
|
|
|
#6 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
The basics of it are simple. When DirectSound3D was cut, sound quality suffered. There was no adequate replacement at the time and even a magazine as respected as Maximum PC took notice.
Sound is underrated, but integral. In fact it has even been referred to as "the fourth dimension" for 3D (TVB Europe 2010). Sound is also complicated and very much a science, one worthy of study. For instance in 2007 a group of Engineers in the IEEE conducted an experiment to "examine the impacts of 3-D sound on improving depth perception and shortening task completion time." They also investigated "its impacts on immersive and realistic perception, different spacial objects identification, and subjective feeling of "human presence and collaboration." While this article specifically references augmented reality, much of the argument holds for its sibling virtual reality all the way down to computer games. Sound is complicated, but integral. DirectSound3D had years of sound development behind it, and as such, it is still ahead of the majority of what has come out today. This is why there is a petition to bring it back. http://www.ipetitions.com/petition/b...s3d/signatures |
|
|
|
|
|
#7 |
![]() Join Date: May 2007
Reputation: 307
Posts: 4,511
|
I hunt for good audio in games myself, but bringing back DirectSound3D is not my main concern. As a headphone user, generic DirectSound3D games sound boring. Only with EAX or other advanced audio effects am I satisfied. I haven't had any problems with ALchemy so far.
|
|
|
|
|
|
#8 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
I too use headphones a great deal. In fact one of DirectSound3Ds most attractive features was its "power to render increasing numbers of 3D voices, with each voice taking full advantage of HRTF (Head Related Transfer Function) technology, wave tracing and other advanced processing."
|
|
|
|
|
|
#9 |
![]() Join Date: Jul 2010
Reputation: 30
Posts: 351
|
I never even realized this, or the true features of DirectSound either.
Does it make much of a difference on basic 2 channeled stereo speakers/headphones? or any games (besides POP 08 and Crysis) To notice a comparison with? This is interested for sure though. Why would Microsoft improve graphics on their platforms, but deteriorate sound? |
|
|
|
|
|
#10 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
As DirectSound3D became "the de facto standard for real-time effects processing," there are many games that made use of it:
"It has been incorporated in hundreds of games and has become the method of choice for game developers wanting to add interactive environment effects to their titles. Some of the best selling games of all time use the EAX extensions to DirectSound 5.0 and beyond, including Warcraft3, Diablo2, World of Warcraft, Half Life, Ghost Recon, F.E.A.R. and many others." For anyone curious about experiencing this, of all the titles mentioned, I would recommend the original F.E.A.R. This game models the power of DirectSound3D well (even on 2.1). I have also experienced superior sound in many games even beyond what is listed in the above quote. Call of Duty: World at War was another memorable title. With bullets whizzing by and pinging off of barrels behind me, I truly felt as if I was in the war zone. As I moved my mouse to pan the camera, the sounds shifted too, mirroring the environment with surprising accuracy. As far as speaker setups, while 5.1 is perhaps most convincing, I have played on both 5.1, 2.1, and a pair of headphones, all with an X-Fi XtremeGamer. In some ways, I prefer the headphones because they cancel out all other sound. Some might worry about the sacrifice of positional sound with such a low speaker count, but DirectSound3D can use "Head Related Transfer Functions (HRTF) to produce a stereo feed for headphones that uses psychoacoustic cues to produce clearly spatialised sounds." Mass Effect is another great game with which to illustrate the strength of hardware sound, especially since the sequel, Mass Effect 2 was made after Microsoft removed DirectSound3D and discouraged hardware sound. While Mass Effect actually uses OpenAL (of which I am also a fan) the two games model the divide between hardware sound and post-hardware sound well. Interestingly, while Mass Effect 2 made noticeable improvements in gameplay and graphics, the sound is noticeably inferior in the absence of OpenAL. This example can be extended from OpenAL (basically the OpenGL of audio) to DirectSound3D (basically the DirectX of audio) since both are peer audio hardware APIs. But one of the most beautiful features of DirectSound3D is that the game does not have to directly support it to make use of it. Because DirectSound3D was integrated into the operating system, even games that only physically produced 2.1 stereo output could be mixed into 5.1 surround or headphone surround sound. Other features such as CMSS-3D and the X-Fi Crystallizer further enhanced sound no matter. And that's the crux. Sound could be accelerated and enhanced even without dedicated programming. Drivers and DirectSound3D could do it for you. With Windows 7, what you get is only what developers give you. If the game is only 2.1, the rest of your speakers will sit idle and the audio environment will remain flat and lifeless. This is one of many reasons I created the petition to bring back DirectSound3D. The most common opposition has been in reference to XAudio2, a much delayed successor of sorts to DirectSound3D. But it is no worthy successor. XAudio2 has been around since 2008. That's 2-3 years. While some claim it is theoretically better on paper, it is not enough to be better in theory. No modern game utilzing it has been able to rival what was accomplished with DirectSound3D. In fact, developers have actually expressed dissatisfaction with it. A quote from Teotl Studios characterizing their experiences with XAudio2 reflects this: "[The] biggest problem with Xaudio2 in Unreal is how super extremely positional it is though. If you stand in a room, and there is a sound source on your front right, then the front right speaker will play the sound at 100% and all other speakers would play it at 0%. Makes absolutely no sense to me. Sound is suppose to bounce around. We improved that a bit, but it is still noticeable...unfortunately." DirectSound3D was cut in 2006. That's 5 years of lifeless audio, a technological eternity. If DirectX was cut in 2006 and we still didn't have at least an on par replacement, people would throw a fit. But because sound is more subtle, people are willing to be more tolerant to it and in effect be "rationally ignorant." Furthermore in a day and age where everything is being offloaded from the CPU (physics for example, CUDA, and general purpose computing on the GPU), it is a step backward to paralyze discrete audio solutions. While it is possible for the CPU to process audio efficiently, it's not all about speed. It's about quality, and the fact is even games from 3 years ago sound better than today. It is a sad and embarrasing step backward for PC audio. That is why I created this petition. http://www.ipetitions.com/petition/bringbackds3d/ Last edited by anonymous321: 01-30-2011 at 05:38 PM. |
|
|
|
|
|
#11 |
![]() Join Date: Aug 2009
Reputation: 548
Posts: 1,622
|
how is this all related to suggestions for steam, and not the games that other companies make?
|
|
|
|
|
|
#12 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
Source games employed DirectSound3D and as such were intimately affected by the cut. Valve has been at the forefront of Graphics technology, describing the utility and relevance of tessellation and DirectX 11 features. They can be at the forefront of audio as well. Valve no doubt recognized the potency of DirectSound3D because the original Half Life up to its current catalogue have supported DirectSound3D.
You can too. http://www.ipetitions.com/petition/bringbackds3d/ Last edited by anonymous321: 01-31-2011 at 11:49 PM. |
|
|
|
|
|
#13 | |||
![]() Join Date: Jan 2006
Reputation: 194
Posts: 770
|
Whilst I'm completely in agreement with the sentiment of this petition, I'm not convinced that bringing DirectSound3D to Windows Vista and Windows 7 is the correct approach to solving the problems that you've described. This is because I suspect that it's hugely unlikely that Microsoft will actually do this regardless of how many signatures the petition gets, and also because I think there are probably easier and better ways to solve these problems.
In your posts, you've praised DirectSound3D and given it credit for all the fantastic audio features that we used to enjoy under Windows XP. However, I think it's more correct to say that DirectSound3D merely facilitated the existence of these great audio features in games. Creative Labs deserves the main credit because they are the ones who developed things like CMSS-3D and EAX. --------------------------------------------------------------- Before I conclude, I'd like to take some quotes from your posts and comment on them individually... Quote:
"If the application generating the audio uses a hardware-accelerated 3D audio API (i.e. DirectSound3D or OpenAL), the input for the binaural synthesis algorithms consists of up to 128 sound sources positioned arbitrarily in 3D space. If the application instead generates multi-channel sound directly (e.g. a media player app or a game with software-based audio processing), the input for the binaural synthesis algorithms consist of the 4 to 7 positional sound sources associated with the application's selected speaker configuration." From Wikipedia: Sound Blaster X-Fi: CMSS-3D Quote:
Quote:
---------------------------------------------------------------- When DirectSound3D was cut, we lost the use of the advanced features of our Sound Blaster cards. Those advanced features can be broken down into these three points:
Regarding hardware acceleration: This was not a big loss. Hardware acceleration is not really necessary now that we have multi-core CPUs. Regarding EAX: This was also not a big loss. EAX is nothing more than a library of DSP presets to simulate different environments. These sorts of effects have been replicated by various software-based middleware solutions. Regarding accurate 3D positional audio and HRTF implementations: THIS is where it all goes wrong in modern games. I don't know who I should blame for the lack of 3D positional audio in games. Perhaps game developers should be blamed for failing to show interest in this sort of technology. Perhaps audio middleware developers should be blamed for failing to include this sort of technology in their software. Whatever the case may be, I doubt that bringing back DirectSound3D is a feasible solution to this problem. Rather, I think that game developers and audio middleware developers need to be made aware of many gamers' desire for this technology. I, personally, would like to see Rapture3D used more widely in games. Rapture3D is essentially a piece of audio middleware that takes the form of an OpenAL device and is capable of producing 3D positional audio that is superior to Creative Labs' CMSS-3D. And it's all done in software. By the way, I'm not trying to weaken your argument by disagreeing with you. I'm actually trying to strengthen it by helping you distil the best points from it. From reading your posts, it's fairly clear to me what audio features you'd like to see in games. I just don't think that bringing DirectSound3D to Vista and 7 is really a realistic solution to the problem. Last edited by WildCat_ZA: 02-01-2011 at 11:28 PM. |
|||
|
|
|
|
|
#14 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
I sincerely appreciate your thoughtful post. I do think you succeeded in your effort to "distill" the best points from these posts, strengthening their core arguments.
One point of clarification. Call of Duty: World at War does use some form of hardware enhancement, of which is only available under XP, and which is likely DirectSound3D. Call of Duty: World at War was on the first titles to emphatically draw attention to the comparatively anemic audio of Windows 7. I first experienced this in Windows 7 Beta when voices of soldiers sounded "tinny" and gunshots along with other environmental, only mildly positional. I hoped this was only a wrinkle, yet to be ironed out of the Beta. It wasn't. The tinny voices and only mildly positional audio carried through to the final build of Windows 7. Even with mature drivers, there is a marked contrast between the high quality audio in XP and low-quality audio of Windows 7 in this game. The removal of DirectSound3D is the most likely and logical cause. Ultimately, the goal of this petition is to create a demand for quality audio. DirectSound3D is a prime example of all that sound could be: an all-encompassing sound experience, permeating the entire computer environment. That is why I chose to advocate it. You are right, Microsoft may never revive DirectSound3D. But, regardless of the exact incarnation of the audio savior, this petition does do one thing: It demonstrates demand. First and foremost there must be demand for quality audio. All else will follow. http://www.ipetitions.com/petition/bringbackds3d/ Last edited by anonymous321: 02-15-2011 at 12:54 AM. |
|
|
|
|
|
#15 |
![]() Join Date: Jun 2010
Reputation: 60
Posts: 158
|
Thanks for the support.
|
|
|
|
![]() |
|
||||||
|
|