IMFDeviceTransform::GetInputStreamPreferredState 方法 (mftransform.h)
GetInputStreamPreferredState方法會取得裝置 MFT 輸入資料流程的慣用狀態和媒體類型。
語法
HRESULT GetInputStreamPreferredState(
[in] DWORD dwStreamID,
[out] DeviceStreamState *value,
[out] IMFMediaType **ppMediaType
);
參數
[in] dwStreamID
需要擷取其狀態之輸入資料流程的資料流程識別碼。
[out] value
指定指定輸入裝置 MFT 資料流程的目前 DeviceStreamState 。
[out] ppMediaType
輸入資料流程的慣用媒體類型會透過此參數傳入。
傳回值
方法會傳回 HRESULT。 可能的值包括但不限於下表中指定的值。
傳回碼 | 描述 |
---|---|
|
轉換資料流程狀態成功。 |
|
裝置 MFT 目前不支援要求。 |
|
傳遞了不正確資料流程識別碼。 |
|
無法轉換要求的資料流程。 |
備註
此介面函式有助於查詢需要轉換的裝置 MFT 輸入資料流程慣用狀態和媒體類型。
當輸出資料流程的媒體類型變更需要輸入中的對應變更時,Device MFT 會將 METransformInputStreamStateChanged 張貼至 DTM,以變更相關的輸入資料流程。 DTM 會呼叫 GetInputStreamPreferredState 來擷取裝置 MFT 輸入資料流程的慣用媒體類型和狀態。
例如,假設有兩個輸入資料流程和三個輸出資料流程的裝置 MFT。 讓 [輸出 1] 和 [輸出 2] 來源從 Input 1 和 stream at 720p。 現在,讓我們說輸出 2 的媒體類型變更為 1080p。 若要滿足此要求,裝置 MFT 必須將輸入 1 媒體類型變更為 1080p,方法是將 METransformInputStreamStateChanged 事件張貼至 DTM。 DTM 會呼叫 GetInputStreamPreferredState ,並擷取慣用的狀態和媒體類型。 DTM 會呼叫 SetInputStreamState 來變更輸入資料流程的 mediatype 和 state。
需求
最低支援的用戶端 | Windows 10 (版本 1703) |
目標平台 | Windows |
標頭 | mftransform.h |