Default Win32 Audio Driver?

BlitzMax Forums/BlitzMax Programming/Default Win32 Audio Driver?

marksibly(Posted 2007) [#1]
Hi,

I'd like to change the default Win32 audio driver to "DirectSound" for the next release.

FreeAudio works fine on Mac/Linux but suffers the nasty 'half second delay' issue under Vista - as do all mmaudio based apps.

Any objections?


Qube(Posted 2007) [#2]
None here :)

I think we'll be ok with DirectSound as the default for the time being. Long term I'm not fully convinced. Overall it appears to be the best all rounder at the present time.

OpenAL seems the best option for Vista but I hear MS are changing the audio system yet again :/


Dreamora(Posted 2007) [#3]
DirectSound is discontinued in Vista

So yes, someone here who is against it

So either:
DS default for Windows < Vista
OpenAL default for Vista

or
OpenAL default for any windows


Grey Alien(Posted 2007) [#4]
Mark can't really use OpenAL as default because what if user's don't have it installed? They won't get any sound and there will be a slew of help requests. Or do you only need the dll for the other OpenAL modes like OpenAL Generic Software etc?

Mark have you seen these threads?

http://www.blitzbasic.com/Community/posts.php?topic=73970
http://www.blitzbasic.com/Community/posts.php?topic=73716

Basically I have decided on FreeAudio for XP and OpenAL for non-XP. But some people have reported FreeAudio lags even on XP! So maybe DirectSound as the default driver *IS* the way to go. Then people can decide if they want to distribute OpenAL.dll and use that instead (like me).


skidracer(Posted 2007) [#5]
The fact hardware buffers are no longer supported does not mean DirectSound has been discontinued, it just means Vista broke a lot of audio apps. Or perhaps someone could post a MS based link thats states otherwise.

I thought DSound was already the default win32 driver, so yeh gets my vote.

re: OpenAL, does the installer still look like a windows 3.1 app?


marksibly(Posted 2007) [#6]

DirectSound is discontinued in Vista


DirectSound may be discontinued, but it is still 'there' and, under Vista, is the only solution that works 'out of the box', and doesn't require installation of extra components.

And I doubt it will be going anywhere. If MS were to remove it, thousands of existing apps/games would cease to work.

So for Vista, DirectSound as the default driver is to me a no-brainer - the idea of a default driver being simply the driver with the highest probability of working with the least hassle.

The question then becomes what about XP etc? I have heard few if any reports of DirectSound problems under XP so I think it makes sense to switch for all versions of Windows.


REDi(Posted 2007) [#7]
DirectSound gets my vote, I cant see MS dropping DS support, that would kill a large majority of software currently available.

skid, you can launch the OpenAL installer in silent mode (-s), so no window :) and it only installs if its needed.
but yeah it still looks pretty naff in non-silent mode.

EDIT - I should type faster ;)


popcade(Posted 2007) [#8]
The MSDN mentioned XACT(sound system of DX10/XNA) is a high level wrapper on DirectSound, so DSound isn't discontinued, at least with DX10.

It's simply like Win32API, you may think .NET is the whole new thing, however it's basically on top of Win32API, MFC, and ATL.

The DX10 introduced new rendering pipe but not much other things changed as well as DPlay/DAudio etc, you can compare the headers and/or look into the lib.

MCI, DSound, OAL etc, was emulated here and there because the nature that Vista want these API to be run "under total control". I've fed up with this but can't do anything to avoid this, and that broke many app I wrote with low level DDK.

I prefer DSound but OAL is also OK, on Vista DS and OAL is on the same layer, I just hate to carry DLLs with program :P


Abrexxes(Posted 2007) [#9]
DirectSound works perfekt but is under Vista without any hardware support for soundcard buffers, EAX stuff etc, so it needs more power under Vista because everythink is only emulated. (There are really reasons why Vista needs more Cpu Time and RAM than XP ;) )

But the day DirectSound stops working on vista you can be shure that DX9 also no longer works. Since DX6 the audio part of DX has not changed, DX8 only has added dangerous effekts and DX9 nothing.

bye


Dreamora(Posted 2007) [#10]
forget my points here


popcade(Posted 2007) [#11]
Extra things:

When I test Vista SP1 beta, the sound lag on my office workstation magically disappeared.

Definitely Vista SP1 has changed something internally, If you're beta testers, I do encourage you to make a deep test.


Grey Alien(Posted 2007) [#12]
Dreamora: Direct Sound does have a sound lag or other problems in Vista - FreeAudio does. Unless you have more info?...

Yoko: Is that the FreeAudio sound lag that goes away?


tonyg(Posted 2007) [#13]
I don't suppose there is a way we can set the default drivers ourselves? Some option somewhere?


Grey Alien(Posted 2007) [#14]
What's the point in setting a default yourself when all you have to do is call SetAudioDriver("FreeAudio") or SetAudioDriver("OpenAL")? Or do you mean an option in the IDE?


tonyg(Posted 2007) [#15]
Not sure how to answer these but I will have a go :
What's the point in setting a default yourself when all you have to do is call SetAudioDriver("FreeAudio") or SetAudioDriver("OpenAL")?

So I can set a default that is used by...errr.... default so that I don't have to set anything for the audio or graphics driver.

Or do you mean an option in the IDE?

Your use of 'or' in this context is a tad confusing.
Are you saying you don't understand the need for being able to set a default UNLESS that default is set in the IDE? Anyway, the IDE would be a good place.
I am not that fussed but, if Mark is asking what default to set, then it seems logical to give the decision to the user.


Grey Alien(Posted 2007) [#16]
Well I figured there was no point to setting a default in code as you may as well just set the driver, so therefore the only place to set a default would be in the IDE (or in some kinda Blitz defaults file which doesn't exist).


Dreamora(Posted 2007) [#17]
yupp ... setting it through code would be kind of pointless doublework ^^


tonyg(Posted 2007) [#18]
I agree it would be very silly to have the default set within your code.
Some option somewhere?

Ahhhh.... there's the giveaway!


Grey Alien(Posted 2007) [#19]
Hey I've been up to 4-5am every night(morning) for 2 weeks finishing my game off so my reading comprehension may have suffered.