现在,我有一个Directshow.net图形,它接收视频文件并将其编码为文件,但是它会继续运行
int x = program.Run() 在DirectShow.net中,我希望程序在完全转换完成时关闭,而不是我不得不猜测。
我怎样才能知道它是否已经完成了编程编码?
发布于 2011-06-15 08:20:06
如果您有一个mediaEvent变量,您可以检查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); } https://stackoverflow.com/questions/6312084
复制相似问题