[wdmaudiodev] Re: VAD processing and re-routing streams
- From: Tim Roberts <timr@xxxxxxxxx>
- To: wdmaudiodev@xxxxxxxxxxxxx
- Date: Fri, 8 May 2020 00:16:03 -0700
On May 7, 2020, at 1:22 PM, Giacomo Costantini <giacomo.costantini3@xxxxxxxxx>
wrote:
I have seen that normally IOCTL is used with WaveCyclic and WavePCI, but I
also know that theoretically WaveRT is the best choice to guarantee realtime
performances.
WavwRT provides better performance for WaveRT-compliant hardware, because the
Audio Engine can manipulate the hardware’s buffer pointers directly and totally
avoid a trip into kernel mode.. However, yours is a virtual device. There is
no hardware. The processing is going to be exactly the same no matter what
model you use. I tried to start from SYSVAD for my virtual devices; I just
don’t think it’s a good fit. I’ve done two VAD solutions now based on MSVAD.
However, that’s only my opinion.
Does it work with WaveRT as well?
The initialization is the same.
In the SYSVAD sample, the content of the buffer is saved in an audio file by
default (through CMiniportWaveRTStream::ReadBytes ), that makes me think it
should be relatively easy to get that stream from an application, but I still
do not see how to do that in practice and I have no specific code nor
documentation references.
Right, that’s basically the same purpose that the CopyTo and CopyFrom functions
served in MSVAD. Well, not ReadBytes, but WriteBytes, if you want to capture a
stream. You’ll write the data into a circular buffer, and write an ioctl
handler to return that to the managing application.
—
Tim Roberts, timr@xxxxxxxxx
Providenza & Boekelheide, Inc.
******************
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/
Other related posts: