Ffmpeg 視頻壓縮的幾個關鍵參數

Ffmpeg的視頻操做官網文檔:https://ffmpeg.org/ffmpeg-filters.html#Video-Filtershtml

視頻壓縮用到的參數主要爲如下幾個:ide

  • 文件路徑:-i 輸入文件的路徑
  • 碼率:-b:v 輸出文件的碼率
  • 分辨率:-s 輸出文件的分辨率;
  • 幀率:-r 輸出文件的幀率值

碼率

碼率,即波特率。值越小,轉換後的視頻越小工具

碼率就是數據傳輸時單位時間傳送的數據位數,通常咱們用的單位是kbps即千位每秒。post

碼率與體積成正比:碼率越大,體積越大;碼率越小,體積越小。因爲文件體積與取樣率是成正比的,因此幾乎全部的編碼格式都想用最低的碼率達到最少的失真,「碼率」就是失真度,碼率越高越清晰,反之則畫面粗糙並且馬賽克多。編碼

建議碼率不要小於500。通常500k左右,人眼看不到明顯的閃爍。url

案例:ffmpeg.exe -i test.MP4 -b 600k output.mp4.net

分辨率

指的是視頻的分辨率,常見的分辨率有4096*2304,1920*1080,720*576等。視頻

具體的值,能夠根據源視頻的分辨率作個等比的縮小。htm

案例:ffmpeg.exe -i test.MP4 -s 1920*1080 output.mp4blog

幀率

幀率(即視頻更新率),就是每秒編碼進視頻文件的幀數目,是用於測量顯示幀數的量度。

測量單位爲「每秒顯示幀數」(Frame Per Second,FPS,幀率)或「赫茲」,單位用FPS用來描述視頻每秒播放多少幀,而單位用赫茲用來描述顯示器的畫面每秒更新多少次。

常見的帖率有2五、30,高清電視有50、60幀。

通常幀率越高,視頻畫面越流暢。可是人類的眼睛須要每秒至少15幀才能將圖像連貫在一塊兒~

案例:ffmpeg.exe -i test.MP4 -r 25 output.mp4

FFmpeg使用

通常的壓縮命令能夠用:ffmpeg.exe -i test.MP4 -b:v 500k -r 25 -s 1920x1080 output.mp4。分辨率能夠根據源視頻的尺寸等比進行設置~

1. 下載ffmpeg.exe

ffmpeg.exe文件下載連接: https://pan.baidu.com/s/1DmeIHlDsCTq1SdSm_ejbmQ 提取碼: jrkm

2.Xabe.FFmpeg

Xabe.FFmpeg是一個ffmpeg第三方封裝,它提供了ffmpeg的下載、管理以及ffmpeg.exe的詳細封裝操做,使ffmpeg的操做更加簡潔。

經過Nuget包引用後(只支持.net 4.6.1及以上),調用await FFmpeg.GetLatestVersion(FFmpegVersion.Full); 便可獲取相應的版本。

 Xabe.FFmpeg 官網指導:  https://ffmpeg.xabe.net/index.html

 Xabe.FFmpeg的使用,可參考博客:C# 中使用 FFmpeg.NET

 

參考文章:

相關文章
相關標籤/搜索