【发布时间】:2012-05-30 15:19:21
【问题描述】:
我有一个 mp4 Capture 应用程序,它连续捕获图形 30 分钟(或某个动态值),我需要非常高的捕获精度,不会丢失频率。数据的。
为此,我们决定制作 2 个捕获图,首先运行第一个图,然后在 30 分钟后制作第二个图,运行它然后停止第一个图,这样我们就不会丢失任何数据。
以简单的方式,我们无法创建第二个图,因为第一个图正在运行并且资源正在使用中(我猜这几乎是我们的逻辑不起作用的原因)
我正在寻找它并找到了 GMFBridge ,我想这在我们的案例中可能很有用,我正在考虑制作如下流程
源图
Video Source --> XCodec Filter --> Infinite tee --> GMF Bridge Sink Filter (multile as per tee)-->
Audio Source --> ACM Wrapper --> MonoGraph AAC Encodec --> Infinite Tee (multile as per tee)--> GMF Bridge Sink Filter -->
第一张图
--> GMF Source Filter --> GDCL Mux --> Filter Writer
第二张图
--> GMF Source Filter --> GDCL Mux --> Filter Writer
现在使用 GMFBridge,我们将只使用一次源并使用 Infinite Pin Tee Filter 复制它,并制作连接 Source Graph to First Graph 和 Source Graph to Second Graph 的应用程序。
首先运行Source Graph to First Graph 的组合,30 分钟后运行Source Graph to First Graph 的组合,然后停止该图表。
我想知道我的理解是否正确?我可以使用 GMFbridge 实现这一点吗?除了在他们的示例应用程序中提供之外,我还需要简单的 GMFBridge 代码。
请帮忙。
谢谢
【问题讨论】:
标签: visual-c++ directshow video-capture