audio driver autodetection

Francois Gouget fgouget at codeweavers.com
Tue Oct 5 09:58:12 CDT 2004


Alexandre Julliard wrote:
[...]
> I don't think we want to add yet another driver just for
> autodetection. Each driver should simply refuse to load if its
> hardware isn't present, then winmm can load each of them in turn
> until one succeeds.

Note that this pretty much works already. To try it out, edit your 
configuration file (yes I'm old fashioned, I still have a configuration 
file<g>) as follows:

[WinMM]
"Drivers" = "winearts.drv;winealsa.drv;wineoss.drv"

Then on a system with no aRts and no Alsa, Wine will automatically load 
the wineoss driver. A system with aRts plus Alsa plus OSS emulation, 
will see devices for all three drivers, i.e. it should look as if we had 
three sound cards. We might want to change that so winmm stops as soon 
as it finds a driver that works but I'm not sure that would be better: 
we could conceivably have two sound cards, one accessible through Alsa 
and the other through OSS.

What needs fixing is that:
  * winearts seems to be causing some problems with threading.
  * if more than one driver is loaded DirectSound tends to get confused
  * some drivers may still need fixing to return the correct value if 
the underlying sound system is not available (wineaudioio, winejack, 
winenas)

Basically it all needs more testing and a bit of debugging.

-- 
Francois Gouget
fgouget at codeweavers.com




More information about the wine-devel mailing list