Hi Maarten, >From a technical point of view, two things popped out:
1) configure is autogenerated by Alexandre, so you shouldn't include it in your patch. configure.ac is enough. 2) The patch doesn't apply with git-am. I don't know how much of an issue this is for AJ, but I prefer git-am over git-apply and manually committing I barely know too much about sound, so I'm leaving the rest of the tech stuff up to Joerg and Eikum. >From a user point of view, I have a previous version of that driver in my tree, and great hopes that it fixes some issues on my gaming setup that uses Pulseaudio(due to a multiseat configuration), e.g. bug 28856. The alsa route may eventually fix those bugs too, but I'm hoping for that since more than a year. So good luck with your Pulse driver, and thanks for working on this flamewar- infested stuff. Cheers, Stefan Am Donnerstag, 8. März 2012, 01:22:58 schrieb Maarten Lankhorst: > Signed-off-by: Maarten Lankhorst <[email protected]> > --- > Resending now v1.4 is released for inclusion into 1.5, no changes from v9 > > V1: Original version > V2: > - Added basic session manager bullshit > - Fixed a bunch of test failures > - Add stubs for audio volumes, fixes to make capture work > V3: > - 20% cooler > - reworked clock handling to be much more accurate > - rewrite of all the interesting parts > - only tested rendering, capture untested > V4: > - Make mixer settings global to prevent > - Start of making capture working again > V5: > - Really break capture this time, TODO!! > - Fix most rendering tests except those related volume, rendering > should not only pass tests, but also be done in a correct way > - Cleaned up channel mapping > - Fix clock going 2x as fast > V6: > - Reliability fixes > - Align buffer size to a multiple of period size > - Remove session lock, I plan to use pulseaudio calls for volume, anyhow > V7: > - Implement shared mode capture correctly > - All non-IAudioStreamVolume related tests should pass for capture and > rendering > V8: > - Add DllMain to fix valgrind complaints > - Add real and fake volume control > - Passes all tests including the ones marked todo_wine > V9: > - Rework IAudioClient::Reset, flushing is only needed for render stream. > - Add stream validity checks to IAudioClock as well > - Fix copy pasted bug from winealsa in clone_format (As reported by > KittyCat) - Validate wBitsPerSample for float format (kcat) > - Make the pulse mapping const (kcat) > - Change mix format to float (kcat) > - Fix volume comments referring to alsa instead of Pulseaudio > - Split off pulseaudio spec to waveformat to a separate function > - Disabled audioclock interpolation for now, until I determine how to do it > properly. - Call SetEvent in render callback as last function, since it > gives up time slot (as reported by Joerg) - Reworked capture logic to > always capture, since that seems to be the case on windows, when stopped we > simply drop whole packets, but keep firing the event. - Rework the logic > behind GetMixFormat, and make capture and rendering formats and periods > separate again. This is needed for example if you have 5.1 playback 44100 > with 32kHz 2 channel capture (USB microphone). - Complete the > pa_channel_position -> dwChannelMask mapping > - Use MulDiv instead of pa_bytes_to_usec or pa_usec_to_bytes in a few > places. - Rendering buffers no longer have to be a multiple of period size. > > There are 2 places that still have those calls, but in worst case it will > make a 50 ns difference for the reported device periods, while the one in > AudioClock::GetPosition is disabled until it's determined how to handle > interpolation of IAudioClock::GetPosition, if that's still going to happen. > > I believe with this I addressed all issues and comments raised in V8, > and looking forward to any constructive feedback and test results of V9. > In particular, I'm interested in XAudio2 results with windows version > set to vista or higher, so that it uses mmdevapi directly > > winmm and dsound should be able to work unmodified, but you may want > to lower ds_snd_queue_max to 3 or 4 to decrease latency on dsound games. > It seems dsound doesn't respect mmdevapi in that regard or 2 periods > might have been possible. It would have been nice if it did. :(
signature.asc
Description: This is a digitally signed message part.
