FFmpeg编译的时候,默认没有编译出ffplay,需要编译SDL库,然后在FFmpeg加入ffplay编译选项。
1.交叉编译SDL库
a../configure --prefix=/opt/Rasp --host=arm-bcm2708-linux-gnueabi --enable-static
b.make
c.make install
2.交叉编译ffmpeg
a. .pl --prefix=/usr/local/ffmpeg-arm --enable-ffplay --extra-cflags=-I/usr/local/sdl-arm/include/SDL
--extra-ldflags=-L/usr/local/sdl-arm/lib --extra-libs=-lSDL/configure --enable-cross-compile --target-os=linux --cross-prefix=arm-linux- --cc=arm-linux-gcc --enable-shared --arch=arm --enable-g
注:由于configure后 SDL support no并且生成的config.mak文件中CONFIG_FFPLAY=yes,HAVE_SDL=yes等都是被注释掉的,所以需要手动修改config.mak文件,将CONFIG_FFPLAY=yes HAVE_SDL=yes的注释去掉
同时必须手动指定SDL的头文件,库路径,并且-lSDL来链接
需要生成debug 符号时增加--disable-optimizations --disable-mmx --disable-stripping
b.make
c.make install