[wdmaudiodev] Re: DMA mode?

  • From: wade <wdawson61@xxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 12 Aug 2009 14:31:37 -0700 (PDT)

Hi Pallavi.  Assuming that your input and output run at the same sample rate, 
how can one be taking longer than the other?
What do you mean by "My output is asynchronous while input is synchronous" ?

--- On Wed, 8/12/09, Pallavi Joshi <pallavi.v.joshi@xxxxxxxxx> wrote:

From: Pallavi Joshi <pallavi.v.joshi@xxxxxxxxx>
Subject: [wdmaudiodev] Re: DMA mode?
To: wdmaudiodev@xxxxxxxxxxxxx
Date: Wednesday, August 12, 2009, 12:39 PM

Hi Tim,
One last question, can you suggest a way of speeding things up in my case? As I 
said my output (rendering) takes more time than my input (capturing). My output 
is asynchronous while input is synchronous. 

On Tue, Aug 11, 2009 at 5:54 PM, Pallavi Joshi <pallavi.v.joshi@xxxxxxxxx> 

I meant the kernel streaming buffers that I am handing to usbaudio.sys through 
Yah, I know I can't overwrite them. The problem is that the playback(render) 
takes much longer than the capture operation. Hence the overwriting issue. I 
wanted to speed up the playback operation by using DMA buffers, but that is 
already in place looks like! 

Anyways, thanks a lot for replying.


On Tue, Aug 11, 2009 at 5:45 PM, Tim Roberts <timr@xxxxxxxxx> wrote:

Pallavi Joshi wrote:
> Yup, I meant reducing the latency! Thanks so much for replying. This
> is easy then :)
> The main issue that I am facing is that I overwrite the playback
> buffer with new data before my previous data has finished playing.

> This is what MSDN documentation says about asynchronous IO:
> "Do not deallocate or modify the OVERLAPPED structure or the data
> buffer until all asynchronous IO has been completed."

> Due to this, I get missing data in my audio stream. Do you have any
> suggestions?

I'm not sure, you have a lot of concepts mixed up here.  Which playback
buffer are you overwriting?  Is it the application buffer that is being

handed to your ASIO driver?  Is it the kernel streaming buffers you are
handing to usbaudio.sys through IOCTL_KS_WRITE?

The advice is good: you can't start reusing a buffer until you know the
guy beneath you is finished with it, but the exact definition of

"finished with it" depends on which level you're at.


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


Pallavi Joshi

Pallavi Joshi


Other related posts: