Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This method delivers a buffer to the specified input stream.
Syntax
HRESULT ProcessInput( DWORD dwInputStreamIndex, IMediaBuffer* pBuffer, DWORD dwFlags, REFERENCE_TIME rtTimestamp, REFERENCE_TIME rtTimelength ); |
Parameters
- dwInputStreamIndex
-
Zero-based index of an input stream on the DMO.
- pBuffer
-
Pointer to the buffer's IMediaBufferinterface.
- dwFlags
-
Bitwise combination of zero or more flags from the DMO_INPUT_DATA_BUFFER_FLAGSenumeration.
- 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_TIMEflag in the dwFlagsparameter. 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_TIMELENGTHflag in the dwFlagsparameter. Otherwise, the DMO ignores this value.
Return Value
Returns an HRESULTvalue. Possible values include the following.
Value | Description |
---|---|
S_OK |
Success |
S_FALSE |
No output to process |
Invalid stream index |
|
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::GetInputStreamInfomethod.
If this method returns DMO_E_NOTACCEPTING, call the IMediaObject::ProcessOutputmethod until the input stream can accept more data. To determine whether the stream can accept more data, call the IMediaObject::GetInputStatusmethod.
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
Windows Embedded CE | Windows CE .NET 4.1 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |