在Linux平台的嵌入式设备上,可以使用mplayer播放音视频文件。K390机器采用S3C2440平台,交叉编译器采用arm-linux-gcc-3.4.1,下面是该平台下mplayer的详细移植步骤: 第一步:网上下载libmad-0.15.1b.tar.gz和MPlayer-1.0rc2.rar两个文件,并解压; 第二步:进入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/libCC=/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键降低或升高音量。 另外,默认情况下使用mplayer,会打印很多信息。我们可以使用如下方法屏蔽掉这些不必要的信息: 在mplayer.c中,找到saddf函数,print_status函数,set_osd_msg函数,以及update_osd_msg函数,在mp_msg.c中,找到mp_msg函数,在这些函数的第一行加入return,直接返回,这样后面的打印程序就不会执行了。
|