前端

node ffmpeg swf转mp4 截取mp4视频第一帧为

2021-08-31  本文已影响0人  forward

1.首先在电脑上安装node / ffmpeg (怎么安装百度叭 案例挺多不做介绍)
2.确认安装完成之后:

//注意!!!! 方法可以直接复制,前几行这个我就是标注一下以下方法用到了这些插件
const ffmpeg = require('fluent-ffmpeg')
const path = require('path') 
let cp = require('child_process');


console.log('主要内容:',"-------下边-------")


//提取视频第一帧 保存为图片
//pathFile:原文件地址/原文件名.jpg
//saveFilePath:要保存到哪/文件名.jpg
//let cp = require('child_process'); 用到了这个奥 百度去 我不解释了哇  哈哈哈哈
const execJpg = (pathFile , saveFilePath)=>{
  cp.exec(`ffmpeg -i ${path.join(__dirname, pathFile)} -y -f image2 -frames 1 ${path.join(__dirname, saveFilePath)}`, function(res) {
    console.log(`${saveFilePath} success...`)
  }) 
} 


// 利用ffmpeg swf转mp4 还可以转别的格式,详细请看ffmpeg官网(百度能查到) 
//pathFile:原文件地址/原文件名.jpg
//saveFilePath:要保存到哪/文件名.jpg
const commandMp4 = (pathFile , saveFilePath)=>{
  return new Promise((resolve, reject)=>{
    ffmpeg(path.join(__dirname, pathFile))
    // 设置视频比特率
    .videoBitrate(1024)
    //以百分比设置大小
    .size('50%')
    //设置fps
    .fps(1)
    .format('mp4')
    .on('error', (err)=> {
      reject({msg:"err" , data:err}) 
    })
    .on('end', ()=> {
      resolve({msg:"success",data:{file:saveFilePath}}) 
    })
    .save(path.join(__dirname, saveFilePath))
  })
} 
上一篇下一篇

猜你喜欢

热点阅读