winmm: Fix notification when recording using MSACM.
Joerg-Cyril.Hoehle at t-systems.com
Joerg-Cyril.Hoehle at t-systems.com
Fri Mar 15 09:06:51 CDT 2013
Hi,
Alexandre Julliard wrote:
>> To achieve this, we eliminate the tail call and turn it into a loop,
>> which allows us to preserve the local state in the variable "last".
>Please do this as a proper loop, not with a goto.
In bug #33155 I explained that Wine's PullACMData needs a redesign
http://bugs.winehq.org/show_bug.cgi?id=33155
The core issue is the fundamental impedance mismatch between mmdevapi
capture and WinMM/ACM recording w.r.t. packet/headers sizes that
shows off depending on codec's block size.
I have no plans to fix that. Any takers?
As a consequence, I won't spend time now refactoring the existing
misdesigned code into a set of nested loops -- still as misdesigned --
just to eliminate a goto.
So the choice was:
- Perform a tiny surgical change now, using a goto, with the benefit
that 1:1 ACM codecs like µ-Law or A-Law would start working,
while all others are left in the cold, waiting for a redesign.
- Leave as is, waiting for somebody to perform the redesign.
Meanwhile, ACM recording doesn't work at all and the whole
function could as well be replaced by a single FIXME line.
Regards,
Jörg Höhle
More information about the wine-devel
mailing list