快速业务通道

Mplayer 移植

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-30
--disable-live #disable LIVE555 Streaming Media [autodetect] 让Mpalyer不支持流媒体协议
--disable-mp3lib # disable builtin mp3lib [enabled]
--enable-mad #disable libmad (MPEG audio) support [autodetect]
--enable-libavcodec_a #disable static libavcodec [autodetect]
--disable-armv5te #disable DSP extensions (ARM) [autodetect]
--disable-armv6 #disable ARMv6 (ARM) [autodetect]
--with-extraincdir=/usr/local/arm/3.3.2/lib/include #指明mad.***件所在路径
--with-extralibdir=/usr/local/arm/3.3.2/lib/lib #指明limad相关链接库所在路径

(2)#make

其中可能会遇到如下问题:

1.Error:motion_comp_arm_s.S

在libmpeg2/motion_comp_arm_s.S文件的最前面加上如下的内容:

#ifndef HAVE_PLD
.macro pld reg
.endm
#endif

2.vo_ivtv.c:79: error: storage size of ’sd’ isn’t known

vo_ivtv.c:80: error: storage size of ’sd1′ isn’t known

添加--disable-ivtv

3. undefined reference to `video_out_ivtv''

在文件 file libvo/video_out.c, 找到
#ifdef HAVE_DXR2
extern vo_functions_t video_out_dxr2;
#endif
extern vo_functions_t video_out_dxr3;
#ifdef HAVE_IVTV
extern vo_functions_t video_out_ivtv;
#endif
edit it like this:
#ifdef HAVE_DXR2
extern vo_functions_t video_out_dxr2;
#endif
#ifdef HAVE_DXR3 //这一句是要添加的
extern vo_functions_t video_out_dxr3;
#endif //这句是要添加的
#ifdef HAVE_IVTV
extern vo_functions_t video_out_ivtv;
#endif

使用arm-linux-gcc 3.3.2编译mplayer可能会出现in.h头文件错误如下:

/usr/local/arm/3.3.2/include/netinet/in.h:259: parse error before ''('' token
/usr/local/arm/3.3.2/include/netinet/in.h:259: parse error before "__u32"
/usr/local/arm/3.3.2/include/netinet/in.h:260: parse error before ''('' token
/usr/local/arm/3.3.2/include/netinet/in.h:260: parse error before "__u16"
/usr/local/arm/3.3.2/include/netinet/in.h:262: parse error before ''('' token
/usr/local/arm/3.3.2/include/netinet/in.h:262: parse error before "__u32"

需要修改一下/usr/local/arm/3.3.2/include/netinet/in.h中,在 __BEGIN_DECLS 后面增加下述文字

#undef ntohl
#undef ntohs
#undef htonl
#undef htons

(3) make install(出现提示不认识的文件.是ARM平台运行的文件,所有不认识)

install -m 755 -s mplayer /tmp/mplayer-rc2/bin
strip: Unable to recognise the format of the input file `/tmp/mplayer-rc2/bin/mplayer''
此时在MPlayer-1.0rc2目录下会生成可执行文件mplayer.
把它拷贝到/bin/目录下.

要执行时:

#/bin/mpalyer /路径/要播放的媒体文件名;
#/bin/mplayer -ac mad a.mp3

三、MPlayer slave命令

在命令中添加 -slave 和 -quiet就可以通过命令设置Mplayer实现相应的功能.在mplayer源码中的,/DOCS/tech/slave.txt中对这些命令有详细的解析.

嵌入式及

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号