[wdmaudiodev] Re: KS STATE PAUSE and Streaming

  • From: AI Developer <developer@xxxxxxxxxxxxxxxx>
  • To: wdmaudiodev@xxxxxxxxxxxxx
  • Date: Wed, 17 Sep 2008 15:21:18 +0530


Are you sure about that? Sounds like a bug in the renderer if it expects a frame in paused state.

Seeing Neetu's later comment about Cancel request handling, could it be that in your case also, a cancel request is not being handled correctly? Perhaps the render is waiting for the request to be cancelled?

As for danger - yes there is a real danger. A lot of applications submit buffers in pause state, so that the driver has a queue of buffers ready when it switches to run state. Also, this way, the client could ensure that there's going to be enough "backup" of buffers during the time it takes to complete the request and to submit a new one. Reduces chances of buffer underruns.

And of course, the WHQL tests will fail your driver (I know this as a fact for audio drivers) if you try to stream in paused state!


Tim Roberts wrote:
AI Developer wrote:

Are you saying that the driver should "stream" when pin state is "Pause"?

That does not sound right to me.

It is certainly true for video devices.  Unless the device specifically sets the flag saying "I can't preroll", the graph will not fully transition to "run" until the renderer has received at least one video frame during "pause".

Neetu's description is the first time I've seen a hint that this is needed for audio devices as well, but that's certainly what it sounds like.

And in the end, what's the danger?  If the graph isn't ready for you, there won't be any buffers queued up, so everything waits anyway.
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: