InfTee 篩選範例

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

Description

InfTee 篩選準則提供 DirectShow Infinite Pin Tee 篩選準則的範例實作。 篩選準則有一個輸入針腳和動態數目的輸出針腳。 傳送至篩選的所有媒體範例都會從所有輸出針腳同時傳遞。

此篩選準則會出現在 GraphEdit 中,名稱為 「Sample Infinite Pin Tee」,以區別它與 DirectShow 中提供的標準 Infinite Pin Tee 篩選。

使用方式

因為此篩選不會變更它接收的資料,所以所有針腳都必須同意相同的媒體類型。 在連線過程中,篩選準則可能會重新連線某些針腳,以讓媒體類型相符。

傳送至輸出針腳之前,不會複製抵達輸入針腳的資料。 篩選也可確保資料傳遞至下游篩選,以確保這兩個輸出都會收到及時的服務。 特別是,如果其中一個輸出可以在 COutputQueue::Receive 成員函式中封鎖,則 tee 會關閉執行緒來傳遞範例。 如果沒有線程可傳遞範例,則將範例傳遞至 tee 輸入針腳的執行緒可能會將資料傳遞至下游篩選準則;此時,它可能會封鎖,讓其他下游篩選的資料持續很長一段時間。

下載範例

若要下載 DirectShow SDK 範例,請安裝最新版本的 Windows SDK

此範例會安裝在下列路徑之下: [SDK Root]\Samples\Multimedia\DirectShow\Filters\InfTee。

DirectShow 範例