DirectShow按顺序播放两个视频文件? [英] DirectShow play two video files in a sequence?

查看:112
本文介绍了DirectShow按顺序播放两个视频文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

文件源(异步)过滤器在其生命周期内仅支持一个文件。
是否可以在不重建图形的情况下按顺序播放两个文件?

"File Source (Async)" filter supports only one file per it's life. Is the a way to play two files in a sequence without rebuilding a graph?

推荐答案

文件源(异步)仅向过滤器图提供随机访问字节流,还有其他对回放至关重要的组件:解复用器,解码器。不,不可能通过文件源(异步)过滤器将另一个文件排入队列。

File Source (Async) only supplies random access byte stream to the filter graph, there are other components vital for playback: demultiplexers, decoders. No, it is not possible to enqueue another file through File Source (Async) filter.

可以无缝地播放多个文件,否则可以,但是需要将图形分成多个部分并连接它们就将数据从一个图形(从文件读取,一个通过文件更改重建的图形)发送到另一个图形(使用渲染器,一个永不重建并提供无缝回放用户体验的图形)而言。

Playing multiple files seamlessly otherwise is possible but requires to split graph into parts and connect them together in terms of sending data from one graph (reading from file, the one you rebuild with file change) to the other (with renderers, the one being never rebuilt and providing seamless playback user experience).

阅读有关桥接图的其他问题:

Read up other questions on bridging graphs:

  • GMFBridge usage in DirectShow
  • When changing a file name, Recording Start is overdue for 3 seconds.

这篇关于DirectShow按顺序播放两个视频文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆