admin管理员组文章数量:814905
Node.js ffmpeg从2个或更多jpg图像创建mp4视频
[我正在制作视频动画制作器,该动画制作器首先从html .jpg
标签生成canvas
图像,然后将这些图像用作视频的帧。我正在使用ffmpeg
进行视频生成。
仅使用一张图像时有效
const ffmpeg = require('fluent-ffmpeg');
ffmpeg.setFfmpegPath("C://Program Files/ffmpeg/bin/ffmpeg.exe");
var command = ffmpeg();
command
.input("./test.jpg")
.save("./test.mp4")
.outputFPS(1)
.on('end', () => {
console.log("done");
});
我用这段代码制作了一个1秒长的mp4视频,但这仅用一个图像/帧。
我想做的事(2张以上图片)
const ffmpeg = require('fluent-ffmpeg');
ffmpeg.setFfmpegPath("C://Program Files/ffmpeg/bin/ffmpeg.exe");
var command = ffmpeg();
command
.input("./test.jpg")
.input("./another.jpg")
.save("./test.mp4")
.outputFPS(1)
.frames(2)
.on('end', () => {
console.log("done");
});
这不起作用,因为它生成的视频与第一个示例相同。代替显示第一秒的一个图像和第二秒的另一个图像,它会生成一个只有第一幅图像的一秒钟长视频。
有人可以显示如何解决此问题吗?
回答如下:好查看文档后,似乎添加两个图像作为输入的唯一方法是使用图像文件模式。
我只需要以类似的模式命名图像
image0.jpg
image1.jpg
image2.jpg
或者如果需要10+或100+图像,则带有其他前面的0。
现在我可以做command.input("./image%1d.jpg")
。希望这对以后与我有同样问题的人们有所帮助。
本文标签: Nodejs ffmpeg从2个或更多jpg图像创建mp4视频
版权声明:本文标题:Node.js ffmpeg从2个或更多jpg图像创建mp4视频 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1715141847a821513.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论