当前位置:  技术问答>linux和unix

mplayer在arm 2410上的移植(转发)

    来源: 互联网  发布时间:2015-09-27

    本文导语:  mplayer在arm 2410上的移植 在S3C2410嵌入式开发平台上移植了几款linux媒体播放器,感觉播放效果不是很理想, 320x240分辨率下的视频播放也不是很流畅,难道200M主频的速度就只能这样了?我开始有点失望了。上个月,当mplayer摘...


mplayer在arm 2410上的移植


在S3C2410嵌入式开发平台上移植了几款linux媒体播放器,感觉播放效果不是很理想,
320x240分辨率下的视频播放也不是很流畅,难道200M主频的速度就只能这样了?我开始有点失望了。上个月,当mplayer摘取了年度Linux world 博览会“新媒体”大奖的消息传来,激发了我再次移植mplayer 到2410的决心,尽管前几次移植的结果都不是很成功。

       以前我刚开始在linux下做桌面开发时,就听说mplayer号称linux史上功能最强的媒体播放器,它在桌面上安装起来很方便,简单的configure,make一下,就装好了,和QT的GUI配合,界面还是蛮友好的。Mplayer对媒体格式的广泛支持,以及丰富的后期处理滤镜给我留下深刻印象,最新的版本更支持DIVX,H.264,MPEG4等最新的流媒体格式,可以实时在线播放视频流,这么优秀的播放软件把它移植到嵌入式设备上该多好啊!

   公司里有一块FS2410的开发板,深圳优龙的板子,CPU是三星的S3C2410,arm9的内核,板子做工很精细,以前一直都用它来做开发,买的时候配的是10。4寸的sharp大屏,640X480的分辨率,不错,这样就可以测试在640X480分辨率下的视频播放速度了。硬件平台的问题解决了,下一步下载最新的mplayer源代码包,毕竟最新的源代码包才有最新的功能,当然了BUG估计也是不少的。打开mplayer的官方网站http://www.mplayerhq.hu的主页,可以看到“download”这个链接,点击一下,进入下载页面,在该页面里可以看到“daily CVS snapshot source”的下载部分,这部分链接都指向了每天提交到CVS服务器里最新的mplayer源代码包,鼠标点击一下开始下载!


1. 开始编译


下载下来的源代码一般都叫MPlayer-current.tar.bz2的名字,好,开始解包,在命令行下敲以下的命令

bunzip2  MPlayer-current.tar.bz2  |  tar  xv  –

 查看解包出来的README和INSTALL文件,看看有没有安装时特别声明的东西,这是我的习惯,因为同一个软件的不同版本,安装的方法有时并不一样。然后输入./configure --help看看有没有多出或减少什么选项,还好,没什么变化,于是把以前配置mplayer的命令拿出来,复制,粘贴在命令行上:


./configure --cc=arm-linux-gcc --target=arm-armv4-linux --enable-static --prefix=/tmp /mplayer --disable-win32  --disable-dvdread --enable-fbdev --disable-mencoder --disable-live --disable-mp3lib --enable-mad --enable-libavcodec  --language=zh_CN


配置完毕,开始跨平台编译:   make

眼睛盯着编译器反馈的每一个信息,老是担心在哪出错,mplayer的源代码太庞大了,
又使用到不少第三方的库,谁能保证编译不出问题呢.果然,没编译几下,就停下来了,说什么codec-cfg无法运行,产生不了某某头文件。检查了一下,发现codec-cfg这个可执行文件是最先编译产生的一个文件,这个文件是存在的啊,怎么会执行不了呢?于是手动执行了一下,系统提示“cannot execute binary file”,突然想起来,codec-cfg是按跨平台方式编译的啊,产生的是arm的代码,当然不能在x86上执行了,那就先用不用跨平台编译的方式,先把mplayer编译成x86的代码,于是重新配置,简单的 ./configure, make,然后将生成的
codec-cfg改名为codec-cfg.x86。然后再按跨平台方式配置,编译,等编译器出现错误停止编译时,将codec-cfg.x86该名为codec-cfg,再make,OK,编译就可以继续进行了。

  在编译期间,还出现了几处错误,都是头文件引用的问题,特别提醒大家的是,在libmpcodecs和libavcodec这两个目录下,有一个疏漏,就是这两个目录的源文件都以
#incude “config.h” 的方式引用头文件“config.h”,但是在这两个目录下并不存在该头文件“config.h”,这些源文件实际是期望引用mplayer安装包根目录下的“config.h”头文件,
因此我们需要在libmpcodecs和libavcodec这两个目录下手动建立一个名为config.h的链接并指向mplayer安装包根目录下的“config.h”头文件,建立方法


$> cd   libmpcodecs


$> ln  –s  ../config.h  config.h 


$> cd  ../


$> cd  libavcodec


$>  ln  –s  ../config.h  config.h

经过几次的编辑修改,终于成功完成对mplayer的编译链接,一看mplayer文件的大小,10M,z这也太太夸张了吧,我还没编译成debug的呢。到目前为止这算是成功的第一步了。

|
好文!

|
niu ren

|

|
没有vo (video_out)的说明。

|
难道是使用framebuffer

|
mplay惹上麻烦了,欧盟的一个什么狗屁法令可能导致mplay消失。

|
支持!

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 执行 "sudo apt-get install mplayer mplayer-fonts"命令 为什么出现下列错误? 求指教!!!
  • 怎么装mplayer?
  • mplayer安装成功,但是不能播放??
  • 如何在命令行调用mplayer 播放视频文件?
  • Mplayer 安装后没有显示视频的窗口 求个位帮忙
  • 安装了mplayer,antivir怎样使用
  • 获取mplayer的播放时间
  • fedora 10 运行mplayer时出现的问题
  • MPlayer图形界面播放问题
  • 任天堂Wii上的媒体播放器 MPlayer CE
  • 哪有mplayer的skin 下载??
  • 100分求mplayer rpm格式下载。
  • Java媒体播放器 Java MPlayer
  • 为什么刚装好的redhat9也装不上mplayer,求救!!!
  • MPlayer WW编译版
  • centos mplayer菜单中文乱码
  • 高级视频播放器 mplayer2
  • MPLAYER录音
  • 求MPlayer源码分析
  • 安装mplayer遇到问题,请高手帮忙


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3