兼容DirectShow技术的视频压缩器

时间:2011-12-27 06:47:50

标签: c# video compression directshow webcam

我正在开发一个应用程序,它允许从网络摄像头录制视频。 (使用visual studio 2008,c#)

所需的压缩比约为10秒= 1 mb。我找到了唯一一个适合这个:DivX Codec Pack的那个,但似乎不是免费的。或者,可能不是,我不确定:它通过DivXInstaller安装,下载许多垃圾,我不需要,在DivX控制面板上有一个标签:DivX Codec,试用,还剩15天。这个标签不会改变超过两周......

另一个不错的选择是VP40®压缩机。压缩比约为1秒至1毫升。但它在Windows XP中存在一些奇怪的问题,我还不明白,它有什么问题。

我现在有些问题:

  1. 是否有适合安装的DivX Codec Pack的安装程序 只有这个包装,没有添加200磅重的垃圾?
  2. 还有其他与DirectShow兼容的优质视频压缩器吗? 我默认拥有的那些(如Microsoft Video 1,DV Video) 编码器等)压缩比不好,或者非常糟糕 记录的视频质量不佳。
  3. 当然,首选免费的压缩机。
  4. P.S。抱歉我的英语不好。

    一段代码:

        // the part of method to record video
    
    capture = new Capture(filters.VideoInputDevices[VCB.SelectedIndex], filters.AudioInputDevices[ACB.SelectedIndex]);
        // VCB & ACB are the combobox for video & audio capture devices
    capture.VideoCompressor = filters.VideoCompressors[CCB.SelectedIndex];
        // that's the video compressor, that is used
        //and then:
        try
                        {
                            capture.PreviewWindow = panelVideo;
                            Log.CreateLogFiles("Video panel initialized");
                        }
                        catch (Exception ex) { Log.CreateLogFiles(ex); }
                        capture.Filename = "Somestring";
                        capture.Start();
    

2 个答案:

答案 0 :(得分:2)

如果仅使用Windows解决方案就足够了,您可以考虑使用Windows Media格式。可能有Mac支持。将WM ASF Writer Filter添加到DirectShow过滤器图形将呈现输出到Windows Media文件。通过内置或用户定义的配置文件指定比特率/质量。

来自Windows Media Encoder 9 Series SDK的Windows Media Encoder是一个UI工具,可用于微调压缩参数,检查视觉质量等。

答案 1 :(得分:1)

您是否尝试过xvid

来自维基百科:

  

Xvid是DivX Pro Codec的主要竞争对手。与...对比   DivX编解码器,由DivX,Inc。开发的专有软件,   Xvid是根据GNU General的条款分发的免费软件   公共许可证