Lennart Poettering wrote: > I could repeat here what I wrote in response to Nick > Thompson. Complaining about Free Software is nothing that makes you > any friends in the community. Fine. I'm complaining. But let me tell you this. I dug through the Wine alsa driver, the alsa pulse plugin and the PA sources. I now pretty much know how these three components interact and where the problems are. I simply arrived at a point where I wasn't willing to dig any deeper. I'm simply not ready to study the codebase any more. I've seen my share. Enough to be able to create a fairly precise bug report. So I wrote to this mailinglist and asked for help. I didn't demand that you fix the bugs. I just wanted some advice. And to that I didn't get any response. > I am not using wine myself, and haven't looked into fixing this. I had > a quick peek into it though. They did almost everything wrong that you > can do wrong if you care about supporting more than a single backend > driver for your ALSA code. They made invalid assumptions about mixer > tracks, they use the super-ugly and not-portable > snd_async_add_pcm_handler() where it is almost guranteed that people > get it wrong (because those handlers are run from signal handler > context, which has some very special semantics, ranging from errno > handling to a lot of other things) and a lot more. It is nearly > impossible to write a backend for ALSA that works with applications > like these. Basically, the task is to clean up WINE's ALSA use, before > looking on the PA backend for libasound. The async handler was removed last summer, as part of the driver rewrite in a GSoC2007 project. And a lot other fixes also went into the Wine alsa driver since then. Most of the issues have already been fixed. The mixer code still may be a bit unclean, but that has nothing to do with the audio playback problems. If you know of any other outstanding issues in the Wine driver (apart from the _delay() misuse), please tell the Wine folks or me, I'll gladly forward the mail to the current maintainer. As the chances of including a native PA driver in Wine are zero, the focus is on improving the current Wine alsa driver and the alsa pulse plugin. That is what I'm trying to do. tom