nodeJS 调用ffmpeg-static 二进制文件
nodeJS 调用ffmpeg-static 二进制文件
依赖
var fs = require('fs')
var pathToFfmpeg = require('ffmpeg-static');
var {path} = require('ffprobe-static')
var Ffmpeg = require('fluent-ffmpeg');
ffmpeg = new Ffmpeg()
const source = '../3.mp4'
格式转换
//转码----------
ffmpeg.setFfmpegPath(pathToFfmpeg)
.addInput(source)
.output('outputfile.flv')
.on('end', function () {
console.log('Finished processing');
})
.run();
滤镜
ffmpeg.setFfmpegPath(pathToFfmpeg)
.addInput(source)
.videoFilters('pad=640:480:0:10:violet')
.output('outputfile.flv')
.on('end', function () {
console.log('Finished processing');
})
.run();
获取当前版本ffmpeg可用过滤器
ffmpeg.setFfmpegPath(pathToFfmpeg)
.getAvailableFilters(function(err, filters) {
console.log("Available filters:");
console.dir(filters);
fs.writeFile('./filter.json',JSON.stringify(filters),function(err){
console.log(err);
})
})
媒体信息
ffmpeg.setFfmpegPath(pathToFfmpeg)
.setFfprobePath(path)
.addInput(source)
.addInput('./outputfile.flv')
.ffprobe(1,function(err, metadata) {
console.dir(err,metadata);
console.log(metadata);
});