IMFMediaType::GetRepresentation 方法 (mfobjects.h)
检索媒体类型的替代表示形式。 目前仅支持 DirectShow AM_MEDIA_TYPE 结构。
语法
HRESULT GetRepresentation(
[in] GUID guidRepresentation,
[out] LPVOID *ppvRepresentation
);
参数
[in] guidRepresentation
指定要检索的表示形式的 GUID。 定义了以下值。
值 | 含义 |
---|---|
|
将媒体类型转换为 DirectShow AM_MEDIA_TYPE 结构。 方法 (pbFormat) 选择最合适的格式结构。 |
|
使用 MFVIDEOFORMAT 格式结构将媒体类型转换为 DirectShow AM_MEDIA_TYPE 结构。 |
|
使用 VIDEOINFOHEADER 格式结构将媒体类型转换为 DirectShow AM_MEDIA_TYPE 结构。 |
|
将媒体类型转换为具有 VIDEOINFOHEADER2 格式结构的 DirectShow AM_MEDIA_TYPE 结构。 |
[out] ppvRepresentation
接收指向包含表示形式的结构的指针。 方法为 结构分配内存。 调用方必须通过调用 IMFMediaType::FreeRepresentation 释放内存。
返回值
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
媒体类型的详细信息与请求的表示形式不匹配。 |
|
媒体类型无效。 |
|
媒体类型不支持请求的表示形式。 |
注解
如果请求 guidRepresentation 参数中的特定格式结构(例如 VIDEOINFOHEADER),可能会丢失某些格式信息。
还可以使用 MFInitAMMediaTypeFromMFMediaType 函数将 Media Foundation 媒体类型转换为 DirectShow 媒体类型。
如果安装了 Windows Media Format 11 SDK 可再发行组件,则此接口在以下平台上可用:
- 具有 Service Pack 2 的 Windows XP (SP2) 及更高版本。
- Windows XP Media Center Edition 2005 KB900325 (Windows XP Media Center Edition 2005) 和安装KB925766 (2006 年 10 月更新汇总的 Windows XP Media Center Edition) 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | mfobjects.h (包括 Mfidl.h) |
Library | Mfuuid.lib |