EasyNVR RTSP轉RTMP-HLS-FLV流媒體服務器前端構建之:ffmpeg是如何增加h264編解碼功能模塊的

背景分析

EasyNVR主要功能包括通過RTSP協議接入攝像機支持Onvif協議支持雲臺控制焦距縮放、全平臺(web/Android/iOS/微信/H5)觀看支持RTMP、HLS、http-flv協議、支持CDN接入,直接在每一個通道配置填寫獨立的阿里雲/騰訊雲CDN的RTMP推流地址即可支持全網頁配置管理支持用戶管理,權限驗證支持錄像點播、錄像計劃、時間錄像檢索播放

 

在寫代碼的過程中,經常需要利用ffmpeg進行h264編解碼,ffmpeg默認是不支持h264編解碼的,需要在編譯ffmpeg時增加支持h264編解碼功能模塊。

今天給大家分享下ffmpeg是如何增加h264編解碼功能模塊的。

問題解決

添加h264功能模塊,由於默認ffmpeg是不支持h264編解碼的,x264是第三方庫,需要先下載編譯生成庫,然後在編譯ffmpeg的時候添加此編譯選項。

具體步驟如下:

cd x264
sudo ./configure --enable-shared –enable-static --disable-asm  
sudo make
sudo make install
tar –vxf ffmpeg-4.0.3.tar.xz
cd ffmpeg-4.0.3
./configure --enable-shared --disable-yasm --enable-libx264 --enable-gpl
make
make install

默認安裝到/usr/local/ 目錄下,也可以通過–prefix=/usr/local/進行指定目錄,一般默認即可

  • (5)查詢下編譯的ffmpeg是否包含x264功能模塊

  • (6)通過ldd 查詢libavcodec.so 是否需要libx264.so 即可

如果需要增加其他外部第三方庫,與增加libx264方法一樣
Ffmpeg也提供了需要的地方庫的下載地址:
https://johnvansickle.com/ffmpeg/release-source/

EasyNVR是一款擁有完整、自主、可控知識產權,同時又能夠具備軟硬一體功能的安防互聯網化流媒體服務器,能夠通過簡單的網絡攝像機通道配置,將傳統監控行業裏面的高清網絡攝像機IP Camera、NVR等具有RTSP、Onvif協議輸出的設備接入到EasyNVR,EasyNVR能夠將這些視頻源的音視頻數據進行拉取,轉換爲RTMP/HLS,進行全平臺終端H5直播(Web、Android、iOS),並且EasyNVR能夠將視頻源的直播數據對接到第三方CDN網絡,實現互聯網級別的直播分發。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章