Hi,

>What behavior do you think Wine is going to do wrong
Matthew van Eerde's web log has a sample silence playing
application using EVENTCALLBACK mode.
http://blogs.msdn.com/b/matthew_van_eerde/archive/2008/12/10/sample-playing-silence-via-wasapi-event-driven-pull-mode.aspx

Running it in Wine shows that Wine violates the assumption/invariant/guarantee 
IMHO
 Event signaled  => there's room in the buffer
  -- much like winmm's MOM_DONE signals that a buffer is free.
I don't know when the first event is signaled nor at what rate they are 
signaled.
(Perhaps one is signaled every time one of the mixer's 10ms chunks is 
processed?).
The app immediately complains and exits.

Wine's mmdevapi current unconditional and periodic SetEvent does not match
the above program's expectations (nor would it match exclusive mode behaviour:
 event => complete buffer free for writing). A periodic 10ms event may be fine 
when
playing goes smooth, but that's not the case right at the beginning, esp. when
filling the buffer before calling Start.

I should turn that into a distinct bug report.

Regards,
 Jörg Höhle

Reply via email to