Tim Roberts wrote:
Matt Gonzalez wrote:I can see your point of view. Maybe I just look at it the way I do because I started with PortCls, worked with that for many years, and moved to AVStream. I had pain and struggle with both; perhaps I am leaning toward PortCls since my pain and struggle with AVStream was more recent.
Off the top of my head, I had to add support for these features with AVStream where it just worked with PortCls:
-duplicate data ranges for DirectSound
-explicitly handling KSINTERFACE_STANDARD_LOOPED_STREAMING
-add my own handler for KSPROPERTY_AUDIO_POSITION
Adding volume and mute controls and MIDI is undocumented with AVStream.
Ultimately, the important thing to keep in mind is that all these different approaches are doing the same thing, even though they use different data structures and APIs.
For what it's worth, if I have to write another audio driver from scratch, I'll use AVStream, unless I can use WaveRT.
****************** WDMAUDIODEV addresses: Post message: mailto:wdmaudiodev@xxxxxxxxxxxxx Subscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=subscribe Unsubscribe: mailto:wdmaudiodev-request@xxxxxxxxxxxxx?subject=unsubscribe Moderator: mailto:wdmaudiodev-moderators@xxxxxxxxxxxxx URL to WDMAUDIODEV page: http://www.wdmaudiodev.com/