[英]fluent-ffmpeg from an array of input files
我想使用fluent-ffmpeg
创建目录或数据库条目的后n个图像的视频。
哪个是正确的语法?
这些是我的尝试:
模拟shell命令
ffmpeg()
.addInput('ls *png | tail -n 17')
.inputOptions("-pattern_type glob")
.output("output.mp4").run()
但是它不接受shell命令;
空格分隔的路径
ffmpeg()
.addInput('a*.png b*.png ')
.inputOptions("-pattern_type glob")
.output("output.mp4").run()
但它不接受以空格分隔的文件列表;
图像路径数组
ffmpeg()
.addInput(array) // ['aa.png', 'a1.png',,,'bbb.png']
.inputOptions("-pattern_type glob")
.output("output.mp4").run()
但它不接受数组。
编辑:
另外,从使用节点流利的ffmpeg合并多个视频 ,我能够使用文件数组添加多个输入为
var ffmpeg= require('fluent-ffmpeg');
var f=ffmpeg()
pngarr.forEach(p => f.input(p)) /// pngarr is my array of png paths
但是跑步
f.output("./output.mp4").run()
我只得到0秒的视频,其中包含列表的第一个png。
ffmpeg方法是可链接的,因此您可以使用如下的reducer:
var chainedInputs = inputlist.reduce((result, inputItem) => result.addInput(inputItem), ffmpeg());
您的上一次编辑几乎做了同样的事情,但是它在同一级别而不是上一个级别继续调用.input()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.