IAMStreamSelect::Info 方法 (strmif.h)

[與此頁面相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式代碼盡可能重寫為使用新的 API。

方法 Info 會擷取指定數據流的相關信息。

語法

HRESULT Info(
  [in]  long          lIndex,
  [out] AM_MEDIA_TYPE **ppmt,
  [out] DWORD         *pdwFlags,
  [out] LCID          *plcid,
  [out] DWORD         *pdwGroup,
  [out] LPWSTR        *ppszName,
  [out] IUnknown      **ppObject,
  [out] IUnknown      **ppUnk
);

參數

[in] lIndex

數據流以零起始的索引。

[out] ppmt

接收數據串流媒體類型指標的變數位址。 此參數是選擇性的,可以是 NULL。 如果值為非 NULL,則方法會傳回 AM_MEDIA_TYPE 結構的指標。 呼叫端必須刪除 結構,包括格式區塊。 (您可以從 DirectShow 基類連結庫使用 DeleteMediaType 函式。)

[out] pdwFlags

接收下列其中一個值的變數指標:

Description
零個 此數據流已停用。
AMSTREAMSELECTINFO_ENABLED 數據流已啟用,而且此群組中的其他人可能也會啟用。
AMSTREAMSELECTINFO_EXCLUSIVE 此數據流是群組中唯一啟用的數據流。
 

此參數是選擇性的,可以是 NULL

[out] plcid

接收地區設定內容 (LCID) 值的變數指標。 如果數據流與特定地區設定相關聯,則會在此變數中傳回 LCID。 否則,變數會接收零值。 此參數是選擇性的,可以是 NULL

[out] pdwGroup

接收與數據流相關聯之邏輯群組的變數指標。 此參數是選擇性的,可以是 NULL

[out] ppszName

接收數據流名稱指標的變數位址。 呼叫端必須藉由呼叫 CoTaskMemFree 函式釋放傳回的字串。 此參數是選擇性的,可以是 NULL

[out] ppObject

接收 IUnknown 介面指標的變數位址。 方法可能會傳回與數據流相關聯的釘選或篩選指標,或者可能會傳回 NULL 值。 如果方法傳回非 NULL 值,呼叫端必須釋放 IUnknown 指標。

呼叫 IAMStreamSelect::Enable 方法可能會使此方法傳回的物件失效。

此參數是選擇性的,可以是 NULL

MPEG-1 Stream 分割器MPEG-2 分割器和SAMI (CC) 剖析器篩選條件會傳回與選取數據流相關聯的針腳指標。

[out] ppUnk

接收 IUnknown 介面指標的變數位址。 方法可能會傳回數據流專屬之介面的指標,或者可能會傳回 NULL值。 如果方法傳回非 NULL 值,呼叫端必須釋放 IUnknown 指標。 此參數是選擇性的,可以是 NULL

MPEG-1 Stream 分割器、MPEG-2 分割器和 SAMI (CC) 剖析器會篩選所有傳回 NULL 值。 第三方篩選可能會傳回自定義篩選介面的指標。

傳回值

傳回 HRESULT 值。 可能的值如下。

傳回碼 Description
E_FAIL
失敗。
E_OUTOFMEMORY
記憶體不足。
S_FALSE
索引超出範圍。
S_OK
成功。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

錯誤和成功碼

IAMStreamSelect 介面