Re: CPullPin::Receive() being called too early.



On Tue, 6 Jun 2006 16:56:01 -0700, Phil in San Diego wrote:

i am writing a decoder filter. my graph looks like this:
file source (async) --> decoder --> directsound output

I have a CPullPin::Receive() method that does the decoding. I am getting
that call *before* I get the call to ::Run() in either my filter or input
pin. I have a check in CPullPin::Receive() that checks to see if it's
streaming:

if (S_OK != m_pInputPin->CheckStreaming())
{
return S_FALSE;
}

Which is of course is failing since ::Run() hasn't been called yet. What's
going on here? Should I wait for the ::Run() call? What should i return
here??

the pullpin would be activated by the first call to Pause, not Run, and
possibly the filter code activates the pins before it sets the filter's
state?

G
.



Relevant Pages

  • Re: USB Isochronous question
    ... Do you mean that WDF do not support the STREAM mode in Isochronous ... do something in USB ISO driver to convert the raw data to RGB data, ... What is exactly mean of "pin"? ... be used as a streaming device in DirectShow, ...
    (microsoft.public.development.device.drivers)
  • Re: Stream Class Custom Video Format Problem
    ... Pin categories don't really apply to your case. ... pin that was supporting non-KSDATAFORMAT_TYPE_VIDEO formats. ... be a problem however - probably because the custom format is listed last ... to both pins and streaming data from both. ...
    (microsoft.public.development.device.drivers)
  • Re: live webcam streaming using DirectShow
    ... Is it possible to pass a pin (preview pin, capture pin whatever doing the streaming) to directplay to stream a live capture through the network? ...
    (microsoft.public.win32.programmer.directx.video)