簡體   English   中英

我如何知道 Directshow.net 轉換何時完成?

[英]How can i tell when a Directshow.net conversion is done?

現在我有一個 Directshow.net 圖,它接收一個視頻文件並將其編碼為一個文件,但它只是繼續運行

int x = program.Run() 

在 DirectShow.net 中,我希望程序在完全轉換完成后關閉,而不是我不得不猜測。

我怎么知道它是否以編程方式完成編碼?

如果您有一個 mediaEvent 變量,您可以檢查 WaitForCompletion function 以查看代碼是否已完成運行。 如果 waitforcompletion 的結果(在本例中為 gh)不為 0,則它正在運行,如果它等於 0,則它已完成。

const int E_Abort = unchecked((int)0x80004004); 
EventCode evCode; 
int gh = mediaEvent.WaitForCompletion(1000, out evCode); 
DsROTEntry rot = new DsROTEntry(filter); 
while (gh == E_Abort) 
{ System.Windows.Forms.Application.DoEvents(); 
gh = this.mediaEvent.WaitForCompletion(1000, out evCode); }  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM