Comment 411 for bug 371897

Revision history for this message
In , Maarten Lankhorst (mlankhorst) wrote :

Ok just my 2¢, not having read many of the posts here because of the length of the bug report..

Technically the winepulse driver is just the winealsa driver which is just the wineoss driver which is crappy.. A cleaner driver wouldn't take many lines, and isn't actually hard to implement. look at winemmaudio.drv

In either case I've been asked to work on fixing things, and to me it's clear that our current way of doing things just result into a various amount of copy paste drivers, of which some are in worser decay than others, and a few that haven't even been compiled since years (solaris driver). Yet those things still need to be maintained. To clean up that mess, with having different code paths for directsound, winmm and mmdevapi the best way is to just follow what windows does, and make winmm and dsound forward to mmdevapi. This will mean the winmm drivers and dsound drivers will be obsolete. The devil is in the details right now. Right now I'm trying to make winmm work on top of mmdevapi, which makes a lot of the discussion irrelevant, alsa will likely stick around a bit longer, because the midi api was not ported, and I'm not sure how much that has changed in windows.

The only question is will openal be good enough? I'm getting signs it won't be, and in that case we may need to throw out our mmdevapi code and fix that. Either way winepulse.drv won't get in.

Last, what does winepulse add that winealsa doesn't? If it's just a matter of taking the code and replacing alsa calls with pulse calls without fundamentally making a better driver, then our winealsa.drv should be good enough. If there are any bugs in our winealsa.drv that are a result of incorrect api calls, file a bug report for it. If the problem is in alsa's pulse plugin, fix it there and file a bug for it. However as it stands winepulse won't enter the wine tree, but that doesn't mean pulseaudio is not supported. It is supported, but only through winealsa, If you have concrete bugs in our winealsa code, write a bug report and cc me on it, just having a winepulse driver because it's a native driver won't convince me to accept it..

I really wish to leave it at that. Wine does support pulseaudio, it just has no native pulse driver. Any bugs in our winealsa that im aware of will be looked at.

~Maarten