Sets the media type for a stream.
This media type defines that format that the Source Reader produces as output. It can differ from the native format provided by the media source. See Remarks for more information.
HRESULT SetCurrentMediaType( DWORD dwStreamIndex, DWORD *pdwReserved, IMFMediaType *pMediaType );
The stream to configure. The value can be any of the following.
||The zero-based index of a stream.|
||The first video stream.|
||The first audio stream.|
Reserved. Set to NULL.
A pointer to the IMFMediaType interface of the media type.
The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.
||The method succeeded.|
||At least one decoder was found for the native stream type, but the type specified by pMediaType was rejected.|
||One or more sample requests are still pending.|
||The dwStreamIndex parameter is invalid.|
||Could not find a decoder for the native stream type.|
For each stream, you can set the media type to any of the following:
- One of the native types offered by the media source. To enumerate the native types, call IMFSourceReader::GetNativeMediaType.
- If the native media type is compressed, you can specify a corresponding uncompressed format. The Source Reader will search for a decoder that can decode from the native format to the specified uncompressed format.
If you set the MF_SOURCE_READER_ENABLE_VIDEO_PROCESSING attribute to TRUE when you create the Source Reader, the Source Reader will convert YUV video to RGB-32. This conversion is not optimized for real-time video playback.
This interface is available on Windows Vista if Platform Update Supplement for Windows Vista is installed.
|Minimum supported client||Windows 7, Windows Vista and Platform Update Supplement for Windows Vista [desktop apps | UWP apps]|
|Minimum supported server||Windows Server 2008 R2 [desktop apps | UWP apps]|