Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.js ffmpeg从2个或更多jpg图像创建mp4视频_Javascript_Node.js_Ffmpeg_Mp4 - Fatal编程技术网

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

Javascript Node.js ffmpeg从2个或更多jpg图像创建mp4视频,javascript,node.js,ffmpeg,mp4,Javascript,Node.js,Ffmpeg,Mp4,我正在制作一个视频动画,首先从html画布标记生成.jpg图像,然后将图像用作视频的帧。我正在使用ffmpeg生成视频 仅使用一张图像时,该功能有效 const ffmpeg = require('fluent-ffmpeg'); ffmpeg.setFfmpegPath("C://Program Files/ffmpeg/bin/ffmpeg.exe"); var command = ffmpeg(); command .input("./test.jpg") .save(

我正在制作一个视频动画,首先从html
画布
标记生成
.jpg
图像,然后将图像用作视频的帧。我正在使用
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张以上的图片)

这不起作用,因为它生成的视频与第一个示例相同。它不会在第一秒钟显示一个图像,在第二秒钟显示另一个图像,而是生成一个只有第一个图像的1秒长视频


有人能演示一下如何解决这个问题吗?

好的。查看文档后,似乎添加两个图像作为输入的唯一方法是使用图像文件模式

我只需要以这样的模式命名图像

image0.jpg
image1.jpg
image2.jpg
如果我想要10张以上或100张以上的图片,也可以加上前面的0

现在我只需执行
命令.input(“./image%1d.jpg”)

希望这能帮助将来和我有同样问题的人。

好的。查看文档后,似乎添加两个图像作为输入的唯一方法是使用图像文件模式

我只需要以这样的模式命名图像

image0.jpg
image1.jpg
image2.jpg
如果我想要10张以上或100张以上的图片,也可以加上前面的0

现在我只需执行
命令.input(“./image%1d.jpg”)
。 希望这能帮助将来和我有同样问题的人