以编程方式将AVI文件头添加到视频流

时间:2013-03-16 07:57:42

标签: c# video stream directshow.net data-compression

我有一个捕捉设备(模拟到数字转换器:AverMedia USB采集卡)。 当我想在C#中使用DirectShowLib录制视频时,我只接收帧。我能够使用RawVideo Player录制帧并播放文件。如何创建像AVI这样的标准视频文件头?当我想压缩数据时出现第二个问题。当我使用压缩时,我根本无法读取它。

这是我正在使用的GraphEdit架构:

enter image description here

如何使用标题等创建标准AVI或MPEG文件?

2 个答案:

答案 0 :(得分:1)

可播放文件具有一定的结构,捕获的数据通常通过所谓的多路复用器滤波器写入这种文件。对于AVI格式,标准过滤器为AVI Mux Filter。它在输入上接收视频/音频,并在输出上转换为文件兼容的流。如果/当此输出连接到File Writer Filter时,后者会生成带有正确标题的文件。

答案 1 :(得分:0)

看看this你应该可以使用它来设置一个Avi对象,然后使用你的框架AddFrame()来创建一个avi。