FFmpeg開發筆記(二十五)Linux環境給FFmpeg整合libwebp

aqi00發表於2024-06-01
《FFmpeg開發實戰:從零基礎到短影片上線》一書介紹了JPEG、PNG、GIF等圖片格式,以及如何透過FFmpeg把影片畫面轉存為這些格式。除了上述這些常見的圖片格式,還有較新的WebP格式,它由VP8影片標準派生而來,VP8演進的影片格式叫做WebM,圖片格式則叫WebP。

若想讓FFmpeg支援WebP圖片的編解碼,就要給它整合第三方庫libwebp。下面就介紹如何在Linux環境給FFmpeg整合WebP圖片的編解碼庫libwebp。

一、安裝libwebp

libwebp的原始碼下載頁面是https://github.com/webmproject/libwebp,各版本libwebp的下載頁面為https://github.com/webmproject/libwebp/tags。最新的1.3.2版本於2023年9月份釋出,原始碼包的下載連結為https://github.com/webmproject/libwebp/archive/refs/tags/v1.3.2.tar.gz。
libwebp的安裝步驟說明如下。
1、將下載好的壓縮包上傳到伺服器並解壓,也就是依次執行以下命令。

tar zxvf libwebp-1.3.2.tar.gz
cd libwebp-1.3.2

2、進入解壓後的libwebp目錄,執行下面命令生成配置檔案。

libtoolize
./autogen.sh

3、執行下面命令配置libwebp。

./configure

4、執行下面命令編譯libwebp。

make -j4

5、編譯完成後,執行下面命令安裝libwebp。

make install

二、啟用libwebp

由於FFmpeg預設未啟用libwebp,因此需要重新配置FFmpeg,標明啟用libwebp,然後重新編譯安裝FFmpeg。FFmpeg的Linux環境完整編譯過程參見《FFmpeg開發實戰:從零基礎到短影片上線》一書的“1.2.3 自行編譯與安裝FFmpeg”,詳細的啟用步驟說明如下。
1、回到FFmpeg原始碼的目錄,執行以下命令重新配置FFmpeg,主要增加啟用libwebp。(增加了選項--enable-libwebp)

./configure --prefix=/usr/local/ffmpeg --enable-shared --disable-static --disable-doc --enable-zlib --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libdavs2 --enable-libmp3lame --enable-libfreetype --enable-libass --enable-libfribidi --enable-libxml2 --enable-fontconfig --enable-sdl2 --enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libopus --enable-libvpx --enable-openssl --enable-libaom --enable-libsvtav1 --enable-libdav1d --enable-libuavs3d --enable-libwebp --enable-iconv --enable-gpl --enable-nonfree

2、執行下面命令編譯FFmpeg。

make clean
make -j4

3、執行下面命令安裝FFmpeg。

make install

4、執行以下命令檢視FFmpeg的版本資訊。

ffmpeg -version

檢視控制檯回顯的FFmpeg版本資訊,找到“--enable-libwebp”,說明FFmpeg正確啟用了WebP圖片的編解碼器libwebp。

相關文章