有没有人知道可靠的方法来从一系列图像文件创建视频?在你因为我没搜索答案就发帖而扣分之前,也在你发送简单消息如“使用FFMPEG”之前,请先阅读完这篇文章。
我正在尝试从一系列图像(.jpg、.bmp等)中创建一个视频,格式不太重要,只要它得到广泛支持即可。我的平台是Windows Server 2008,64位。如果可以在C#程序内制作视频,那很好,但我也不排斥将一系列图像文件写入目录,然后启动外部程序从这些图片中制作视频。
唯一的限制是:它必须在我的Windows Server 2008系统上运行,并且可以进行脚本化操作。也就是说,不需要操作员干预的GUI程序。
我在StackOverflow上找到了许多类似的问题,并尝试了其中几个解决方案,但都带有不同程度的挫败感,而且没有一个成功。
FFMPEG看起来是一个很棒的程序,在Linux上可能是的。但我下载的两个Windows版本均无法使用。给定下面的命令行:
ffmpeg -r 1 -f image2 -i jpeg\*.jpg video.avi
其中一个构建版本读取图像后因数据执行预防而崩溃。另一个读取第一个文件,然后输出一个错误消息,指出“无法找到适合文件jpeg/image2.jpg的编解码器”。总之,在Windows下,FFMPEG看起来不可行。
对先前发布的一个答案推荐Splicer。它看起来是相当不错的代码。我编译了这些示例并尝试运行,但遇到了一些难以理解的文件未找到的错误消息。看起来COM类没有注册。我想我需要安装一些东西(DirectShow?虽然我认为已经安装了?)。根据所需内容的不同,我可能很难在服务器上证明其安装的必要性。(“什么?你为什么需要在服务器上安装这个?”)
另一个答案建议从Code Project中使用AviFile库。这看起来很简单:是Windows AviFile子系统的一个包装器。除了该程序创建的AVI文件似乎具有所有帧,但是当我在Windows Media Player中播放AVI时,只显示第一帧。好吧,如果您尝试创建压缩视频,则该程序会抛出异常。
因此,我想知道是否有一种好的、可靠的方法来实现我的目标:在Windows系统上,从一系列图像创建一个AVI或其他常见视频文件格式,可以通过.NET API或使用外部程序。有什么帮助吗?