XviD是個開源的視頻編解碼器,它與DivX一同被納入MPEG-4規範第二部分的視頻標準,但DivX並未開源。早期的MP4視頻大多採用XviD或者DivX編碼,當時的視頻格式被稱作MPEG-4。現在常見的H.264後來才增補到MPEG-4規範的第十部分,當然如今使用XviD壓縮的視頻已經不多了。 ...
XviD是個開源的視頻編解碼器,它與DivX一同被納入MPEG-4規範第二部分的視頻標準,但DivX並未開源。早期的MP4視頻大多採用XviD或者DivX編碼,當時的視頻格式被稱作MPEG-4。現在常見的H.264後來才增補到MPEG-4規範的第十部分,當然如今使用XviD壓縮的視頻已經不多了。
在《FFmpeg開發實戰:從零基礎到短視頻上線》一書的“2.1.1 音視頻編碼的發展歷程”提到“MPEG-4標準的第二部分規定了視頻的編解碼器比如Xvid”,只是XviD格式已經逐漸被H.264標準取代,所以該書並未介紹如何給FFmpeg集成XviD。下麵就介紹如何在Linux環境給FFmpeg集成XviD的編解碼庫libxvid。
一、安裝libxvid
libxvid的源碼下載頁面是https://labs.xvid.com/source/,最新的1.3.7版本於2019年12月發佈,該版本源碼包的下載鏈接為https://downloads.xvid.com/downloads/xvidcore-1.3.7.tar.gz。
libxvid的安裝步驟說明如下。
1、將下載好的壓縮包上傳到伺服器並解壓,也就是依次執行以下命令。
tar zxvf xvidcore-1.3.7.tar.gz
cd xvidcore
2、進入解壓後的build/generic目錄,運行下麵命令配置libxvid。
cd build/generic
./configure
3、運行下麵命令編譯libxvid。
make -j4
4、編譯完成後,運行下麵命令安裝libxvid。
make install
二、啟用libxvid
由於FFmpeg預設未啟用libxvid,因此需要重新配置FFmpeg,標明啟用libxvid,然後重新編譯安裝FFmpeg。FFmpeg的Linux環境完整編譯過程參見《FFmpeg開發實戰:從零基礎到短視頻上線》一書的“1.2.3 自行編譯與安裝FFmpeg”,詳細的啟用步驟說明如下。
1、回到FFmpeg源碼的目錄,執行以下命令重新配置FFmpeg,主要增加啟用libxvid。(增加了選項--enable-libxvid)
./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-libxvid --enable-iconv --enable-gpl --enable-nonfree
2、運行下麵命令編譯FFmpeg。
make clean
make -j4
3、執行下麵命令安裝FFmpeg。
make install
4、運行以下命令查看FFmpeg的版本信息。
ffmpeg -version
查看控制台回顯的FFmpeg版本信息,找到“--enable-libxvid”,說明FFmpeg正確啟用了XviD的編解碼器libxvid。