IMediaObject::GetInputType (Windows CE 5.0)
This method retrieves a preferred media type for a specified input stream.
HRESULT GetInputType(DWORDdwInputStreamIndex,DWORDdwTypeIndex,DMO_MEDIA_TYPE* pmt);
Parameters
- dwInputStreamIndex
Zero-based index of an input stream on the DMO. - dwTypeIndex
Zero-based index on the set of acceptable media types. - pmt
[out] Pointer to a DMO_MEDIA_TYPE structure allocated by the caller. The method fills the structure with the media type. The format block might be NULL, in which case the format type GUID is GUID_NULL.
Return Values
Returns an HRESULT value. Possible values include the following.
Value | Description |
---|---|
S_OK | Success |
DMO_E_INVALIDSTREAMINDEX | Invalid stream index |
DMO_E_NO_MORE_ITEMS | Type index is out of range |
E_OUTOFMEMORY | Insufficient memory |
E_POINTER | NULL pointer argument |
Remarks
Call this method to enumerate an input stream's preferred media types. The DMO assigns each media type an index value in order of preference. The most preferred type has an index of zero. To enumerate all the types, make successive calls while incrementing the type index until the method returns DMO_E_NO_MORE_ITEMS.
If the method succeeds, call MoFreeMediaType to free the format block.
To set the media type, call the IMediaObject::SetInputType method.
Setting the media type on one stream can change another stream's preferred types. In fact, a stream might not have a preferred type until the type is set on another stream. For example, a decoder might not have a preferred output type until the input type is set.
The DMO is not required to update its preferred types dynamically in this fashion. Thus, the types returned by this method are not guaranteed to be valid; they might fail when used in the SetInputType method.
Conversely, the DMO is not guaranteed to enumerate every media type that it supports. To test whether a media type is acceptable, call SetInputType with the DMO_SET_TYPEF_TEST_ONLY flag.
Requirements
OS Versions: Windows CE .NET 4.1 and later.
Header: Dmo.h.
Link Library: Dmoguid.lib.
See Also
IMediaObject | IMediaObject::SetInputType | MoFreeMediaType | DMO_E_INVALIDSTREAMINDEX | DMO_E_NO_MORE_ITEMS | DMO_MEDIA_TYPE
Send Feedback on this topic to the authors