在C#中使用AForge.Video.FFMPEG

时间:2013-01-30 06:57:12

标签: c# ffmpeg aforge

我使用Visual C#2008并希望从bmp序列中编写AVI文件。

我找到了AForge.Video.VWF,但它仅用于“vmw3”或“DIB”编解码器,我想使用AForge.Video.FFMPEG,但它出错了。

例如我只是编码:

using System;
using System.Collections.Generic;

using System.Linq;
using System.Text;
using AForge.Video.FFMPEG;

namespace ConsoleApplication4
{
    class Program
    {
        static void Main(string[] args)
        {
            VideoFileWriter vfw = new VideoFileWriter();
        }
    }
}

但我得到了这个filenotfoundexception

{"The specified module could not be found. (Exception from HRESULT: 0x8007007E)":null}

3 个答案:

答案 0 :(得分:11)

为了正确使用AForge.Video.FFMPEG,您必须确保将FFmpeg dll包含在输出文件夹中。最简单的方法是将它们添加到VS项目中,继续其属性并将Copy to Output Directory选项设置为“Always”。

AForge使用的FFmpeg二进制文件可以在AForge.NET的外部文件夹中找到,通常位于 C:\ Program Files(x86)\ AForge.NET \ Framework \ Externals \ ffmpeg \ bin < / p>

答案 1 :(得分:0)

之所以发生这种情况,是因为这个AForge.Video.FFMPEG.DLL依赖于另一个dll。将所有dll复制到输出文件夹中。

答案 2 :(得分:0)

不确定是否仍然有用,但是下载Accord.Video.FFMPEG将为您解决这个问题,只记得显式地构建到x86

使用Accord.Video.FFMPEG;