0

我在回调模式下使用 Directshow SampleGrabber 从源文件中捕获视频帧并进行一些处理。另外我想保持当前的视频播放速率,并且需要支持随机、前向和后向搜索。为此,我还在另一个线程中进行了一些本地缓冲。我正在运行将 syn 源设置为 NULL 的图形,以获得最大速度。但是,当我在固定数量的缓冲后暂停图表时。即使图形暂停,SampleGrabber 回调也会被虚假调用。这影响了我的帧索引和跟踪。我想从暂停的相同位置完全恢复图表。但是,如果我使用默认时钟运行图表,它可以正常工作,但我的播放会受到影响。我希望缓冲线程尽快完成。如何确保在图形暂停时不调用回调?任何想法或建议都会有很大帮助。

在此先感谢 Pradeep

4

1 回答 1

0

暂停的图通常在内部具有所有相同的流式传输(活动状态),但渲染器阻塞流式传输,特别是。一旦收到足够的数据用于预览横幅。由于您从图中删除了时钟,因此您的渲染器可能不会阻止执行,因为它没有任何时钟可以暂停。在您的情况下,这是出于您打算重用相同图形以快速解析文件和回放的问题。单独的图形设计看起来有更多的机会做得更好。

于 2013-02-19T07:40:06.050 回答