如何通过Node JS在ffmpeg中获取具体的开始和结束时间?
How to get specific start & end time in ffmpeg by Node JS?
我想在特定的开始和结束时间剪切视频并保存。我无法理解如何通过 Node JS 剪切该视频的特定时间。
视频复制代码:
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 installed on your system steps
- 在您的项目中安装模块 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);
})
});
}
希望对您有所帮助!!
我想在特定的开始和结束时间剪切视频并保存。我无法理解如何通过 Node JS 剪切该视频的特定时间。
视频复制代码:
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 installed on your system steps
- 在您的项目中安装模块 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); }) }); }
希望对您有所帮助!!