[wdmaudiodev] Re: KsPinGetLeadingEdgeStreamPointer returns NULL

  • From: Malinnikov Aleksej <Aleksej.Malinnikov@xxxxxxxxxxxxx>
  • To: "wdmaudiodev@xxxxxxxxxxxxx" <wdmaudiodev@xxxxxxxxxxxxx>
  • Date: Fri, 26 Jun 2015 10:38:42 +0000

Hi Tim,

Thank you for the reply.

You just need to return and wait until your Process callback gets tickled

The problem is I *always* get NULL. Actually, if I don't specify
KSPIN_FLAG_ASYNCHRONOUS_PROCESSING in the pin descriptor, the Process callback
is called over and over again from ks!CKsQueue::SetDeviceState.
(I don't build the graph myself, I expose the minidriver as an audio render and
use system's Sound snap-in to test the device.)

From: wdmaudiodev-bounce@xxxxxxxxxxxxx
[mailto:wdmaudiodev-bounce@xxxxxxxxxxxxx] On Behalf Of Tim Roberts
Sent: Thursday, June 25, 2015 7:57 PM
To: wdmaudiodev@xxxxxxxxxxxxx
Subject: [wdmaudiodev] Re: KsPinGetLeadingEdgeStreamPointer returns NULL

Malinnikov Aleksej wrote:

I have a problem that was mentioned here once, but, however, without a solution:
KsPinGetLeadingEdgeStreamPointer returns NULL when I specify
KSSTREAM_POINTER_STATE_LOCKED (and non-NULL otherwise) in the sink pin Process
callback in my audio transform AVStream minifilter.
Can anybody tell me what is wrong?

That simply means there are no more free buffers for you to write into (for a
source endpoint), or no new filled buffers for you to consume (for a sink
endpoint). You just need to return and wait until your Process callback gets


Tim Roberts, timr@xxxxxxxxx<mailto:timr@xxxxxxxxx>

Providenza & Boekelheide, Inc.

Other related posts: