如何通过Node JS在ffmpeg中获取特定的开始和结束时间?
我想在特定的开始和结束时间剪切video并保存。 我不能理解如何减less节点JS的video的具体时间。
video复制代码:
return new Promise(function(resolve ,reject){ var ffmpeg = require('fluent-ffmpeg'); ffmpeg(fs.createReadStream(path.join(__dirname,'..','..','/video.mp4'))) .seekInput('01:00') .duration('02:00') .outputOptions('-strict experimental') .on('start', function(commandLine) { console.log('Spawned Ffmpeg with command: ' + commandLine); }).on('end', function(err) { if (!err) { console.log('conversion Done'); //res.send("conversion Done"); resolve(); } }).on('error', function(err) { console.log('error: ', +err); reject(err); }).save(path.join(__dirname,'..','..','/test.mp4')); });
请检查以下步骤和示例代码,
- 安装系统步骤中安装的ffmpeg
- 在你的项目中安装模块fluent-ffmpeg
-
请检查下面的示例代码
function clipVideo() { var params = { input: 'input_file', start: 0, duration: 10, output: 'output_file' }; return new Promise(function(resolve, reject) { ffmpeg(params.input) .setStartTime(params.start) .setDuration(params.duration) .save(params.output) .on('start', function(commandLine) { console.log('start : ' + commandLine); }) .on('progress', function(progress) { console.log('In Progress !!' + Date()); }) .on('end', function() { console.log("downlaod resolved"); return resolve(params.clippedFile); }) .on('error', function(err) { console.log("reject"); return reject(err); }) }); }
希望对你有帮助 !!
- 使用ffmpeg – nodejs区分错误和标准terminal日志
- video到audio文件通过FFMPEG节点js转换和保存
- 在AWS Zip中捆绑Node.js依赖
- 通过Socket.io HTML5video/audio到Nodejs,但扭曲 – FFMPEG
- 如何使用getSignedUrl()将Node.js fluent-ffmpeg屏幕截图的目标文件夹设置为您的AWS S3存储桶?
- 如何在Node / Meteor服务器上安装FFMPEG?
- Node.JS:FFmpegpipe道video编码没有创build缩略图
- 使用nodejs ffmpegstream摄像头
- stream节点fluent-ffmpegstreammp4video