IAMStreamControl 介面 (strmif.h)
[與此頁面 相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
介面 IAMStreamControl
會控制篩選準則上的個別資料流程。 某些篩選上的釘選會公開此介面。 例如, AVI Mux Filter 在其輸入針腳上支援這個介面,而 音訊擷取篩選器 和 WDM 視訊擷取篩選器 在其輸出釘選上支援它。
此介面可讓應用程式在指定的時間開啟和關閉資料流程。 例如,應用程式可能會關閉音訊串流,以在視訊預覽期間將音訊靜音。 擷取應用程式可以使用這個介面來指定擷取的確切開始和停止時間,以及分別控制擷取和預覽資料流程。
若要使用此介面,請呼叫 IAMStreamControl::StartAt 方法來指定針腳何時開始傳遞資料,以及 IAMStreamControl::StopAt 方法來指定何時會停止傳遞資料。 然後在 Filter Graph 管理員上呼叫 IMediaControl::Run ,以執行篩選圖形。 所有時間都是相對於圖形開始執行的時間。
當您使用此介面時,請注意下列限制:
- 篩選圖形中必須有參考時鐘。
- 具有硬體重迭的擷取卡上的預覽釘選不支援此介面。
- 如果您要將音訊和視訊擷取到交錯的 AVI 檔案,AVI Mux 篩選器需要兩個數據流。 如果您停止一個資料流程,篩選準則就無法交錯資料。 如需詳細資訊,請參閱 IConfigInterleaving 介面。
篩選開發人員: CBaseStreamControl 基類會實作此介面。
繼承
IAMStreamControl介面繼承自IUnknown介面。 IAMStreamControl 也有下列類型的成員:
方法
IAMStreamControl介面具有這些方法。
IAMStreamControl::GetInfo GetInfo 方法會擷取目前資料流程控制設定的相關資訊,包括開始和停止時間。 |
IAMStreamControl::StartAt StartAt 方法會通知釘選何時開始傳遞資料。 |
IAMStreamControl::StopAt StopAt 方法會通知針腳何時停止傳遞資料。 |
規格需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | strmif.h (包含 Dshow.h) |