ubuntu qt ffmpeg安装配置

来源:互联网 发布:linux 嵌入式编程 编辑:程序博客网 时间:2024/05/18 11:13

环境:ubuntu 13.04 LTS

 (1)到http://www.ffmpeg.org/download.html下载最新版ffmpeg

也可以用这个命令:

git clone git://source.ffmpeg.org/ffmpeg.git ffmpegyasm是汇编编译器,因为ffmpeg中为了提高效率用到了汇编指令,所以需要先安装。到http://yasm.tortall.net/Download.html下载Source .tar.gz(即yasm-1.2.0.tar.gz)

  tar zxvf yasm-1.2.0.tar.gz

  cd yasm-1.2.0

  ./configure

  make

  sudo make install

 

(2)需要用到x264库

sudo apt-get install libx264-dev

 

(3)安装依赖库

1. sudo apt-get install libfaac-dev

2. sudo apt-get install libmp3lame-dev

3. sudo apt-get install libtheora-dev

4. sudo apt-get install libvorbis-dev

5. sudo apt-get install libxvidcore-dev

6. sudo apt-get install libxext-dev

7. sudo apt-get install libxfixes-dev

 

(4)配置ffmpeg,主要是打开x11grab

./configure --enable-gpl --enable-version3 --enable-nonfree --enable-postproc  --enable-pthreads --enable-libfaac  --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab --enable-libvorbis

 

(5)编译

make

 

(6)安装

sudo make install

 这样就OK!



ffmpeg qt开发报错:

1.在common.h中加上
#ifndef UINT64_C(val)
 46
 47 #define UINT64_C(val) val##ULL
 48
 49 #endif

但是出现/usr/local/include/libavutil/common.h:30: error: #error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS
这个错误
2.将加载common.h中
#if defined __cplusplus
#define __STDC_CONSTANT_MACROS

#endif

在一句要加在#error missing -D__STDC_CONSTANT_MACROS / #define __STDC_CONSTANT_MACROS前面

出现下面错误
:-1: error: /usr/local/lib/libavformat.a(http.o): undefined reference to symbol 'inflateInit2_'
:-1: error: note: 'inflateInit2_' is defined in DSO /lib/i386-linux-gnu/libz.so.1 so try adding it to the linker command line
/lib/i386-linux-gnu/libz.so.1:-1: error: could not read symbols: Invalid operation

3.上述错误的原因是:
加载的库路径不对
 LIBS += -L /usr/local/lib  -lavcodec  -lavformat  -lswscale \
改为: LIBS += -L /usr/lib  -lavcodec  -lavformat  -lswscale \

0 0
原创粉丝点击