FFmpeg全名是Fast Forward MPEG(Moving Picture Experts Group),為開源的影音多媒體處理框架,可以進行影音的解碼、編碼、編碼轉換、混合、抽取、串流和濾鏡,無論影音格式是從哪個地方出來的,從過去到現在的影音格式它幾乎都能夠支援。FFmpeg也有很不錯的可攜性和可移植性,可以使用在Linux, Mac OS X, Microsoft Windows, BSDs, Solaris等多種不同的作業系統和多種硬體架構上。

FFmpeg提供給開發者和使用者絕佳的技術解決方案。除了自帶的函式庫之外,它還能夠和許多其它免費的第三方函式庫結合使用。開發者和使用者能夠自己選擇要啟用哪些函式庫,來建立出最適合自己用途的FFmpeg。

FFmpeg並不是一支簡單的小程式,它是個龐大的框架,由許多工具和函式庫組成。

工具包含以下幾種:

  • ffmpeg:用來轉換不同格式的多媒體檔案,為FFmpeg最主要的工具。
  • ffserver:可線上廣播影音的多媒體串流伺服器。
  • ffplay:基於SDL(Simple DirectMedia Layer)和FFmpeg函式庫的簡易播放器。
  • ffprobe:簡易的多媒體串流分析器。

函式庫則包含以下幾種:

  • libavutil:一些程式上會用到的函式與資料結構。
  • libavcodec:用來編碼與解碼不同的影音格式。
  • libavformat:用來處理承載影音串流的多媒體容器。
  • libavdevice:用來從不同的裝置輸入多媒體,或是將多媒體輸出至不同裝置。
  • libavfilter:用來進行視訊和音訊的濾鏡處理。
  • libswscale:用極佳的方式縮放影像,也可以用來轉換色彩空間。
  • libswresample:用極佳的方式處理音訊取樣。
  • 其它第三方函式庫:可藉由編譯FFmpeg前的configure程式來決定要開關哪些函式庫。如lame、libxvid、libx264、libx265、libfdk-aac、libfaac等等。

取得FFmpeg

文章開頭便提到,FFmpeg是一款開源的影音多媒體處理框架,因此可以在FFmpeg的官方網站,取得FFmpeg的原始碼,網址如下:

https://www.ffmpeg.org/

取得原始碼之後,便可以在自己的環境上編譯FFmpeg了。如果您不知道該怎麼編譯FFmpeg,FFmpeg的官方網站也替不同的作業系統提供取得已編譯好的FFmpeg,按照官方網站的指示去下載使用即可。

如果您是使用基於Ubuntu的Linux作業系統,可以參考以下方式來安裝FFmpeg。

在Linux安裝FFmpeg

若是使用Ubuntu 14.04(Trusty)或是基於Ubuntu 14.04的Linux發行版,請先使用以下指令加入「mc3man/trusty-media」這個PPA,再使用apt-get來安裝FFmpeg。若是使用Ubuntu 15.04(Vivid)之後的Linux發行版本,可以跳過添加PPA的步驟。

sudo add-apt-repository ppa:mc3man/trusty-media

linux-ffmpeg

接著輸入以下指令更新軟體庫。

sudo apt-get update

linux-ffmpeg

sudo apt-get upgrade

linux-ffmpeg

sudo apt-get dist-upgrade

linux-ffmpeg

再來使用apt-get來安裝FFmpeg,指令如下:

sudo apt-get install ffmpeg

linux-ffmpeg

安裝好後,在終端機下輸入「ffmpeg」,就可以使用ffmpeg工具了!

linux-ffmpeg

用第三方軟體源取得的FFmpeg啟用了常用的第三方函式庫,已經很夠用了。如果有特殊需求需要啟用其他功能的話,就自行在自己的環境下用FFmpeg原始碼來編譯FFmpeg吧!