问题描述
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)
.setStartTime(startTime)
.setDuration(timeDuration)
.output(outputFile)
.outputoptions('-hls_list_size 0')
.on('end',function(err) {
if(!err) { console.log('conversion Done') }
})
.on('error',function(err){
console.log('error: ',err)
}).run();
这是我用来从另一个 m3u8 文件创建剪辑 m3u8 格式文件的代码。我在终端上使用这个命令来生成它。 这是命令
node index.js 5 40 ../path/input.m3u8 ../path/output.m3u8
所以这里 5 是开始时间,40 是持续时间(以秒为单位)。 问题是它生成的第一个 ts 文件(例如 output_test0.ts)没有正常工作。它以 kb 格式生成,而其他格式以 MB 格式生成。因此,当我播放新的 m3u8 文件时,前 3-5 秒剪辑是静态图片,但除此之外一切正常。 这是 m3u8 文件的链接。 https://mp4.to/downloads/0cb552cd749c4cf4b
如您所见,第一个 output_test0.ts 文件与其他文件不同。其他输出 ts 文件以 MB 为单位,而第一个仅以 kb 为单位,这种情况仅发生在第一个文件中。我缺少任何命令输入?需要帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)