从一系列图像创建视频流(AVI)

Jos*_*ola 12 .net vb.net jpeg avi video-streaming

有一个IP网络摄像头我以前写了一个.NET类.它基本上是一个Timer实现,每隔五秒从摄像头ping一次快照CGI脚本.相机本身非常难以捉摸; 它没有任何类型的API供我使用,我唯一能以编程方式(远程)调用此脚本.该脚本返回640x480 JPEG图像.简单.

现在我需要做的就是花几天的时间来拍摄这些图像,然后创建一个"时间流逝"的AVI视频流,最终将其嵌入到网页中.我怎么能用VB.NET做到这一点?

Sim*_*ens 15

.net不直接支持视频格式.您最好的选择是使用第三方工具生成.avi.

ffmpeg是一种选择.您可以通过命令行直接访问它,如下所示:

ffmpeg -f image2 -i img%d.jpg /output/a.mpg
Run Code Online (Sandbox Code Playgroud)

您需要将图像命名为img1.jpg,img2.jpg等.有关详细信息,请参阅ffmpeg常见问题解答.您还应该在常见问题中找到有关如何输出不同视频格式的详细信息.

您可以使用Process.Start()从vb启动进程.像这样的东西:

Process.Start("ffmpeg.exe", "-f image2 -i img%d.jpg /output/a.mpg")
Run Code Online (Sandbox Code Playgroud)

您还可以查看ffmpeg-sharpTao.FFmpeg,它们是ffmpeg库的.net包装器.我个人没试过,但看起来它可能会帮助你.

另一种选择是看看MEncoder,它具有类似的功能.您应该能够为此工具查找类似的命令行.

[相关问题:271003 ]