Node.js ffmpeg从2个或更多jpg图像创建mp4视频

编程入门 行业动态 更新时间:2024-10-10 15:18:53

Node.js ffmpeg从2个或更多jpg<a href=https://www.elefans.com/category/jswz/34/1771430.html style=图像创建mp4视频"/>

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")。希望这对以后与我有同样问题的人们有所帮助。

更多推荐

Node.js ffmpeg从2个或更多jpg图像创建mp4视频

本文发布于:2024-05-07 09:33:02,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1755628.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:图像   更多   视频   js   Node

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!