IMFMediaType::GetRepresentation 方法 (mfobjects.h)

擷取媒體類型的替代表示法。 目前僅支援 DirectShow AM_MEDIA_TYPE 結構。

語法

HRESULT GetRepresentation(
  [in]  GUID   guidRepresentation,
  [out] LPVOID *ppvRepresentation
);

參數

[in] guidRepresentation

指定要擷取之表示的 GUID。 定義下列值。

意義
AM_MEDIA_TYPE_REPRESENTATION
將媒體類型轉換成 DirectShow AM_MEDIA_TYPE 結構。 方法會選取最適當的格式結構, (pbFormat) 。
FORMAT_MFVideoFormat
使用 MFVIDEOFORMAT 格式結構,將媒體類型轉換成 DirectShow AM_MEDIA_TYPE 結構。
FORMAT_VideoInfo
使用 VIDEOINFOHEADER 格式結構,將媒體類型轉換成 DirectShow AM_MEDIA_TYPE 結構。
FORMAT_VideoInfo2
將媒體類型轉換為具有VIDEOINFOHEADER2格式結構的 DirectShow AM_MEDIA_TYPE 結構。

[out] ppvRepresentation

接收包含表示之結構的指標。 方法會配置 結構的記憶體。 呼叫端必須呼叫 IMFMediaType::FreeRepresentation來釋放記憶體。

傳回值

方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 描述
S_OK
此方法已成功。
MF_E_ATTRIBUTENOTFOUND
媒體類型的詳細數據不符合要求的表示法。
MF_E_INVALIDMEDIATYPE
媒體類型無效。
MF_E_UNSUPPORTED_REPRESENTATION
媒體類型不支援要求的表示。

備註

如果您在 guidRepresentation 參數中要求特定格式結構,例如 VIDEOINFOHEADER,您可能會遺失某些格式資訊。

您也可以使用 MFInitAMMediaTypeFromMFMediaType 函式,將 Media Foundation 媒體類型轉換成 DirectShow 媒體類型。

如果已安裝 Windows Media Format 11 SDK 可轉散發元件,此介面可在下列平臺上使用:

  • Windows XP with Service Pack 2 (SP2) 和更新版本。
  • 已安裝 Windows XP Media Center Edition 2005 KB900325 (Windows XP Media Center 版本 2005) 和 KB925766 (2006 年 10 月更新匯總) 。

規格需求

需求
最低支援的用戶端 Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 mfobjects.h (include Mfidl.h)
程式庫 Mfuuid.lib

另請參閱

IMFMediaType

MFVIDEOFORMAT

媒體類型