`
menjoy
  • 浏览: 422183 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

FFMPEG Install for CentOS 5

阅读更多
A little while back, I posted a basic install of ffmpeg for CentOS 5. After working with that build over the last month, I found I needed to expand it to include many different video codecs. Because of licensing restrictions, binaries of the build cannot be distributed. However, instructions for a similar build can! I spent several days (or more) researching the packages I would need and I must have combed dozens of blogs to find this information. The build I made strips sound from videos [See update at the end of this post for more information on this subject], this decreases the final file size. If you need sound, you will not want to follow these steps exactly. I also stripped ffserver and ffplay from my build.

These packages were executed in the following order. I cannot say for certain this exact order must be followed, it was the order in which ffmpeg threw the errors. This tutorial assumes you have wget, bzip2, tar and subversion installed on your system. If you do not, please find and install the lastest versions of these utilities for CentOS 5. Additionally, I have allowed all packages to install into their default directories, typically this is /usr/local/[bin | lib]. If at any point during the process of a ‘make’ you run into errors, be sure and run ‘make clean’ before running ‘make’ again. You will either need root access of su access to install ffmpeg. The marker ‘codec:$’ is my prompt, it is merely to indicate separate commands.

    * Package a52
    * Package FAAD2
    * Package FAAC
    * Package LAME
    * Package yasm
    * Package X264
    * Package Xvid
    * Package libraw1394
    * Package libdc1394

Getting Started


codec:$
codec:$ mkdir -p ./tmp/ffmpeg-packages
codec:$ cd ./tmp/ffmpeg-packages

Installing a52


codec:$ wget http://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz
codec:$ tar -zxf a52dec-0.7.4.tar.gz
codec:$ cd a52dec-0.7.4
codec:$ ./configure --enable-shared=PKGS
codec:$ make && make install
codec:$ cd ..

Installing FAAD2


codec:$ wget http://downloads.sourceforge.net/faac/faad2-2.6.1.tar.gz
codec:$ tar zxf faad2-2.6.1.tar.gz
codec:$ cd faad2
codec:$ autoreconf -vif
codec:$ ./configure --disable-drm --disable-mpeg4ip
codec:$ make && make install
codec:$ cd ..

Installing FAAC


codec:$ wget http://downloads.sourceforge.net/faac/faac-1.26.tar.gz
codec:$ tar zxfv faac-1.26.tar.gz
codec:$ cd faac
codec:$ ./bootstrap
codec:$ ./configure --disable-mp4v2
codec:$ make && make install
codec:$ cd ..

Installing LAME


codec:$ wget \
http://superb-east.dl.sourceforge.net/sourceforge/lame/\
lame-3.98b8.tar.gz
codec:$ tar zxfv lame-3.98b8.tar.gz
codec:$ cd lame-3.98b8
codec:$ ./configure
codec:$ make && make install
codec:$ cd ..

Installing yasm

YASM is a modular assembler, it is required by the x264 package.


codec:$ wget \
http://www.tortall.net/projects/yasm/releases/yasm-0.7.0.tar.gz
codec:$ tar zfvx yasm-0.7.0.tar.gz
codec:$ cd yasm-0.7.0
codec:$ ./configure
codec:$ make && make install
codec:$ cd ..

Installing x264
The x264 package is under git revision control, which is much like CVS or SVN. Thankfully, they provide daily tarballs. I grabbed this one:


codec:$ wget \
ftp://ftp.videolan.org:21//pub/videolan/x264/snapshots/\
x264-snapshot-20080513-2245.tar.bz2

I just did a little exploring via an FTP program to find the snapshot I was after. If you are feeling adventurous, download git and try checking out the latest version from their repository.


codec:$ bzip2 -d x264-snapshot-20080513-2245.tar.bz2
codec:$ tar xfv x264-snapshot-20080513-2245.tar
codec:$ cd x264-snapshot-20080513-2245
codec:$ ./configure --enable-mp4-output --enable-shared --enable-pthread
codec:$ make && make install
codec:$ cd ..

Installing Xvid


codec:$ wget http://downloads.xvid.org/downloads/xvidcore-1.1.3.tar.gz
codec:$ tar zxfv xvidcore-1.1.3.tar.gz
codec:$ cd xvidcore-1.1.3/build/generic
codec:$ ./configure
codec:$ make && make install
codec:$ cd ../../..

Installing libraw1394


codec:$ wget http://www.linux1394.org/dl/libraw1394-1.3.0.tar.gz
codec:$ tar zxfv libraw1394-1.3.0.tar.gz
codec:$ cd libraw1394-1.3.0
codec:$ ./configure
codec:$ make dev
codec:$ make && make install
codec:$ cd ..

Installing libdc1394

This project requires libraw1394, you must build it first. This project is a little confusing there is both a libdc1394 and a libdc1394-2. I have only installed the former. Visit Sourceforge here. I grabbed the tarball here:


codec:$ wget \
http://superb-west.dl.sourceforge.net/sourceforge/libdc1394/\
libdc1394-1.2.2.tar.gz
codec:$ tar zxfv libdc1394-1.2.2.tar.gz
codec:$ cd libdc1394-1.2.2
codec:$ ./configure
codec:$ make && make install
codec:$ cd ..

Installing ffmpeg

For FFMPEG, you will need to get the latest out of SVN. FFMPEG doesn’t ever make releases. To do so, run:


codec:$ svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
codec:$ cd ffmpeg


codec:$ ./configure --enable-gpl --enable-postproc --enable-nonfree --enable-postproc --enable-libfaad --enable-swscale --enable-avfilter --enable-pthreads --enable-libxvid --enable-libx264 --enable-libmp3lame --enable-libdc1394 --enable-liba52 --enable-libfaac --disable-ffserver --disable-ffplay
codec:$ make
codec:$ make install

It usually takes at least 5 mins for ‘make’ to run, be sure you have a good file before attempting to install. You will need to be sure and run the ldconfig setting if you have to re-compile, otherwise ffmpeg will throw an error that it cannot find library files. Here is a good resource for using ffmpeg.

Post-Installation Actions

After the install in complete, you may need to add the /usr/local/lib directory to your ld.so.config file. Do the following:


codec:$ cd /etc/
codec:$ cd ld.so.conf.d
codec:$ vi ffmpeg.conf

You need to add ‘/usr/local/lib’ [sans-quotes] to this file and save it. Press Esc, :, x to do so in vi. Afterwords you need to run the following from the commandline


codec:$ ldconfig

That’s it, you now have a fairly robust build of ffmpeg that can take almost anything you can throw at it. Sadly, licensing restrictions prevent binaries from being made of the above steps. Happy (video) encoding!

Update: This build doesn’t actually strip sound from videos, I am doing that with a flag when I run ffmpeg, however, it should be noted that all the audio codecs you may find in many common video formats may not be supported in this build of ffmpeg, which is why I am choosing to strip audio entirely from videos.


-------------------------------------------------------------------------------

下边是另一篇

1. 所需的 RPM 包
引用:

    gcc, gcc-c++, gcc-g77, glibc, glibc-devel, autoconf, automake, libtool, libtool-libs, freetype freetype-devel, libvorbis, libvorbis-devel, libogg, libogg-devel

上述 RPM 包可以通过 yum (仅限 CentOS Linux)自动安装,如果是 Red Hat Linux,请从安装光盘中提取这些 RPM 包手动安装。

2. 以 root 身份登录服务器

3. 创建软件包存放处理目录
复制内容到剪贴板
代码:
# mkdir /usr/local/src/video
二、安装播客视频/音频环境
1. 下载并解压 FFmpeg 集合包
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/FFmpeg.tar.bz2
# tar xjvf FFmpeg.tar.bz2
2. 安装 MP3 编码器
复制内容到剪贴板
代码:
# cd /usr/local/src/video/FFmpeg/lame-3.97
# ./configure   --prefix=/usr --enable-shared
# make
# make install
3. 安装 XVid 编码器
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/xvidcore-1.1.0.tar.gz
# tar xzvf xvidcore-1.1.0.tar.gz
# cd xvidcore-1.1.0/build/generic
# ./configure --prefix=/usr
# make
# make install
4. 安装 yasm 汇编器
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/yasm-0.6.0.tar.gz
# tar xzvf yasm-0.6.0.tar.gz
# cd yasm-0.6.0
# ./configure --prefix=/usr/local/yasm
# make
# make install
将 yasm 加入系统环境变量
复制内容到剪贴板
代码:
# export PATH="$PATH:/usr/local/yasm/bin"
5. 安装 x264 编码器
*注:截至本文档发布日期止,x264 官方最新版存在问题,无法在 2 路以上 CPU 的 Intel 系统架构(如:双至强 CPU,四至强 CPU 服务器)中正常编译安装。Comsenz 为此特别对软件进行了修正,请下载 Comsenz 修正版的 x264 软件包!
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/x264-linux-Comsenz.tar.bz2
# tar xjvf x264-linux-Comsenz.tar.bz2
# cd x264-linux-Comsenz
# ./configure --prefix=/usr --enable-shared
# make
# make install
6. 安装 LibDTS 编码器
复制内容到剪贴板
代码:
# cd /usr/local/src/video/FFmpeg/libdts
# ./configure --prefix=/usr
# make
# make install
7. 安装 MPEG-4 AAC 编码器
*注:截至本文档发布日期止,MPEG-4 AAC 编码支持所需的 faad 和 faac 最新软件代码存在问题,无法正常编译安装成功。Comsenz 为此特别对软件进行了修正,请下载 Comsenz 修正版的 faad 和 faac!
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/faac-1.25-Comsenz.tar.bz2
# wget http://download.discuz.net/env/video/faad2-2.5-Comsenz.tar.bz2
(1) 安装 faad
复制内容到剪贴板
代码:
# tar xjvf faad2-2.5-Comsenz.tar.bz2
# cd faad2-Comsenz
# autoreconf -vif
# ./configure --prefix=/usr --with-mp4v2 --enable-shared
# make
# make install
(2) 安装 faac
复制内容到剪贴板
代码:
# cd /usr/local/video/
# tar xjvf faac-1.25-Comsenz.tar.bz2
# cd faac-Comsenz
# autoreconf -vif
# ./configure --prefix=/usr --with-mp4v2 --enable-shared
# make
# make install
8. 安装 FFmpeg 编码器
复制内容到剪贴板
代码:
# cd /usr/local/src/video/FFmpeg/FFmpeg
# ./configure \
   '--prefix=/usr' \
   '--enable-gpl' \
   '--enable-shared' \
   '--enable-mp3lame' \
   '--enable-amr_nb' \
   '--enable-amr_wb' \
   '--enable-amr_if2' \
   '--enable-libogg' \
   '--enable-vorbis' \
   '--enable-xvid' \
   '--enable-a52' \
   '--enable-a52bin' \
   '--enable-faadbin' \
   '--enable-dts' \
   '--enable-pp' \
   '--enable-faad' \
   '--enable-faac' \
   '--enable-x264' \
   '--enable-pthreads' \
   '--disable-ffserver' \
   '--disable-ffplay'
# make
# make install
至此,博客视频/音频转码支持安装完毕!


三、设定视频转换计划任务
1. 下载视频文件转换脚本程序
复制内容到剪贴板
代码:
# cd /usr/local/src/video
# wget http://download.discuz.net/env/video/convert-linux.zip
2. 准备脚本程序
复制内容到剪贴板
代码:

# unzip convert-linux.zip
# cp convert /usr/local/sbin/convert_av.sh
# chmod 777 /usr/local/sbin/convert_av.sh

mencoder安装篇

1、下载主程序: MPlayer-1.0rc1.tar.bz2

2、下载essential-20061022.tar.bz2,安装:
tar vjxf essential-20061022.tar.bz2
mv essential-20061022 /usr/lib/codes
chmod 644 /usr/lib/codes/*
chown root.root /usr/lib/codes/*

3、下载windows-essential-20061022.zip,安装:
unzip windows-essential-20061022.zip
mv windows-essential-20061022 /usr/lib/wincodes
chmod 644 /usr/lib/wincodes/*
chown root.root /usr/lib/wincodes/*

4、安装mplayer

tar vjxf MPlayer-1.0rc1.tar.bz2
cd MPlayer-1.0rc1
./configure --prefix=/usr/local/mplayer/ --enable-freetype --with-codecsdir=/usr/lib/codes/ --with-win32libdir=/usr/lib/wincodes/ --disable-gcc-check --language=zh_CN

make

make install

如果你需要使用mplayer在linux下播放视频,还需要加上--enable-gui(图形界面),不过这样就要安装多很多东西了,这里我们只使用它的mencoder,所以--enable-gui可以省略
分享到:
评论

相关推荐

    ffmpeg_installer:用于在CentOS中编译,安装和卸载FFmpegLinux Shell脚本

    用于在CentOS中编译,安装和卸载FFmpegLinux Shell脚本(已在7.0上测试)。 该脚本基于。 安装 cd ~ sudo yum -y install git git clone https://github.com/jnaqsh/ffmpeg_installer/ cd ffmpeg_installer chmod +x...

    centos 6.5 安装 FFmpeg及转码插件(内附安装方法【自编】)

    在 CentOS 6.5 上安装 FFmpeg 及其转码插件,可以帮助用户完成各种多媒体处理任务,例如将视频格式转换为其他格式,调整视频质量,或者提取音频轨道等。以下是一个详细步骤的安装教程。 ### 一、更新系统 在安装新...

    centos6.5下安装ffmpeg的详细步骤

    ### CentOS 6.5 下安装 FFMPEG 的详细步骤及注意事项 #### 一、环境准备与背景介绍 FFMPEG 是一款强大的多媒体处理工具,它能够进行音视频编解码、格式转换、流媒体抓取等多种操作。对于需要处理大量音视频数据的...

    ffmpeg_2_8_15_install.tar.gz

    在给定的压缩包 "ffmpeg_2_8_15_install.tar.gz" 中,包含了在 CentOS 7 系统上离线安装 FFmpeg 2.8.15 版本的步骤。这个版本可能是一个特定日期或为特定需求优化的稳定版本。 首先,让我们了解如何在 CentOS 7 上...

    Centos6.*一键安装ffmpeg(含赖包)

    5. 检查FFmpeg安装是否成功 通过这个过程,用户可以方便地在旧版CentOS系统上部署和使用FFmpeg,进行多媒体处理任务。文件"install_ffmpeg"可能包含了整个安装过程的脚本,帮助自动化安装流程。在实际操作时,可...

    安卓termux下Centos的 ffmpeg.tar.gz

    5. 进入源代码目录:`cd FFmpeg` 6. 配置编译选项,针对Termux环境可能需要调整某些配置,例如禁用某些硬件加速模块:`./configure --prefix=/data/data/com.termux/files/usr ...` 7. 编译和安装FFmpeg:`make && ...

    Linux环境傻瓜式nginx+rtmp+ffmpeg套餐安装详解(获取拉流人数)

    **5. 优化与维护** - **性能优化**: - 调整`nginx.conf`文件中的配置参数,比如`worker_processes`、`worker_connections`等。 - 优化视频编码设置,减少带宽消耗。 - **稳定性增强**: - 定期更新Nginx、FFmpeg...

    ffmpeg 安装编译解码

    - 编译安装:通过执行make和make install命令来编译和安装FFmpeg。 - 安装测试:安装完成后,可以通过执行FFmpeg的命令来检查是否安装成功。 三、FFmpeg源码分析 文件提到了对FFmpeg源码的分析,这包括对源码中...

    英特尔 QSV 在 FFMPEG 中的使用(Linux)

    - `install_sdk_UMD_CentOS.sh` - `uninstall_sdk_UMD_CentOS.sh` **步骤3:** 使用超级用户权限安装用户空间驱动(User-mode driver -- UMD): ```bash ./install_sdk_UMD_CentOS.sh mkdir /MSS chown {普通用户名...

    centos 6.5 安装 FFmpeg及转码插件

    [root@localhost ffmpeg]# yum install -y automake autoconf libtool [root@localhost ffmpeg]# tar -zxvf faac-1.28.tar.gz [root@localhost ffmpeg]# cd faac-1.28 [root@localhost faac-1.28]# vi ./common/mp4...

    Centos6.5一键安装ffmpeg(含依赖包)

    2. **添加额外源**:由于CentOS 6.5的默认仓库可能不包含最新的FFmpeg版本,因此可能需要添加第三方软件源,如EPEL(Extra Packages for Enterprise Linux)或者RPM Fusion。 3. **安装依赖包**:FFmpeg依赖于许多库...

    带插件libx264插件的ffmpeg4.1

    5. 编译与安装FFmpeg:执行编译和安装命令。 ``` make sudo make install ``` 6. 检验安装:安装完成后,可以运行`ffmpeg -version`来查看是否成功安装了libx264插件。 在"ffmepg带libx264安装步骤.txt"文件中,...

    Linux下FFmpeg的安装包

    在Linux系统中,尤其是CentOS这样的服务器环境,FFmpeg是进行媒体处理和流媒体服务的重要软件。以下是对在CentOS 6.5上安装FFmpeg的详细过程的解释: 首先,我们需要确保系统具有必要的编译工具和依赖库。这通常...

    centos安装ffmpeg及需要的各组件同,目前亲测可用

    接下来,我们需要启用 EPEL(Extra Packages for Enterprise Linux)存储库,因为 FFmpeg 及其依赖可能不在默认的 CentOS 软件源中: ```bash sudo yum install epel-release -y ``` 然后,我们可以开始安装所需的...

    Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解

    在本篇文章中,我们将详细讲解如何在CentOS 6.5上为PHP 5.3安装ffmpeg扩展,这是一个用于处理多媒体文件的强大的开源工具。 首先,确保系统已经安装了必要的开发工具,包括GCC编译器和相关的库,因为它们是编译和...

    dailai#-#CentOS上编译安装OpenCV-2.3.1与ffmpeg-2.1.21

    检查并安装相关程序,确保gtk安装成功,否则无法显示图片yum install libtiff-devel # tiff格式图片支持yum install li

    CentOS服务器中安装FFmpeg的完整步骤

    在CentOS服务器上安装FFmpeg可以帮助我们进行音视频的编码、解码、转换、流化等多种操作。本文将详细介绍在CentOS 6.5系统上安装FFmpeg的步骤,并提供在遇到问题时的解决策略。 首先,确认你的CentOS版本。可以通过...

    Linux安装ffmpeg脚本

    对于Fedora或CentOS用户,可以使用: ```bash sudo dnf update sudo dnf install gcc make nasm yasm ``` 接下来,我们将下载FFmpeg的源代码。在这个例子中,我们有`ffmpeg-4.2.2.tar.bz2`。首先解压源代码: ```...

    Linux下安装ffmpeg所需解码器以及ffmpeg安装包(最全)

    sudo apt-get install ffmpeg ``` 对于基于RPM的系统(如Fedora、CentOS),则使用: ```bash sudo yum install ffmpeg ``` 或者,如果你的系统是较新的Fedora或CentOS,可能需要使用`dnf`: ```bash sudo dnf ...

    ffmpeg linux下安装包

    5. 使用FFmpeg: FFmpeg提供了丰富的命令行选项,可以进行各种多媒体处理操作。例如,你可以使用以下命令将一个视频文件转换为不同的格式: ``` ffmpeg -i input.mp4 output.ogg ``` 6. 日常维护: 要保持...

Global site tag (gtag.js) - Google Analytics