Maarten Lankhorst wrote:
[DSOUND] Implement a locking mechanism
Attempt to implement locking in dsounds mixer.
Sadly horribly broken, I'm posting this in the hope someone knows what magic values to fill in at the first "if (lock)" .. I really have no clue.
As stated before it is required to be used with previous winealsa patch.
Right now it also calls Unlock with lockamount as argument, this should probably be changed to how much is actually written to (frag), but that part doesn't really matter much I think, it's more important to get the first Lock() right.
You shouldn't need to make any changes to direct sound. You just need to remove the flag DSDDESC_DONTNEEDPRIMARYLOCK from alsa and make the necessary changes in alsa. The direct sound hardware primary buffer locking support is already in primary.c.