问题描述
index.js
const ffmpegPath = require('@ffmpeg-installer/ffmpeg').path;
const ffmpeg = require('fluent-ffmpeg');
const process = require('process');
const args = process.argv.slice(2);
if (args.length !== 4) {
console.error('Incorrect number of arguments');
process.exit(1);
}
const startTime = args[0];
const timeDuration = args[1];
const inputFile = args[2];
const outputFile=args[3];
ffmpeg.setFfmpegPath(ffmpegPath);
ffmpeg(inputFile)
.on('start',function(commandLine) {
console.log('Spawned Ffmpeg with command: ' + commandLine);
})
.setStartTime(startTime)
.setDuration(timeDuration)
.output(outputFile)
.on('end',function(err) {
if(!err) { console.log('conversion Done') }
})
.on('error',function(err){
console.log('error: ',err)
}).run();
这是我的 index.js 文件。我在终端中使用命令运行
node index.js 6 20 ./input.mp4 ./output/mp4
控制台给出对应的ffmpeg命令ffmpeg -ss 6 -i ./input.mp4 -y -t 20 ./output.mp4
这是输入搜索。我希望这就像这个命令 fmpeg -i ./input.mp4 -ss 6 -y -t 20 ./output.mp4
一样,它是输出搜索。基本上我想在 -i [input_file] 之后 -ss [start_time]。
我尝试了很多方法,但 ffmpeg() 在输入文件之前采用开始时间参数。无论如何,如何解决这个问题? 这是输出寻求 https://trac.ffmpeg.org/wiki/Seeking
的文档解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)