fluent-ffmpeg 常用函數


最近項目頻繁用到fluent-ffmpeg,將目前使用到的函數進行總結。

首先引入fluent-ffmpeg模塊:

var ffmpeg = require('fluent-ffmpeg');

1.函數 ffmpeg.ffprobe

  ffmpeg.ffprobe查看音頻視頻文件信息並輸出為json格式

  format 里面包含比特率,時長,文件大小等信息

  streams,包含視頻音頻信息詳情,一般為兩個stream值。

 

 2 改變文件屬性

  save時可另存文件,改變源文件屬性。

  inputFPS(25)可改變幀速率;

  seek(10)設置開始時間,從第10s開始保存;

  duration(10)設置總時長;

  input( "work/music/Enya - One By One.mp3")可合並音頻;

  aspect("16:9") 設置視頻橫縱比;

  withSize('1600x900')設置視頻寬高;

  withSize('1600x?').aspect('12:8').autoPad();設置比例后,寬高值可以只設置一個值。

如果原視頻寬高比和轉換的寬高比不一致,可以設置保持原始比例,不進行拉伸,用autoPad函數。

如下截圖,主要起作用的是 -filter:v 的配置scale和pad的值,scale 保證了不拉伸,pad設置填充位置

3 將圖片合成視頻

  將圖片按規則input到ffmpeg即可存成你所需要的格式

  var proc = ffmpeg('work/video/0000/frame%d.png').inputFPS(25).save('work/music/target.avi');

4 合並視頻  

  var file1 = "1.mp4";
  var file2 = "2.mp4";
  var outPath = "out.mp4";
  var proc = ffmpeg(file1)
  .input(file2).mergeToFile(outPath);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM