imx6移植ffmpeg2.3

yasm
./configure --enable-shared --prefix=/usr/local/arm/yasm --host=arm-linux
修改Makefile CC=arm-none-linux-gnueabi-gcc
make
make install
 
lame
./configure --enable-shared --prefix=/usr/local/arm/lame --host=arm-linux
修改Makefile CC=arm-none-linux-gnueabi-gcc
make
make install
 
imx6移植ffmpeg2.3
xvid
./configure --enable-shared --prefix=/usr/local/arm/lame --host=arm-linux --target=arm-linux
修改config.status CC=arm-none-linux-gnueabi-gcc
make
make install
 
SDL2 编译ffplay需要
./configure --enable-shared --prefix=/usr/local/arm/sdl2 --host=arm-linux --target=arm-linux
修改config.status CC=arm-none-linux-gnueabi-gcc
 
 
x264 2016
./configure --prefix=/usr/local/arm/x264 --enable-shared --disable-asm
修改生成的config.mak文件
ARCH=X86 修改为ARCH=ARM
CC=gcc修改为CC=arm-none-linux-gnueabi-gcc
去掉-m32 (这行中CFLAGS=-Wshadow -O3-ffast-math -Wall -I. -I$(SRCPATH)-std=gnu99 -fomit-frame-pointer -fno-tree-vectorize)
修改LD=gcc –o为LD=arm-none-linux-gnueabi-gcc –o
 
 
ffmpeg
SDL2生成ffplay出错,选择使用SDL1.2
./configure --prefix=/usr/local/arm/ffmpeg --cross-prefix=arm-none-linux-gnueabi- --target-os=linux --arch=arm --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --extra-cflags=-I/usr/local/arm/lame/include --extra-ldflags=-L/usr/local/arm/lame/lib --enable-ffserver --enable-libmp3lame --extra-cflags=-I/usr/local/arm/xvid/include --extra-ldflags=-L/usr/local/arm/xvid/lib --enable-libxvid --enable-version3 --extra-cflags=-I/usr/local/arm/x264/include --extra-ldflags=-L/usr/local/arm/x264/lib --enable-libx264 --extra-cflags=-I/usr/local/arm/sdl/include/SDL --extra-ldflags=-L/usr/local/arm/sdl/lib --enable-ffplay --extra-libs=-lSDL
由于configure后 SDL support no并且生成的config.mak文件中CONFIG_FFPLAY=yes,HAVE_SDL=yes等都是被注释掉的,所以需要手动修改config.mak文件,将CONFIG_FFPLAY=yes HAVE_SDL=yes的注释去掉
 
make -j64
make install
 
上一篇:RAC 性能分析 - 'log file sync' 等待事件


下一篇:Oracle系列之索引