ICaptureGraphBuilder::ControlStream 方法 (strmif.h)
[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
語法
HRESULT ControlStream(
[in] const GUID *pCategory,
[in] IBaseFilter *pFilter,
[in] REFERENCE_TIME *pstart,
[in] REFERENCE_TIME *pstop,
[in] WORD wStartCookie,
[in] WORD wStopCookie
);
參數
[in] pCategory
指定輸出釘選類別目錄的 GUID 指標。 如需所有釘選類別的清單,請參閱 Pin 屬性集 。 此值不可為 Null。
[in] pFilter
要控制之篩選上的 IBaseFilter 介面指標。 指定 Null 會控制圖形中的所有擷取篩選。 您會收到每個擷取篩選器的一個通知。
[in] pstart
擷取開始時間的指標。 Null 表示立即啟動。 MAX_TIME 表示取消先前的要求,如果沒有先前的要求,則不採取任何動作。
[in] pstop
擷取停止時間的指標。 Null 表示立即停止。 MAX_TIME 表示取消先前的要求,如果沒有先前的要求,則不採取任何動作。
[in] wStartCookie
指定要在啟動時傳送的特定值。
[in] wStopCookie
指定要在停止發生時傳送的特定值。
傳回值
傳回S_FALSE如果停止通知是在轉譯擷取篩選最後一個範例之前傳送,則傳回S_OK。
如果此方法傳回S_FALSE,應用程式可能會想要等待,再停止篩選圖形,以允許所有樣本通過圖形並轉譯。 否則,範例可能會遺失。
如果沒有符合您所提供描述的針腳,或所有指示的針腳都不支援串流控制,則此函式會傳回失敗碼。
備註
使用此方法進行畫面精確擷取,或用於個別控制擷取和預覽。 例如,如果您只想要預覽所擷取的映射,您可以關閉將擷取的映射寫入磁片。
這個方法會在針腳上使用 IAMStreamControl 介面。
這個方法會針對使用指定類別的針腳找到的每個篩選傳送一個通知。
規格需求
目標平台 | Windows |
標頭 | strmif.h (包含 Dshow.h) |