CSourceStream 類別

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

csourcestream 類別階層

CSourceStream類別會提供CSource篩選類別的輸出釘選。

如需使用此類別的資訊,請參閱 CSource。 這個類別會繼承 CAMThread 類別,以提供背景工作執行緒,以便從針腳串流資料。 CSourceStream類別會實作下列協助程式方法,以將要求傳送至執行緒:

執行緒的第一個要求必須是 InitExit要求會終止執行緒。 實際上,不需要直接呼叫任何這些方法,因為針腳的 CSourceStream::ActiveCSourceStream::Inactive 方法會視需要呼叫它們。

類別也提供數個「處理常式」方法:

這些在基類中不會執行任何動作,但衍生類別可以覆寫它們。

受保護的成員變數 Description
m_pFilter 包含這個釘選之篩選的指標。
保護方法 Description
OnThreadCreate 初始化串流執行緒時呼叫。 虛擬。
OnThreadDestroy 當串流執行緒即將結束時呼叫。 虛擬。
OnThreadStartPlay CSourceStream::D oBufferProcessingLoop 方法的開頭呼叫。 虛擬。
使用中 通知針腳,篩選現在為使用中。
非使用中 通知針腳,篩選已不再使用中。
GetRequest 等候下一個執行緒要求。
CheckRequest 檢查是否有線程要求,而不封鎖。
ThreadProc 執行緒程式。 虛擬。
DoBufferProcessingLoop 產生媒體資料,並將它傳遞給下游輸入針腳。 虛擬。
CheckMediaType 判斷針腳是否接受特定媒體類型。 虛擬。
GetMediaType 擷取慣用的媒體類型。 虛擬。
公用方法 Description
CSourceStream 建構函式方法。
~ CSourceStream 解構函式方法。 虛擬。
Init 初始化串流執行緒。
結束 發出要結束的串流執行緒訊號。
執行 發出要執行的串流執行緒訊號。
暫停 發出串流執行緒變成作用中的訊號。
停止 發出要停止的串流執行緒訊號。
純虛擬方法 Description
FillBuffer 使用資料填入媒體範例。
IPin 方法 Description
QueryId 擷取針腳的識別碼。

規格需求

需求
標頭
Source.h (包含 Streams.h)
程式庫
Strmbase.lib (零售組建) ;
Strmbasd.lib (偵錯組建)

另請參閱

撰寫來源篩選