linux下编译ffmpeg环境

来源:互联网 发布:手机淘宝改地址怎么改 编辑:程序博客网 时间:2024/05/01 13:32

1、下载ffmpeg。
下载网址:http://www.ffmpeg.org/download.html

2、解压缩
tar -zxvf ffmpeg-2.0.1.tar.gz

3、配置,生成Makefile
./configure --enable-shared --disable-yasm --prefix=/usr/local/ffmpeg
如果执行结果不对,可以根据提示信息,并查看帮助,解决问题
./configure --help

4、编译安装
make
make install

5、安装之后在/usr/local/ffmpeg会看到有三个目录
bin 执行文件目录
lib 静态,动态链接库目录
include 编程用到的头文件

为了防止执行程序找不到库文件,
可以将/usr/local/ffmpeg/lib目录设置到LD_LIBRARY_PATH环境变量,
或者查看/usr/local/ffmpeg/lib下所有的链接,并在/usr/lib下建立同样的链接。如下。
ln -s /usr/local/ffmpeg/lib/libavcodec.so /usr/lib/libavcodec.so
ln -s /usr/local/ffmpeg/lib/libavdevice.so /usr/lib/libavdevice.so
ln -s /usr/local/ffmpeg/lib/libavfilter.so /usr/lib/libavfilter.so
ln -s /usr/local/ffmpeg/lib/libavformat.so /usr/lib/libavformat.so
ln -s /usr/local/ffmpeg/lib/libavutil.so /usr/lib/libavutil.so
ln -s /usr/local/ffmpeg/lib/libswresample.so /usr/lib/libswresample.so
ln -s /usr/local/ffmpeg/lib/libswscale.so /usr/lib/libswscale.so

ln -s /usr/local/ffmpeg/lib/libavcodec.so /usr/lib/libavcodec.so.55
ln -s /usr/local/ffmpeg/lib/libavdevice.so /usr/lib/libavdevice.so.55
ln -s /usr/local/ffmpeg/lib/libavfilter.so /usr/lib/libavfilter.so.3
ln -s /usr/local/ffmpeg/lib/libavformat.so /usr/lib/libavformat.so.55
ln -s /usr/local/ffmpeg/lib/libavutil.so /usr/lib/libavutil.so.52
ln -s /usr/local/ffmpeg/lib/libswresample.so /usr/lib/libswresample.so.0
ln -s /usr/local/ffmpeg/lib/libswscale.so /usr/lib/libswscale.so.2

6、编译测试程序
gcc -o ffmpegtest ffmpegtest.c -I/usr/local/ffmpeg/include -L/usr/local/ffmpeg/lib -lavformat -lavcodec -lavtuil

7、执行程序
./ffmpegtest
或直接执行/usr/local/ffmpeg/lib目录下的./ffmpeg进行测试。


以上是不安装libx264库的做法,若要安装带有libx264编码的ffmpeg,需要按照一下安装

ffmpeg软件安装步骤:
 1 安装yasm-1.2.0.tar.gz库
  解压
  ./configure
  make
  makeintall
 
 2 安装h246库
  解压
  ./configure --enable-shared --enable-static
  make
  make install
 
 3 安装ffmpeg
  解压
  ./configure --enable-swscale --enable-postproc --enable-gpl --enable-libx264 --prefix=/usr/local/ffmpeg
  make
  make install
 
 4 转码测试
    ln -s /usr/local/ffmpeg/bin/ffmpeg /usr/bin/ffmpeg
    ln -s /usr/local/ffmpeg/bin/ffprobe /usr/bin/ffprobe
    ffmpeg -y -threads 1 -i input.dat -c:v libx264 -c:a copy -b 220k -f mp4 out.dat
  参数解释:
   -y 如果存在out.dat,则强制重写;
   -threads 线程数;
   -c:v 视频编码解码库;
   -c:a 音频编码解码库;
   -b 码率;
   -f 输出文件格式;
  如果测试时发现不能使用libx264库,则在/etc/ld.so.conf中加入/usr/local/lib 再运行ldconfig

0 0