ffmpeg for linux是個支持錄音錄屏和編譯,以及配合部分軟件進行直播推送的多功能媒體處理工具,可以和大量你電腦里面的環境變量進行搭配,還能進行音頻的合并和轉碼,對于視頻制作者來說,真心超級有用,使用起來也快捷方便!

軟件簡介

FFmpeg 是用于處理音頻、視頻、字幕和相關元數據的多媒體內容的庫和工具的合集。

庫:

libavcodec 提供廣泛的編解碼器實現

libavformat 流協議、容器格式和基本 I / O 訪問實現

libavutil hashers、decompressors 和 miscellaneous utility functions 實現

libavfilter 解碼的音頻和視頻過濾修飾實現

libavdevice 訪問捕獲和播放設備抽象化實現

libswresample 音頻混合和程序重采樣實現

libswscale 光色轉換和程序縮放實現

工具:

ffmpeg 操縱、轉換和流傳輸多媒體內容的命令行工具箱

ffplay 簡約的多媒體播放器

ffprobe 檢查多媒體內容的簡單分析工具

ffserver 直播多媒體流服務器

附加的一些小工具,比如 aviocat、 ismindex 和 qt-faststart

相關庫功能

ffmpeg相關的庫主要是以下7個

libavutil:用于多媒體編程,主要包含安全合適的字符串操作函數、數學運算函數、隨機數字生產器、數據結構、多媒體處理的相關函數(如對像素和采樣格式的計數)等,但它不是libavcodec和libavformat所需的庫代碼;

libavcodec、libavformat:有些視頻文件格式(如AVI)沒有指出應該使用哪種編碼(如h.264)來解析音頻和視頻數據,它們只是按視頻格式封裝音視頻數據,所以經常碰到打開視頻文件只能聽到聲音而沒有畫面,則用libavformat來解析視頻文件并將編碼流分離出來,libavcodec對流進行解碼;

libavdevice:為一些常見的多媒體輸入或輸出設備提供了抓取和渲染的通用架構,并且很多輸入和輸出設備,如Video4Linux2, VfW, DShow, and ALSA;

libavfilter:提供了一個通用規定音視頻過濾架構,包括一些過濾器、源、匯(什么是源、匯,我也沒搞清楚,待研究)

libswscale:執行高度優化的圖像縮放、色彩、像素格式轉換操作

libswresample:執行高度優化的音頻重采樣、重換算、樣本格式轉換操作

ffmpeg linux下載

linux下載及安裝ffmpeg

java項目在壓縮視頻的時候使用了ffmpeg.exe,在windows系統下可以使用,發布到linux后無法直接調用ffmpeg.exe文件,需要在linux系統下安裝ffmpeg。現總結如下:

1線上下載 及解壓

PowerShell

wget http://www.ffmpeg.org/releases/ffmpeg-4.3.1.tar.gz

tar -zxvf ffmpeg-4.3.1.tar.gz

2、 進入解壓后目錄,輸入如下命令/usr/local/ffmpeg為自己指定的安裝目錄.然后安裝.如果出現錯誤,請看最后備注。

PowerShell

cd ffmpeg-4.3.1

./configure --prefix=/usr/local/ffmpeg

make && make install

注意:最后的安裝時候需要很長時間,以及出現多個警告warning。沒關系,等待即可。

3、配置環境變量(進入vi環境)

PowerShell

vi /etc/profile? ?然后一直按enter鍵往下走走到最后

在最后unset i后面添加環境變量(輸入:i然后回車進入編輯模式):

export PATH=$PATH:/usr/local/ffmpeg/bin? ? 回車

保存退出(:wq)

查看是否生效

source /ect/profile? 設置生效

效果如下:

if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then

umask 002

else

umask 022

fi

for i in /etc/profile.d/*.sh ; do

if [ -r "$i" ]; then

if [ "${-#*i}" != "$-" ]; then

. "$i"

else

. "$i" >/dev/null

fi

fi

done

unset i

export PATH=$PATH:/usr/local/ffmpeg/bin

"/etc/profile" 79L, 1876C written

[root@izm5e7giopzqoxm6ejeva8z ~]# source

-bash: source: filename argument required

source: usage: source filename [arguments]

[root@izm5e7giopzqoxm6ejeva8z ~]# source /etc/profile

[root@izm5e7giopzqoxm6ejeva8z ~]# ffmpeg

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers

built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36)

configuration: --prefix=/usr/local/ffmpeg

libavutil? ? ? 56. 51.100 / 56. 51.100

libavcodec? ? ?58. 91.100 / 58. 91.100

libavformat? ? 58. 45.100 / 58. 45.100

libavdevice? ? 58. 10.100 / 58. 10.100

libavfilter? ? ?7. 85.100 /? 7. 85.100

libswscale? ? ? 5.? 7.100 /? 5.? 7.100

libswresample? ?3.? 7.100 /? 3.? 7.100

Hyper fast Audio and Video encoder

usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

[root@izm5e7giopzqoxm6ejeva8z ~]# ffmpeg -version

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers

built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-36)

4、配置完環境變量后 查看版本

PowerShell

ffmpeg -version? ? 查看版本

環境變量配置完成前 查看版本

PowerShell

cd /usr/local/ffmpeg/bin 到ffmpeg的安裝路徑下

./ffmpeg -version? ? 查看版本

更新內容

MagicYUV 編解碼器(實驗性)

Bitstream 過濾器,用于在 H.264,HEVC 和 MPEG-2 流中編輯元數據

TiVo ty/ty demuxer

原生 aptX 和 aptX HD 編解碼器

英特爾 QSV 加速 MJPEG 編碼

英偉達 NVDEC 加速 H.264,HEVC,MJPEG,MPEG-1/2/4,VC1,VP8 / 9 hwaccel 解碼

英特爾 QSV 加速 overlay filter

mcompand audio filter

acontrast audio filter

OpenCL overlay filter

video mix filter

video normalize filter

linux ffmpeg安裝包v4.4 正式版下載地址

遠程下載