1. 程式人生 > 其它 >FFMPEG框架學習——(1)簡介和環境安裝

FFMPEG框架學習——(1)簡介和環境安裝

技術標籤:ffmpeg框架學習ffmpeglinuxubuntu

一、簡介

​ FFMPEG是一套可以用來記錄、轉換數字音訊、視訊,並能將其轉化為流的開源計算機程式。採用LGPL或GPL許可證。它提供了錄製、轉換以及流化音視訊的完整解決方案。其使用廣泛,騰訊視訊、愛奇藝、抖音、頭條、快手等軟體以及行車記錄儀、智慧安防(監控)、RTSP流媒體伺服器都用到FFMPEG框架。

二、安裝

解壓(官方下其他版本也行)

tar -jxvf ffmpeg-4.2.1.tar.bz2 

配置:

./configure --enable-shared --disable-yasm --prefix=/usr/local/ffmpeg

編譯:

sudo make
sudo make install

檢視是否安裝成功

ffmpeg -version

如果提示沒有該命令:

ln -s  /usr/local/ffmpeg/bin/ffmpeg   /usr/bin

再次輸入ffmpeg -version,會提示,找不到庫

ffmpeg: error while loading shared libraries: libavdevice.so.58: cannot open shared object file: No such file or directory

(不是沒安裝好,而是環境變數沒有配置)

解決方案:

cd /etc  
sudo
vim ld.so.conf

在檔案末尾加上/usr/local/ffmpeg/lib,儲存並退出,然後重新整理配置:

sudo ldconfig

再輸入ffmpeg -version,安裝完成!

三、環境配置

QT的工程的.pro檔案中加上如下:

INCLUDEPATH += /usr/local/ffmpeg/include

LIBS += -L/usr/local/ffmpeg/lib \
    -lavcodec \
    -lavfilter \
    -lavutil \
    -lswscale \
    -lavdevice \
    -lavformat \
    -lswresample

測試是否配置成功:

main.cpp加上

extern "C"
{
    #include <libavcodec/avcodec.h>
}

main函式中:

qDebug()<<avcodec_version();

編譯執行,在控制檯中輸出ffmpeg版本號,例如3815012則表示配置成功!