http://bugs.winehq.org/show_bug.cgi?id=14717
--- Comment #247 from Andrew Eikum aeikum@codeweavers.com 2011-12-16 15:20:02 CST --- Created attachment 37994 --> http://bugs.winehq.org/attachment.cgi?id=37994 Speex-based resampler patchset
This is based on Alexander's latest patchset, but imports the resampler from the Speex project instead of trying to implement our own. It also adds a registry entry to let users with faster or slower computers choose the resampler quality. It has about 4-6% CPU usage in VLC for me with the default quality.
I would appreciate testing of this patchset, as I hope it's near final. Note that you'll need to rebuild the dsound Makefile ("make dlls/dsound/Makefile" from the Wine source root). I'd like to get this work in during the next Wine release cycle.
Alexander: If you have the time, I would most appreciate a review of patch 6 in this patchset "dsound: convert from fixed to floating point", especially the changes in DSOUND_secpos_to_bufpos(). The asserts in that function were failing, so I think I misunderstood something during my conversion. Also notice that I made significant changes to your patch "Replace convert() functions with get() and put()" to convert to float as the intermediate representation instead of LONG.
Do you think that you will have time to submit the first five patches to wine-patches during the next two or so weeks? If not, would you like me to submit them in your name? Or take ownership of them and give you credit in the patch comments? It's your code, so you get to pick what happens to it :)