1. 程式人生 > >linux ffmpeg開發環境搭建(基於ubuntu14.04和ffmpeg3.2)

linux ffmpeg開發環境搭建(基於ubuntu14.04和ffmpeg3.2)

本文將介紹ffmpeg開發環境的安裝測試和更新的步驟(基於ubuntu14.04和ffmpeg3.2)

1.安裝x264
1)libx264需要yasm,所以先安裝yasm
sudo apt-get install yasm

2)安裝libx264-dev
aptitude install libx264-dev

3)安裝libx264庫
3.1) 建立並切換到ffmpeg目錄
cd
mkdir ffmpeg
cd ffmpeg
3.2) 下載x264原始碼,並切換到x264目錄
git clone git://git.videolan.org/x264
cd x264
3.3) 編譯並安裝libx264庫
./configure –enable-shared –enable-pic
make
make install
安裝成功以後便可以看到在/usr/local/lib/目錄下生成libx264.so動態庫,且標頭檔案位於/usr/local/include/

2.安裝依賴包
sudo apt-get install build-essential git-core checkinstall texi2html libfaac-dev \
libopencore-amrnb-dev libopencore-amrwb-dev libsdl1.2-dev libmp3lame-dev libtheora-dev \
libvorbis-dev libx11-dev libxvidcore-dev libxext-dev libxfixes-dev zlib1g-dev libopus-dev libavdevice-dev

3.安裝libfdk-aac
cd ~/ffmpeg
wget -O fdk-aac.tar.gz

https://github.com/mstorsjo/fdk-aac/tarball/master
tar xzvf fdk-aac.tar.gz
cd mstorsjo-fdk-aac*
autoreconf -fiv
./configure –prefix=”$HOME/ffmpeg_build” –enable-shared
make
make install

4.安裝libvpx
cd ~/ffmpeg
wget http://storage.googleapis.com/downloads.webmproject.org/releases/webm/libvpx-1.5.0.tar.bz2
tar xjvf libvpx-1.5.0.tar.bz2
cd libvpx-1.5.0
PATH=”H

OME/bin:PATH” ./configure –prefix=”HOME/ffmpegbuilddisableexamplesdisableunittestsPATH=HOME/bin:$PATH” make
make install
make clean

5.安裝ffmpeg
http://www.ffmpeg.org/download.html#releases下載ffmpeg-3.2.tar.bz2,然後執行如下命令:
cd ~/ffmpeg
tar -jxvf ffmpeg-3.2.tar.bz2
cd ffmpeg-3.2
./configure –prefix=/usr/local/ffmpeg –enable-shared –enable-gpl –enable-version3 –enable-nonfree –enable-postproc –enable-pthreads –enable-libfdk-aac –enable-libmp3lame –enable-libtheora –enable-libx264 –enable-libxvid –enable-x11grab –enable-libvorbis
make
make install
編譯成功以後變可以在/usr/local/ffmpeg看到so庫檔案和標頭檔案,接下來便可以使用ffmpeg庫了

6.測試Demo
接下來寫個測試demo來測試下環境是否搭建成功
1).編寫源程式ffmpegtest.c

#include <stdio.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>
#include <libavfilter/avfilter.h>

#define dbmsgc(fmt, args ...) printf("cong:%s[%d]: "fmt"\n", __FUNCTION__, __LINE__,##args)
//#define dbmsg(fmt, args ...) printf("cong:%s:%s[%d]: "fmt"\n",__FILE__, __FUNCTION__, __LINE__,##args)
int main(int argc, char **argv)
{
    int i=0;
    AVFormatContext *pFormatCtx = NULL;
    avcodec_register_all();
#if CONFIG_AVDEVICE
    avdevice_register_all();
#endif
   avfilter_register_all();
    av_register_all();

    if(avformat_open_input(&pFormatCtx, argv[1], NULL, NULL)!=0)
        return -1; // Couldn't open file

    if(avformat_find_stream_info(pFormatCtx, NULL)<0)
        return -1; // Couldn't find stream inform
    av_dump_format(pFormatCtx,0, 0, 0);

    return 0;
}

2).編寫Makefile

FFMPEG=/usr/local/ffmpeg
CC=gcc
CFLAGS=-g -I$(FFMPEG)/include
LDFLAGS = -L$(FFMPEG)/lib/ -lswscale -lswresample -lavformat -lavdevice -lavcodec -lavutil -lavfilter -lpostproc -lm 
TARGETS=fftest
all: $(TARGETS)
fftest:ffmpegtest.c
    $(CC) $(CFLAGS) -o [email protected] $^ $(LDFLAGS)

clean:
    rm -rf $(TARGETS)

3)執行
3.1)執行make進行編譯,如果沒有抱錯,會生成fftest可執行檔案
3.2)執行./fftest,如果沒有報錯,說明編譯執行通過,說明ffmpeg開發環境搭建成功

7.更新ffmpeg和x264
目前ffmpeg和x264的開發相當活躍,某次的更新可能為你的開發提供更好的特性和現有bug的修改。要更新ffmpeg和x264,你需要先解除安裝現有包,然後獲取更新原始碼,重新編譯,安裝。
1)對於x264的更新:
sudo apt-get remove ffmpeg x264 libx264-dev libvpx
cd ~/ffmpeg/x264
make distclean
git pull
然後再按照前面所說的安裝過程,重新編譯,安裝。
2)對於libvpx的更新:
cd ~/ffmpeg/libvpx-1.5.0
make clean
git pull
然後按照libvpx的安裝過程,從configure開始,重新編譯,安裝。
3)對於libfdk-aac更新
cd ~/ffmpeg/mstorsjo-fdk-aac*
make clean
git pull
然後按照libfdk-aac的安裝過程,從configure開始,重新編譯,安裝。
3)最後是ffmpeg更新:
類似的:
cd ~/ffmpeg/ffmpeg-3.2
make distclean
git pull
然後是./configure,make,checkinstall….
解除安裝本次安裝的包
sudo apt-get remove x264 ffmpeg qt-faststart build-essential git-core checkinstall \
nasm yasm texi2html libfaac-dev lame-ffmpeg libsdl1.2-dev libtheora-dev libvorbis-dev \
libx11-dev libxfixes-dev zlib1g-dev
最好,再刪除掉~目錄下的所有原始碼。rm -rf ffmpeg x264 lame libvpx
至此,安裝、更新和恢復過程結束。

相關推薦

linux ffmpeg開發環境搭建(基於ubuntu14.04ffmpeg3.2)

本文將介紹ffmpeg開發環境的安裝測試和更新的步驟(基於ubuntu14.04和ffmpeg3.2) 1.安裝x264 1)libx264需要yasm,所以先安裝yasm sudo apt-get install yasm 2)安裝libx264-d

Linux核心除錯環境搭建(基於ubuntu12.04)

by Netfairy - 2016-05-29 一、測試環境 物理機:ubuntu16.04 LTS target(被除錯機)環境:VirtualBox 5.0.20+ubuntu 12.04 LTS + linux kernel 3.0.4 host

ffmpeg開發環境搭建--(linux)

下載源碼 指定 自己 進行 bsp -h http 目錄 -a 1. 下載源碼: http://ffmpeg.org/download.html 2. 解壓:tar –xvf ffmpeg-3.2.1.tar.bz2 3. 配置 Eg:./c

Docker for Windows安裝與Linux+PHP開發環境搭建(二)

Docker for Windows安裝與Linux+PHP開發環境搭建(二) 上一篇講了docker安裝與環境搭建的步驟,這一次主要是介紹過程中遇到的錯誤情形及其錯誤處理方法: 1).執行docker pull local.registry.com:5000/php 或其他連線本地

Docker for Windows安裝與Linux+PHP開發環境搭建(一)

Docker是什麼? 簡單得來說,Docker是一個由GO語言寫的程式執行的“容器”(Linux containers, LXCs); 目前雲服務的基石是作業系統級別的隔離,在同一臺物理伺服器上虛擬出多個主機。Docker則實現了一種應用程式級別的隔離; 它改變我們基本的開發、操作單元,

spark開發環境搭建(基於idea maven)

轉載文章出自:http://blog.csdn.net/u012373815/article/details/53266301使用idea構建maven 管理的spark專案 ,預設已經裝好了idea 和Scala,mac安裝Scala 那麼使用idea 新建maven 管理

Linux Java開發環境搭建

一 、jdk安裝配置 1.下載jdk的tar.gz包 2.解壓 tar -zxvf jdk.tar.gz 3.配置環境變數 //編輯檔案 sudo vim /etc/profile //在檔案末尾新增以下資訊 JAVA_HOME=/use

嵌入式linux驅動開發環境搭建(親測成功)

一 開發環境: (1)主機:vmware8+fedora14,核心版本為2.6.35,主機自帶GCC版本4.5。(這兩點很重要,所有的問題都與這兩個因素有關)。 (2)目標機:S3C6410(arm11) (3)目標機核心:linux2.6.24 (4)交叉編譯工具:arm

Linux_Ubuntu下驅動開發環境搭建(14.04, 15親測可行)

Linux_Ubuntu下驅動開發環境搭建 linux下驅動需要編譯核心 1.首先是基本的開發工具,如gcc,gdb,make等 apt-get install build-essential 2.其次是找到你所用的ubuntu的版本號:uname -r  然後檢視你要下載

嵌入式Linux系統開發環境搭建流程

宿主機:Host ,嵌入式Linux核心編譯,應用程式編譯的平臺,由Linux伺服器承擔 工作站:用以支援小組專案開發,可選擇Windows或Linux平臺(個人單獨開發時,為節省成本可與宿主機為同一臺計算機) 環境搭建流程: 1、將目標板通過串列埠與工作站進行物理連線

EOSIO 開發環境搭建 VSCode Ubuntu16.04

我這樣搭建開發環境的目的是為了便於學習EOSIO的程式碼並在基礎上進行一些修改,如果是為了學習智慧合約開發的話現在(2018.12.23)有了更方便一些的辦法,官方已經提供了eosio和cdt的binary release(version 1.5.0),只要裝到電腦中就好哦,用一款自己喜歡的

linux python開發環境搭建

-i curses ssl 環境搭建 bin 2.6 修改 bte prefix    1. centos6.4 準備: yum -y install gcc* yum -y install openssl-devel yum install libtermc

Android 開發:(一)安卓開發環境搭建與配置 (WindowsMac )以及目錄結構介紹

(一)、windows版 一. 開發工具: 1.Android Studio:(http://www.androiddevtools.cn/) 2.Genymotion(虛擬機器):(http://www.genymotion.net/) (二)、Mac版 一

Python札記(一)-開發環境搭建(ForMac)第一個Python程式

 今天的內容大致如下: 自己先看一下Python的功效,多多少少去了解一下。我們必須安裝一個Python環境在自己的PC上,用來解釋自己書寫的程式碼,本來Mac是內建的,但是是Python2.7.10(隨著新電腦的出售和系統更新,預裝版本可能會有差異,在終端輸入Python

ubuntu14.04 LTS Python IDE專用編輯器PyCharm開發環境搭建

terminal 環境搭建 1-1 reat 開發環境搭建 cnblogs ati .html eat 一 PyCharm下載 官網下載地址:https://www.jetbrains.com/pycharm/download/ 這裏的PyCharm有付費和免費版本,我

ESP32搭建3.ubuntu14.04搭建esp32開發環境 (最新版)

終端 pat 權限 技術 實例 為我 tro component 直接 硬件為樂鑫出品的ESP32一款集成了wifi和藍牙的集成模塊。 1.首先ctrl+alt+t打開終端,sudo -s選擇用root權限登陸 。 2. 輸入指令:sudo apt-get install

Ubuntu-18.04 LTS嵌入式linux開發環境搭建

pam.d ron inetd Oz net-tools ack dba 處理 vpd Ubuntu-18.04 LTS嵌入式linux開發環境搭建 ubuntu-18.04 LTS於 2018年4月2

Linux開發環境搭建記錄(Ubuntu 16.04 LTS)

Linux開發環境搭建記錄(Ubuntu 16.04 LTS) 安裝基本軟體 安裝git $ sudo apt-get install git 安裝maven $ sudo apt-get install maven apt-cache search 可查詢相關包

智慧機開發環境搭建編譯(Ubuntu14.04[64bit] MTK)

系統補丁更新 進行一些必要的補丁更新以及軟體版本更新。 命令: sudo apt-get update //與伺服器同步軟體包列表,這裡的伺服器是指系統在sources.list檔案中的源 sudo apt-get upgrade //升

linux ubuntu系統下基於eclipse的hadoop開發環境搭建

hadoop是基於linux作業系統的。 本文在linux ubuntu系統下,在eclipse下配置hadoop的開發環境。 這個開發環境對linux下的hadoop偽分散式配置有效,其他配置情況不明。 如果是完全分散式環境,需要重新設定core-site.xml,hdf