ffmpeg 是一套可以用來記錄陷舅、轉(zhuǎn)換數(shù)字音頻、視頻疟游,并能將其轉(zhuǎn)化為流的開源計(jì)算機(jī)程序呼畸。因?yàn)橐曨l編解碼十分消耗系統(tǒng)資源,工作相對較為耗時颁虐,而樹莓派自帶 H.264 的硬件編解碼器蛮原,所以計(jì)劃在樹莓派上編譯安裝支持硬件編解碼器的 ffmpeg。
安裝 x264 編碼器
git clone git://git.videolan.org/x264.git
cd x264
./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl --enable-shared
make
sudo make install
注:配置這加上 --enable-shared
可以避免安裝 ffmpeg 時出現(xiàn)錯誤 ERROR: libx264 not found
安裝 ffmpeg
在 ffmpeg 官網(wǎng)下載頁面 http://ffmpeg.org/download.html 獲取到下載鏈接另绩,文章完成時版本是 ffmpeg-4.0.tar.bz2儒陨,命令行如下:
wget http://ffmpeg.org/releases/ffmpeg-4.0.tar.bz2
tar jxvf ffmpeg-4.0.tar.bz2
cd ffmpeg-4.0
./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree
make
sudo make install
配置 ldconfig
完成上述步驟后,直接運(yùn)行命令 ffmpeg 會報錯:ffmpeg: error while loading shared libraries: libx264.so.155: cannot open shared object file: No such file or directory笋籽。
找不到對應(yīng)庫蹦漠,庫文件存放在 /usr/local/lib 這個目錄,這里將目錄添加到配置文件中干签,命令行如下:
nano /etc/ld.so.conf
添加 /usr/local/lib津辩,最終文件內(nèi)容為:
include /etc/ld.so.conf.d/*.conf
/usr/local/lib
運(yùn)行 ldconfig 使配置生效:
sudo ldconfig
檢測安裝
完成上述步驟后拆撼,ffmpeg就應(yīng)該正確安裝了容劳。在命令行輸入 ffmpeg,可以看到類似如下輸出:
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
built with gcc 6.3.0 (Raspbian 6.3.0-18+rpi1+deb9u1) 20170516
configuration: --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
系列說明
小無相功是小說《天龍八部》中「逍遙派」的一門內(nèi)功闸度,講究不著形相竭贩,無跡可尋,熟悉后再了解其他武功招式便可依仗威力習(xí)得莺禁,甚至青出于藍(lán)而勝于藍(lán)留量。而樹莓派形似小無相功,同具無限可能,了解一些基礎(chǔ)便可輕松上手楼熄,去探尋其他更多未知忆绰。因此,系列以此為題可岂,帶來一系列樹莓派相關(guān)的教程错敢,同時也是對個人長期折騰樹莓派以來的一個歸檔整理。
注:本作品采用知識共享署名-非商業(yè)性使用-禁止演繹 3.0 未本地化版本許可協(xié)議進(jìn)行許可缕粹。