Linux平台基于S3C2440的MPlayer的移植

zlbj 2011-02-23

在Linux平台的嵌入式设备上,可以使用MPlayer播放音视频文件。K390机器采用S3C2440平台,交叉编译器采用arm-linux-gcc-3.4.1,下面是该平台下MPlayer的详细移植步骤:

第一步:下载libmad-0.15.1b.tar.gz和MPlayer-1.0rc2.zip两个文件

密码:www.muu.cc

具体下载方法见http://www.linuxidc.net/thread-1186-1-1.htmlhttp://www.linuxidc.net/thread-1189-1-1.html

并解压;

第二步:进入libmad-0.15.1b:

(1)配置,生成Makefile:(--prefix=/usr/local/arm/3.4.1/lib为指定最终生成的库文件的安装路径,CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc为指定交叉编译工具路径)

./configure --enable-fpm=arm --host=arm-linux --disable-shared --disable-debugging --prefix=/usr/local/arm/3.4.1/lib CC=/usr/local/arm/3.4.1/bin/arm-linux-gcc

(2)编译:

make

(3)安装:

make install

这一步的目的是在/usr/local/arm/3.4.1/lib下生成lib目录,在lib目录下生成include和lib两个文件夹,对应文件夹中生成mad.h和libmad.a文件,这两个文件供mplayer编译用。

第三步:进入MPlayer-1.0rc2:

(1)配置,生成Makefile:(extraincdir=/usr/local/arm/3.4.1/lib/include和--with-extralibdir=/usr/local/arm/3.4.1/lib/lib指定了上一步安装库文件在路径)

./configure --cc=/usr/local/arm/3.4.1/bin/arm-linux-gcc --target=arm-linux --enable-static --prefix=/tmp/mplayer-rc2 --disable-win32dll --disable-dvdread --enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --enable-mad --enable-libavcodec_a --language=zh_CN --disable-armv5te --disable-armv6 --with-extraincdir=/usr/local/arm/3.4.1/lib/include --with-extralibdir=/usr/local/arm/3.4.1/lib/lib --host-cc=gcc --enable-ossaudio

(2)编译:

make

当前目录下会生成mplayer.

第四步:将生成的mplayer拷到SD卡中,同时拷备视频文件如*.avi,音频文件如*.mp3,启动K390机器,挂载SD卡,使用如下命令播放音视频:

./mplayer  *.avi

./mplayer  *.mp3

值得注意的是,之前使用公司其他同事编译的mplayer,放音视频都会很卡,使用1.0版本的mplayer后,播放音频变得很流畅。但是播放一个512*384的AVI格式的视频文件时,仍然很卡。使用如下命令播放,就变得很流畅了:

./mplayer –fs –ac mad *.avi

这里-fs表示全屏播放,即电影显示在正中央,周围填充黑色。-acmad表示先尝试使用libmad,其他解码器作为后备。

播放过程中,可以通过9和0键降低或升高音量。

相关推荐