MPlayer 1.0已经把大部分解码库都自带了,如ffmpeg,但是自带的音频库在S3C2440下效果非常不好.换成使用libmad效果不错.因此MPlayer在ARM-Linux的最简单的移植只需要移植这两个即可.移植后即进行字符界面的播放.
但完整版本需要如下库.
如果需要字幕支持.需要移植freetype库.支持JPG皮肤需要 libjpeg库,打开DVD光盘格式,需要dvdread,dvdnav等,支持pnm库需要libpnm
MPlayer的皮肤主要采用X11支持.但移植X11需要大量工作.MPlayer也支持SDL,但是实测好象其实现并不支持皮肤显示.一般将其关掉.
ARM版同样可以加入live555支持,支持远程的RTSP的流媒体播放器,方法同X86版类似.
MPlayer的简单移植
按照移植规范,libmad在libs目录下,MPlayer本身在项目目录下.
libmad的移植
CC=arm-linux-gcc ./configure --prefix=$PWD/../../output/arm_linux
--enable-fpm=arm
--host=arm-linux --disable-debugging --enable-shared --enable-static
修改Makefile 去掉129行
-fforce-mem标志,因为arm-eabi编译器都不支持这个选项,否则将会报错。
make
make install
MPlayer 的移植
0.下载
MPlayer v1.0rc2
http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2
http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0rc2.tar.bz2
编译环境:
在arm-linux-gcc 3.3.2 +ARM-Linux 2.6.13.
arm-linux-gcc 4.3.2 + ARM-Linux 2.6.29
arm-linux-gcc 4.3.3 + ARM-Linux 2.6.30 均测试通过.
1.生成Makefile
./configure --prefix=$PWD/../output/arm_linux --cc=arm-linux-gcc --ar=arm-linux-ar / --ranlib=arm-linux-ranlib --disable-gui / --target=arm-armv4-linux --host-cc=gcc --disable-freetype/ --enable-fbdev --disable-mencoder --disable-sdl --disable-live --disable-dvdread / --disable-libdvd |