IKsInterfaceHandler::KsCompleteIo 方法 (ksproxy.h)
KsCompleteIo 方法會在輸入和輸出 (I/O) 完成之後清除擴充標頭並釋放媒體範例。
語法
HRESULT KsCompleteIo(
[in, out] PKSSTREAM_SEGMENT StreamSegment
);
參數
[in, out] StreamSegment
KSSTREAM_SEGMENT 結構的指標,其中包含要完成之數據流區段的標頭資訊。
傳回值
如果成功,則傳回 NOERROR;否則,傳回錯誤碼。
備註
KsCompleteIo 方法會捨棄配置的記憶體、更新媒體範例,並遞減 Proxy 的等候項目計數。
KsCompleteIo 方法必須判斷從 KSSTREAM_SEGMENT 結構的 IoOperation 成員完成的 IKsInterfaceHandler::KsProcessMediaSamples 方法所完成的 I/O 作業類型。 如果 I/O 作業是從 KSIOOPERATION 列舉類型 (KsIoOperation_Read 讀取資料 ) ,KsCompleteIo 會執行下列動作,將範例從輸出釘選傳遞至連接的輸入針腳:
- 反映 IMediaSample 介面中的數據流標頭資訊。
- 呼叫輸出針腳的 IKsPin::KsDeliver 方法來傳遞範例。 KsDeliver 會釋放範例,以便在佇列緩衝區到裝置時擷取範例,如果樣本是最後一個樣本,就可以擷取該樣本。 然後輸入針腳會完成 I/O,並安全地釋放範例。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | ksproxy.h (包含 Ksproxy.h) |