如何防止清理结束Media Foundation的演示

问题描述

我目前正在使用Media Foundation实施清理。到目前为止,它运行良好,但是存在一个问题:当试图接近流的结尾时,Media Foundation会自动触发MEEndOfPresentation而不是MESessionScrubSampleComplete。请注意,我不是在流的末尾寻找,只是在流的末尾寻找。我的视频流的持续时间为3173933333 hns,我正在寻求3173920000 hns,因此搜索目标仍在流的边界之内,我不明白为什么这会触发MEEndOfPresentation事件。尽管如此,只要我想尽一切办法,Media Foundation就会立即触发MEEndOfPresentation,根本没有MESessionScrubSampleComplete

代码如下:

PROPVARIANT var;

// enable scrubbing
pRateControl->SetRate(FALSE,0.0f);

PropVariantInit(&var);

var.vt = VT_I8;
var.hVal.QuadPart = 3173920000;
       
pSession->Start(GUID_NULL,&var);
PropVariantClear(&var); 

正如我说的那样,当试图接近流的末尾时,该代码除了 以外的其他情况都可以正常工作。

有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)