Node.js 将多个图像添加到视频流ffmpeg
我设法将单个图像添加到视频中,从某个时间开始,到某个时间结束,但我找不到一种方法来对多个图像执行此操作。我使用流利的ffmpeg 这是我的代码:Node.js 将多个图像添加到视频流ffmpeg,node.js,ffmpeg,fluent-ffmpeg,Node.js,Ffmpeg,Fluent Ffmpeg,我设法将单个图像添加到视频中,从某个时间开始,到某个时间结束,但我找不到一种方法来对多个图像执行此操作。我使用流利的ffmpeg 这是我的代码: ffmpeg('../videos/testklein.mp4') .input('../src/test.png') .input('../src/0.png') .input('../src/1.png') .addOptions([ "-strict -2" ]) .c
ffmpeg('../videos/testklein.mp4')
.input('../src/test.png')
.input('../src/0.png')
.input('../src/1.png')
.addOptions([
"-strict -2"
])
.complexFilter([
{
filter: 'overlay',
options: {
x: 200,
y: 200,
enable: 'between(t,1,3)',
}}, {
filter: 'overlay',
options: {
x: 200,
y: 200,
enable: 'between(t,3,5)',
}},
{
filter: 'overlay',
options: {
x: 200,
y: 200,
enable: 'between(t,5,7)',
}
},
])
我想我需要明确说明什么过滤器应该接受什么文件,但我不确定它的语法 这是正确的语法:
第一个添加输入[0:v][1:v]和输出['tmp']
然后添加['tmp']作为下一个的输入。对于2个图像:
我可以添加任意数量的图像。
将“tmp”作为第二个参数传递给complexFilter
(当然,您可以将tmp更改为任何字符串)
.complexFilter(
[
{
"filter": "overlay",
"options": {
"enable": "between(t,2,4)",
"x": "810",
"y": "465"
},
"inputs": "[0:v][1:v]",
"outputs": "tmp"
},
{
"filter": "overlay",
"options": {
"enable": "between(t,13,14)",
"x": "810",
"y": "465"
},
"inputs": "[tmp][2:v]",
"outputs": "tmp"
}
], 'tmp')