m_pTransform->ProcessInput(0, pInputSample, 0) fails

29 views Asked by At

I'm trying to access the USB web with MJPG format in Media Foundation. for decoding the buffer sample i'm using the MFT intel hardware.

hr = m_pTransform->ProcessInput(0, pInputSample, 0);

this process input API throws the error code 0xc00d36b5.

I need to know what causes the error.

1

There are 1 answers

0
Gordon Childs On

Microsoft docs say that 0xc00d36b5 = MF_E_NOTACCEPTING or "The transform cannot process more input at this time." and

If the MFT already has enough input data to produce an output sample, it does not accept new input data, and ProcessInput returns MF_E_NOTACCEPTING. At that point, the client should clear the pending input data by doing one of the following:

  • Generate new output by calling IMFTransform::ProcessOutput.
  • Flush the input data by calling IMFTransform::ProcessMessage with the MFT_MESSAGE_COMMAND_FLUSH message.

So you probably need to call or keep calling ProcessOutput() to get your decoded buffer(s).