https://bugs.winehq.org/show_bug.cgi?id=46450
--- Comment #4 from Andrew Eikum aeikum@codeweavers.com --- Yeah that looks really good. I'd change the enum members to be ALL CAPS to distinguish them from local variables, and maybe change them to something like WINEPULSE_WRITE_NOFREE to make it clear they're specific to winepulse.
I understand the 24-bit stuff is awkward on big-endian, but shouldn't the PROCESS_BUFFERS macro work fine on big-endian?
Can you also mention here what apps you tested it with?