CRenderedInputPin 類別
[與此頁面相關的功能 DirectShow是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式碼盡可能重寫為使用新的 API。
CRenderedInputPin類別是在轉譯器上實作輸入針腳的基類。 這個類別是針對不是衍生自 CBaseRenderer 類別的轉譯器篩選所設計。 (衍生自 CBaseRenderer 的篩選應該使用 CRendererInputPin 類別進行輸入 pin.)
若要使用此類別,您至少必須執行下列動作:
- 宣告繼承 CRenderedInputPin的新 pin 類別。
- 在您的 pin 類別中,宣告要保存串流鎖定的重要區段物件。 您可以使用 CCritSec 類別進行此用途。 如需詳細資訊,請參閱 執行緒和重要章節。
- 覆寫 CRenderedInputPin::EndOfStream 以保存串流鎖定。
- 實作 IMemInputPin::Receive、 CBasePin::CheckMediaType和 CBasePin::GetMediaType 方法。
- 在您的篩選中,實作 CBaseFilter::GetPin 以傳回釘選類別的實例。
您可以在具有多個輸入針腳的轉譯器中使用這個類別。 這個類別會繼承 CBaseInputPin 類別。
受保護的成員變數 | Description |
---|---|
m_bAtEndOfStream | 指出是否已到達資料流程的結尾。 |
m_bCompleteNotified | 指出釘選是否已將 EC_COMPLETE 事件傳送至篩選圖形管理員。 |
公用方法 | Description |
使用中 | 通知針腳,篩選準則現在為作用中。 |
CRenderedInputPin | 建構函式方法。 |
執行 | 通知釘選目前正在執行篩選。 |
IPin 方法 | Description |
EndFlush | 結束排清作業。 |
EndOfStream | 在篩選收到新的執行命令之前,通知針腳不會有其他資料。 |
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|