Hello, I will be writing audio drivers for a USB device which must support ASIO and WDM Audio. Both sources will be mixed into a common buffer before being sent over the USB (or vice-versa). Now I have worked with portcls wavecyclic, though this was some time ago. I would like to know if there is an significant reason to use avstream instead of portcls wavecyclic, since moving to avstream would add significant time for the learning curve. I've read in these archives that supposedly avstream is more flexible, but I would like to know just how, especially as the WDK says "The preferred class driver for audio drivers is the Microsoft-provided audio port class driver. Audio vendors should write minidrivers that run under Portcls.sys." Although this was a while ago, I remember that the supposed 10ms latency of wavecyclic could be overcome with SetNotificationFreq, where the frame could be set down to 1ms (IIRC). The archive says that avstream is better suited for external devices, but the archive has a workaround for that as well. So although I know nothing so far about avstream, I find it hard to justify its steep learning curve, especially as the avstream samples are- from what I can initially tell- less helpful for an audio driver. Any comments on avstream vs portcls? Finally, assuming that I don't have to support WinXP (unlikely, but not final), is WaveRT a viable choice? Based on this statement from the WDK "WaveRT avoids any need for intervention by the miniport driver in the flow of audio data between the application and the audio hardware.", I'm not sure it would be viable for me, since I need to mix two sources (at least) into a common buffer. WavePci is disqualified for a related reason, i.e. since a copy is necessary, there is no gain from the extra complexity. Any comments would be appreciated. b