IMediaObject::ProcessInput (Windows CE 5.0)

Send Feedback

This method delivers a buffer to the specified input stream.

HRESULT ProcessInput(DWORDdwInputStreamIndex,IMediaBuffer* pBuffer,DWORDdwFlags,REFERENCE_TIMErtTimestamp,REFERENCE_TIMErtTimelength);

Parameters

  • dwInputStreamIndex
    Zero-based index of an input stream on the DMO.
  • pBuffer
    Pointer to the buffer's IMediaBuffer interface.
  • dwFlags
    Bitwise combination of zero or more flags from the DMO_INPUT_DATA_BUFFER_FLAGS enumeration.
  • rtTimestamp
    Time stamp that specifies the start time of the data in the buffer. If the buffer has a valid time stamp, set the DMO_INPUT_DATA_BUFFERF_TIME flag in the dwFlags parameter. Otherwise, the DMO ignores this value.
  • rtTimelength
    Reference time specifying the duration of the data in the buffer. If this value is valid, set the DMO_INPUT_DATA_BUFFERF_TIMELENGTH flag in the dwFlags parameter. Otherwise, the DMO ignores this value.

Return Values

Returns an HRESULT value. Possible values include the following.

Value Description
S_OK Success
S_FALSE No output to process
DMO_E_INVALIDSTREAMINDEX Invalid stream index
DMO_E_NOTACCEPTING Data cannot be accepted

Remarks

If the DMO does not process all the data in the buffer, it keeps a reference count on the buffer. It releases the buffer once it has generated all the output, unless it needs to perform a lookahead on the data. To determine whether a DMO performs a lookahead, call the IMediaObject::GetInputStreamInfo method.

If this method returns DMO_E_NOTACCEPTING, call the IMediaObject::ProcessOutput method until the input stream can accept more data. To determine whether the stream can accept more data, call the IMediaObject::GetInputStatus method.

If the method returns S_FALSE, no output was generated from this input and the application does not need to call ProcessOutput. However, a DMO is not required to return S_FALSE in this situation; it might return S_OK.

Requirements

OS Versions: Windows CE .NET 4.1 and later.
Header:

See Also

IMediaObject | IMediaObject::GetInputStreamInfo | IMediaObject::ProcessOutput | IMediaObject::GetInputStatus | IMediaBuffer | DMO_INPUT_DATA_BUFFER_FLAGS | DMO_INPUT_DATA_BUFFERF_TIME | DMO_INPUT_DATA_BUFFERF_TIMELENGTH | DMO_E_INVALIDSTREAMINDEX

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.