您的位置:首页 > 其它

嵌入式学习---------MPlayer 的移植

2012-02-25 21:17 260 查看
以下代码是根据老房老师的资料和王大的笔记整理:

以下采用arm-linux-gcc4.3.2,在我的6410开发板(飞凌OK6410A)上运行通过:需要资料可在我空间下载

1、先编译libmad解码库:

下载源代码http://cdnetworks-kr-1.dl.sourceforge.net/project/mad/libmad/0.15.1b/libmad-0.15.1b.tar.gz

(1)

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



(注:其中如果出现cc1: error: unrecognized command line option “-fforce-mem”

解决办法:vi Makefile

找到包含"-fforce-mem"字符串,将其删除,就ok了

原因是gcc 3.4 或者更高版本,已经将其去除了,所以会出现上面的错误!)

(2)

make

(3)

make install

2、再编译mplayer(版本rc2)

(1)

./configure --cc=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=en_US --disable-armv5te
--disable-armv6 --with-extraincdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib/include --with-extralibdir=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/lib/lib --host-cc=gcc --enable-ossaudio --disable-ivtv

(2)

make

注意,期间若出现:

----------------------------------------------------------------------------

dsputil_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libavcodec/armv4l/dsputil_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

----------------------------------------------------------------------------

motion_comp_arm_s.S error:selected processor does not support 'pld[r1]'

修改MPlayer-1.0rc2/libmpeg2/motion_comp_arm_s.S,在前面添加上:

#ifndef HAVE_PLD

.macro pld reg

.endm

#endif

(3)

无错误即可生成mplayer拷贝到开发板根文件系统/usr/local,NFS挂载根文件系统后,超级终端执行:

cd /usr/local

./mplayer ./yishengyouni.mp4 即可播放./yishengyouni.mp4文件

可以使用QT为mplayer做个界面~~



**********************************************************************************************

另附一段来自网络的mplayer配置参数说明

--host-cc=gcc --cc=arm-linux-gcc --target=arm-linux //主机编辑器是gcc,交叉编辑环境是arm-linux-gcc

--enable-fbdev //打开framebuffer支持.ARM开发板必须的

--enable-static //静态编译,编译成功后只需要将exe文件拷走即可以使用

--disable-dvdread --disable-dvdnav --disable-dvdread-internal //全部与DVD相关,无视即可

--disable-libdvdcss-internal //这个不加,低版本mplayer也会出错

--disable-live //禁止流媒体,我们用不到

--disable-mp3lib --enable-mad //关闭默认的MP3解码库,使用我们刚才编译的libmad

--disable-win32dll //禁用win32动态链接库支持

--disable-mencoder //交叉编译mencoder会有问题,而且arm上不需要这个功能

--disable-ivtv //如果不加会出现ivtv文件产生的错误

--enable-libavcodec_a //启用静态的libavcodec解码

--prefix=/usr/local/Mplayer/mplayer 2>&1 | tee logfile //不解释 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐