linux 编译ffmpeg 支持x264, x265

1. 前言

本教程涉及的ffmpeg, x264, x265

2. 环境依赖

2.1 删除系统中安装的ffmpeg等库

<span style="font-size:14px;">sudo apt-get --purge remove ffmpeg mplayer x264 x265</span>

2.2 安装依赖库

<span style="font-size:14px;">sudo apt-get update
sudo apt-get -y --force-yes install autoconf automake build-essential libass-dev libfreetype6-dev libgpac-dev   libsdl1.2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev   libxcb-xfixes0-dev pkg-config texi2html zlib1g-dev</span>

注: 服务器版本可忽略

libsdl1.2-dev libva-dev libvdpau-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev

2.3 下载源代码

(1) ffmpeg

<span style="font-size:14px;">git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg</span>

(2) x264

<span style="font-size:14px;"></span><pre name="code" class="plain"><pre name="code" class="plain"><pre name="code" class="plain">git clone git://git.videolan.org/x264.git



(3) x265

<span style="font-size:14px;"></span><pre name="code" class="plain">hg clone https://bitbucket.org/multicoreware/x265

(4) yasm

yasm 是x86平台的一个汇编优化器, 能够加快ffmpeg x264的编译

<span style="font-size:14px;">wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar xzvf yasm-1.3.0.tar.gz
</span>

3. 编译

3.1 配置编译输出目录

<span style="font-size:14px;">export FFMPEG_PATH="YOUR_PATH"
export PATH="$FFMPEG_PATH/bin:$PATH"</span>

例如我输出目录为$HOME/ffmpeg_2.6.3/build_out

那么:

<span style="font-size:14px;">export FFMPEG_PATH="$HOME/ffmpeg_2.6.3/build_out"</span>

3.1 yasm

<span style="font-size:14px;"></span><pre name="code" class="plain">cd yasm-1.3.0
./configure --prefix="$HOME/"
make
make install

或者安装已有的库(yasm version ≥ 1.3.0)

<span style="font-size:14px;">sudo apt-get install yasm</span>

3.2 x264

在配置ffmpeg config时需要加入--enable-gpl
--enable-libx264

<span style="font-size:14px;"><tt>cd x264*
./configure --prefix="$FFMPEG_PATH" --enable-shared --enable-static
make -j4
make install
make clean</tt></span>

或者安装已有的库(yasm version ≥ 1.3.0)

<span style="font-size:14px;"><tt>sudo apt-get install libx264-dev</tt></span>

3.3 x265

<span style="font-size:14px;"><tt>cd x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$FFMPEG_PATH" -DENABLE_SHARED:bool=off ../../source
make -j4
make install
make clean
</tt></span>

3.4 aac

在配置ffmpeg config时需要加入
--enable-libfdk_aac
(如果开启--enable-gpl同时需要开启
--enable-nonfree
 )

<span style="font-size:14px;"><tt>PKG_CONFIG_PATH="$FFMPEG_PATH/lib/pkgconfig" ./configure   --prefix="$FFMPEG_PATH"   --pkg-config-flags="--static"   --extra-cflags="-I$FFMPEG_PATH/include"   --extra-ldflags="-L$FFMPEG_PATH/lib"   --enable-gpl   --enable-libass   --enable-libfaac   --enable-libfreetype   --enable-libmp3lame   --enable-libtheora   --enable-libvorbis   --enable-libx264   --enable-libx265   --enable-nonfree   --enable-shared   --enable-postproc   --enable-x11grab   --enable-bzlib   --enable-libxvid   --enable-zlib   --disable-debug </tt></span>

4. 将ffmpeg添加到环境变量

4.1 将ffmpeg添加到环境变量

<span style="font-size:14px;"><tt>vim ~/.bashrc</tt></span>

在最后添加

<span style="font-size:14px;"><tt>export FFMPEG_PATH="/home/guohe/workspace/ffmpeg_2.6.3/build_out"
export PATH="$FFMPEG_PATH/bin:$PATH"</tt></span>

4.2 添加链接库

编译完成之后调用 ffmpeg 会出现 error while loading shared libraries: xxx

解决这种问题有2中方法:

(1) 修改/etc/ld.so.conf

<span style="font-size:14px;"><tt>vim /etc/ld.so.conf</tt></span>

在最后添加

$FFMPEG_PATH/lib

然后执行

<span style="font-size:14px;"><tt>sudo ldconfig</tt></span>

(2) 修改LD_LIBRARY_PATH

<span style="font-size:14px;"><tt>vim ~/.bashrc</tt></span>

在最后添加

<span style="font-size:14px;"><tt>export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$FFMPEG_PATH/ib</tt></span>

时间: 2024-10-18 00:52:03

linux 编译ffmpeg 支持x264, x265的相关文章

Linux编译FFmpeg支持x265(HEVC) 【failed on redhat 6.5】

follow steps from: http://scateu.me/2014/03/06/compile-ffmpeg-on-linux-with-x264-and-x265-support.html tar file from http://download.videolan.org/contrib/ 安装x265 https://bitbucket.org/multicoreware/x265/wiki/Home sudo apt-get install mercurial cmake 

Linux编译ffmpeg

Linux编译ffmpeg并转换MP3到AMR AMR格式是智能手机上的常用音频文件格式,比如MP3格式的压缩比大,但是文件比MP3小,所以在移动互联项目中应用比较广泛.去年年底协助联想研究院开发一款预装产品过程中需要使用到MP3格式和AMR格式的互相转换,服务器环境为CentOS 6.0,过程如下. 1. 首先安装系统基础环境 RHEL & CentOS 系列:yum install -y automake autoconf libtool gcc gcc-c++ Debian & Ub

[笔记] Ubuntu下编译ffmpeg+openh264+x264

[下载代码] - ffmpeg: git clone git://source.ffmpeg.org/ffmpeg.git - openh264: git clone https://github.com/cisco/openh264.git - x264: git clone git://git.videolan.org/x264.git [编译 openh264] make sudo make install [编译 x264] ./configure --enable-shared mak

ffmpeg支持x264插件

1 ffmpeg安装x264插件 2 要安装x264模块首先要先装nasm 3 安装脚本如下[复制即可使用] #!/bin/bash yum -y install epel-release  && yum -y install git wget                                            #下载git,wget echo $? if [ $? == 0 ];then                                          

Windows系统下编译FFmpeg for Android(支持x264)

接上一篇:https://www.cnblogs.com/zuoao123/p/10253690.html 上次编译的FFmpeg在使用上有点问题,mediacodec软解码解码器打开失败,avcodec_open2()返回错误值-1.因此想编译一个支持x264的FFmpeg试试看. 一.编译x264 1.下载并解压x264 下载地址: https://www.videolan.org/developers/x264.html 下载最新版本,解压后得到x264-snapshot-20190111

mingw编译ffmpeg+x265过程记录

mingw编译ffmpeg+x265过程记录 email: [email protected] 工作环境 OS:windows 7 1.相关资源下载 Ffmpeg-2.3     http://ffmpeg.org/releases/ffmpeg-2.3.3.tar.bz2 X265-1.3下载  https://bitbucket.org/multicoreware/x265/wiki/Home http://ffmpeg.zeranoe.com/builds/source/external_

centos编译ffmpeg x264

1.安装汇编编译器(一般系统自带吧),如果没有按照下面的命令安装吧 yum install yasm 2.使用最新x264源码编译(只支持编码)    在x264官网下载最新的代码http://www.videolan.org/developers/x264.html git clone git://git.videolan.org/x264.git cd x264 ./configure --enable-static --enable-shared make make install 注意-

CentOS-6.4 编译安装ffmpeg加x264以及rtmp

CentOS 6.4-64位下编译ffmpeg几个简单步骤: 1.编译前环境准备: 2.下载源码: 3.编译,安装: ----------------------------------------------- 下面就一个一个的叙述下: 一,安装必要所需环境: 命令行: # yum install autoconf automake gcc gcc-c++ git libtool make nasm pkgconfig zlib-devel //确保机器可以联网 # yum install y

linux下mplayer(ffmpeg)通过x264解码播放高清h264视频

系统环境: Linux inbank-GZ 2.6.24-16-generic #1 SMP Thu Apr 10 13:23:42 UTC 2008 i686 GNU/Linux Ubuntu 8.04 Genuine Intel(R) CPU   1250  @ 1.73GHz  * 2 1G内存 目标:能用mplayer播放H264格式的高清视频 下载相关软件 Mplayer1.1版本(包含了ffmpeg) 各类解码包codes x264 yasm + faac + faad 可以在这里下