IPin::NewSegment 方法 (strmif.h)
[與此頁面 相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayer、 IMFMediaEngine 和 音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式代碼,以使用新的 API。]
方法 NewSegment
會通知針腳,這個呼叫之後收到的媒體樣本會分組為區段,並具有常見的開始時間、停止時間和速率。
應用程式不應該呼叫這個方法。 這個方法是由其他篩選條件呼叫。
語法
HRESULT NewSegment(
REFERENCE_TIME tStart,
REFERENCE_TIME tStop,
double dRate
);
參數
tStart
區段的開始時間,相對於原始來源,以 100 奈秒為單位。
tStop
區段的結束時間,相對於原始來源,以 100 奈秒為單位。
dRate
應該處理此區段的速率,以原始速率的百分比表示。
傳回值
如果成功,則傳回S_OK,或指出錯誤原因的 HRESULT 值。
備註
來源篩選 (或剖析器篩選) 在每個新數據流的開頭和每個搜尋作業之後呼叫這個方法。 它會在下游篩選條件的輸入釘選上呼叫 方法,在傳遞先前的數據批次之後,以及在呼叫 IMemInputPin::Receive 與任何新數據之前。 下游篩選會傳播 NewSegment
呼叫下游。
篩選條件可以使用區段信息來處理範例。 例如,在某些格式中,若沒有下一個主要畫面格,就無法重新建構差異畫面。 因此,如果停止時間發生在差異框架上,來源篩選必須傳送一些額外的畫面格。 譯碼器篩選會根據區段資訊決定最終畫面格。 區段速率可用來轉譯連續數據源,例如音訊數據。 例如,音訊轉譯器會使用取樣率和區段速率正確地轉譯音訊數據。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | strmif.h (包含 Dshow.h) |
程式庫 | Strmiids.lib |