在windows上用源代码编译安装MPlayer
转自:http://www.cnblogs.com/smallmuda/archive/2009/03/31/1425976.html
在windows上用源代码编译安装MPlayer
2、本文首发赢政。由于在那里被问到了几个MPlayer的问题,上网查了一下,发现关于Windows版MPlayer的文章较少,即使是官方中文文档(http://www.mplayerhq.hu/DOCS/HTML/zh/documentation.html),也侧重于Linux平台的安装使用。于是结合自己的使用经验写了一篇Windows平台下使用源代码编译MPlayer的帖子,在文章末尾简略的提了一下MPlayer命令行及GUI的使用。见笑了。
3、Mplayer一段时间以来一直称得上Linux平台媒体播放软件的王者,其Windows移植版同样出色。但是最近Mplayer的日子过得挺尴尬。先是在Linux(KDE)平台上被媒体播放器的新贵Kaffeine 一通穷追猛打,然后又和自己的子项目FFmpeg一起惹上了莫名其妙的版权官司。(http://www.mplayerhq.hu/homepage/index.html)虽然目前Mplayer 开发工作仍在正常进行,但前途依然是个未知数。作为一个Mplayer 的忠实拥护者,我只能默默地祈祷它一路走好!
4、本文主要参考文档:http://www4.mplayerhq.hu/MPlayer/releases/...MinGW-Howto.txt
5、我的机器是NorthWood的赛扬2.0,winxp sp2 ,从编译过程来讲,A贩们的U和其他windows操作系统应该大同小异。
6、时间仓促,错漏难免,敬请批评指正,谢谢!
1、命令行下执行MPlayer.exe你会发现,Mplayer的windows发行版默认都只是针对MMX和MMX2指令集进行的编译(如图),而它的源代码还支持SSE,SSE2,3DNOW!和3dnow-dsp!指令集,如果你有一颗比较新的CPU,通过编译源代码加入对以上几个指令集的支持,以达到更好的效果和更低的资源占用,是一件比较爽的事情。
3、MPlayer每天都会根据前一天的工作发布一个CVS的完整源代码包,只要你喜欢,每天你都可以编译一个最新的版本——你可以品尝到MPlayer最新的性能——当然,也可能包括最新的bug
4、通过编译安装,除了打造完全适合自己机器的软件外,还能多学一点电脑知识。
5、好玩。
如果以上五个理由没有打动你,那你就不要编译安装了,老老实实的下载上面提到的KK版,也是相当好用的。
1、别看我们说是在windows下编译安装MPlayer,但是win自身并不提供相关工具。我们还需要安装两个软件,去 http://www.mingw.org/download.shtml 下载MinGW-3.2.0-rc-3.exe和MSYS-1.0.10.exe ,首先双击安装MinGW-3.2.0-rc-3.exe,这个和普通的win程序安装没什么区别,一路next就可以搞定;然后双击安装MSYS- 1.0.10.exe,这个在安装结束的时候会弹出对话框:"Do you wish to continue with the post install? [yn ]"选y后,又会弹出一个"Do you have MinGW installed? [yn ]" 也是选y,然后让你给出MinGW的安装路径,如果是默认的话应当填C:/mingw(注意用“/”而不是“\”)安装结束后会在桌面生成一个MSYS的图标,双击即可执行。
MinGW 和MSYS究竟是干什么用的?呵呵,我一直都把它们理解为Linux部分工具软件和库+shell命令行的Windows移植版。为了写这篇文章专门搜了一下,原来MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。——反正就你能看见的部分来说,它就是一个类Unix/Linux的命令行式的软件编译环境。
2、下载dx7的头文件(http://www.mplayerhq.hu/MPlayer/releases/w.../dx7headers.tgz)
解压后把里面的全部文件复制到(c:\mingw\include)
附件是我自己弄的最新的DX9 headers,效果没什么大的区别,喜欢尝鲜的可以试一下——但是不能保证质量。使用方法和上面的dx7的头文件相同。(两者只能选其一)
附加文件
DX9Cheaders.rar ( 351.5k )
1、freetype(OSD字幕用)
软件主页:http://www.gnu.org/software/libiconv/
需要文件:libiconv-1.9.1.tar.gz
这个文件和下面提到的文件在windows下都可以使用WinRAR解压。解压后把libiconv-1.9.1目录放在,比如说C盘下面,然后双击打开MSYS,输入
cd C:\ libiconv-1.9.1
注:打开libiconv-1.9.1目录,也可以按需要指定其他目录(下同)。回车,然后输入:
./configure --prefix=c:/mingw --disable-shared
注:配置代码命令,其中--prefix=c:/mingw为指定目录命令, --disable-shared为取消共享。回车,等待执行完毕后,输入:
make
注:编译命令。回车,等待执行完毕后,输入:
make install
注:编译安装命令。
等待执行完毕后,如果一切顺利,没有报错。那么到此就算完成了一个软件的安装。与下面的各个步骤大同小异,下面我就写的简单一些了。
软件主页:http://sourceforge.net/project/showfiles.php?group_id=3157
需要文件:freetype-2.1.9.tar.bz2
同上一样,解压,然后
cd freetype-2.1.9
make 注:这个软件不需要./configure
make install
3、zlib
软件主页:http://www.gzip.org/zlib/
需要文件:zlib-1.2.2.tar.bz2
解压
cd zlib-1.2.1
make
make install
4、libpng
软件主页:http://sourceforge.net/project/showfiles.php?group_id=5624
所需文件:libpng-1.2.8-config.tar.gz
解压
cd libpng-1.2.8-config
./configure --prefix=c:/mingw --disable-shared
make
make install
5、libjpeg
软件主页:http://www.ijg.org/
所需文件:jpegsrc.v6b.tar.gz
解压
cd jpeg-6b
./configure --prefix=/mingw/ --enable-static
make
cp .libs/libjpeg.a c:/mingw/lib/
cp jpeglib.h jconfig.h jmorecfg.h c:/mingw/include/
6、libregif
软件主页:http://armory.nicewarrior.org/projects/libregif/
所需文件:libregif 4.1.6
解压
cd libregif-4.1.5
./configure --prefix=c:/mingw
make
make install
7、nasm
软件主页:http://sourceforge.net/project/showfiles.php?group_id=6208
所需文件:nasm-0.98.39.tar.bz2
解压
cd nasm-0.98.38
./configure --prefix=c:/mingw
make
mkdir c:/mingw/man/man1
make install
8、lame
软件主页:http://lame.sourceforge.net/download/download.html
所需文件:lame3.96.1.tar.gz
解压
cd lame-3.96.1
./configure --prefix=c:/mingw --disable-shared --disable-decoder
make
make install
9、xvid
软件主页:http://www.xvid.org/downloads.html
所需文件:xvidcore-1.0.3.tar.bz2 (http://downloads.xvid.org/downloads/)
这个软件最新的1.1beta版从我的机子上跑的情况来看,似乎对原来版本的兼容性有点问题,大家还是用旧的1.0.3版本的吧。
解压
cd xvidcore-1.0.3/build/generic
./configure --prefix=c:/mingw --disable-shared
make
make install
mv c:/mingw/lib/xvidcore.a c:/mingw/lib/libxvidcore.a
10、x264
软件主页:http://subversion.tigris.org/servlets/Proj...ist?folderID=91
所需文件:svn-win32-1.1.4.zip
解压后将 \bin 文件夹内的所有文件复制到C:\mingw\bin文件夹内。
11、live
下载地址:http://www.live.com/liveMedia/public/
所需文件:live-latest.tar.gz
解压
cd live
genMakefiles mingw
make
12、RealCodecs
下载附件中的文件(已分卷),将其解压到某个路径备用。
至此,依赖软件和库文件的配置安装结束。
RealCodecs.part1.rar ( 351.56k )
1、下载源代码包
首先去http://www.mplayerhq.hu/homepage/design7/dload.html 下载MPlayer的源代码包,依据你的个人喜好,你可以下载正式发行的源码版本,比如MPlayer v1.0pre6a source,也可以下载每天更新的CVS版本。
然后去http://www4.mplayerhq.hu/homepage/design7/codecs.html 下载那个名叫Windows all的解码器包。
2、两个包全部解压
3、用cd命令进入MPlayer源码的目录
4、./configure --help
注:执行这一步可以得到该软件支持的./configure的附加条件,可以根据自己的机器情况选用。
其中有些条件是默认支持的,比如说,sse2,3dnow!等指令集的自动检测/支持,real及win32媒体文件的支持,流媒体的支持等等,你可以在附加条件中忽略它们。(有的时候,某些条件未必能够监测得出来。你可以注意一下下一步的 ./configure 后的执行输出,里面包含了所有的条件执行信息,如果有没有认出的,你可以手动指定。)
5、下面就是./configure步骤了,这是我的配置,你可以根据自己的情况更改
./configure --prefix=D:/MPlayer --enable-win32 --enable-real --enable-live --enable-directx --enable-dshow --with-codecsdir=D:/MPlayer/codecs --with-win32libdir=D:/MPlayer/codecs --with-reallibdir=D:/MPlayer/realcodec --with-livelibdir=D:/MPlayer/codecs --enable-static --enable-largefiles --disable-mencoder
其中:
--prefix=D:/MPlayerr 为自定义Mplayer的安装路径。
--with-codecsdir=D:/MPlayer/codecs 我把下载的那个/windows-all-20050115 的解码包解压到D:/MPlayer/codecs,这个命令是指定它的路径。(下面的win32也指向这个路径就行)
--with-reallibdir=D:/MPlayer/realcodec 记得上面第12步中我们解压备用的那个RealCodecs吗?在这里指定它的路径。
--with-livelibdir=D:/MPlayer/live 上面第11步中我们编译的那个live文件的路径。
--enable-largefiles 支持2GB以上的单个文件——这恐怕对于HDTV爱好者来说是至关重要的。
--enable-directx 和 --enable-dshow 这两项实际上是“自动监测”的,但是有一次在我的机器上没有认出来,还是写一下吧。
--enable-static 是必须的,请注意一下。
--disable-mencoder mencoder这东东我用不到,disable了。
注意:如果你想将编译好的MPlayer.exe能够运行在不同的机器上,可以加上 --enable-runtime-cpudetection 选项;如果只是用在自己的机器和系统上,那就不要加这个。
请注意一下 ./configure 以后的输出结果,在其中可能就能找到下次需要改进的地方。
6、make
如果你是1.0G以下的CPU,你大可以去午睡一会儿了。需要比较长的时间。
7、make install
好了,大功告成。去D:\MPlayer下看看,在bin文件夹下就可以找到Mplayer.exe了。
五、MPlayer的使用
1、命令行方式
上述我们编译好的Mplayer.exe是一个命令行的应用程序——事实上官方的windows realse也是命令行版本的。这个在Windows的命令提示符里面可以运行,好在Windows的命令提示符支持拖动,我们也就不用费力的一个字符一个字符的输入了。
如图,是Mplayer播放文件的正确命令,注意mplayer.exe和媒体文件路径之间有空格键。具体使用及控制键请参阅上面提到的官方文档。
世界各地的软件编写者们为MPlayer编写了大量的GUI,其中windows平台的也为数不少。你可以在这里查到它们的列表:http://www.mplayerhq.hu/homepage/design7/projects.html
其中,比较优秀的有:
(1)WinMPLauncher (http://chameleon.gazellevillage.com/~twerp...MPLauncher.html)
我一直用这个,使用简单,功能强劲,而且资源占用几乎可以忽略不计。缺点是没有进度条和播控按钮。如图。使用方法:解压后双击 WinMPLauncher.exe,选择我们的MPlayer.exe所在路径,确定后即可使用它作为前端来调用MPlayer.exe播放文件了。
(2)mplgui
(http://www.mplayerhq.hu/homepage/design7/projects.html)
这个图形界面的优点是功能全, 它支持皮肤、拖动、进度条、一些基本图形控制按钮,列表播放等。但是我只找到了一种方法打开文件——拖动,而且没有打开URL的控制项。使用方法和上面的那个大同小异。不再赘述。
(3)MPlayerWIN(http://www.chronix.org/projects/mplayerwin/)
有不少性能选项,也还可以。
(4)MPlayer interface(http://home.freeuk.com/tom.nealon/mplayer.html)
总体上介绍的第1、3、4基本上是同类的——单纯的GUI,但是综合性能上来讲还是第一个比较强。
(5)MPUI(http://www-user.tu-chemnitz.de/~mfie/index.php?software=mpui)
最好的一定要留在最后说。 这个图形界面功能是最全的,但同时也是占用资源最高的。下载后只将里面的MPUI.exe和autorun.inf两个文件解压到你的MPlayer目录,双击MPUI.exe即可使用。
还有很多,就不一一列出了,大家可以自己尝试,选出自己喜欢的。
如图是自己编译好的MPlayer,使用WinMPLauncher 界面播放mms流媒体时的截屏。但是mplayer播放的图像抓不下来哪位大虾知道怎么抓告诉一声,谢了!
1094kbps的xvid影片(外挂sub字幕)连上GUI三个进程(在9~21%之间):
全文完
(不过Mplayer那可爱的子项目FFmpeg已经支持realvideo2.0了 ——这个更多的是专利问题而不是技术问题——谁叫Mplayer是欧洲人搞得呢?)回头试一下。︿_︿
在windows上用源代码编译安装MPlayer相关推荐
- 在Windows 11上从源代码编译Fritzing分步指南
在Windows 11上从源代码编译Fritzing分步指南 发表六月 2, 2022分类为命令行, DIY 编译, 视窗 原文浏览 您是否希望最新版本的Fritzing for Windows完全免 ...
- 【安信可A9G专题①】A9G环境在windows上搭建并编译,串口打印 Hello GPRS
本系列博客学习由 安信可科技 - 官方博客 技术分享,如有疑问请留言或联系邮箱. 1.A9G环境在windows上搭建并编译,串口打印 Hello GPRS 2.A9G在微信公众号上的定位功能笔记分享 ...
- 从源代码编译安装 Mono 2.4 和 MonoDevelop 2.0
虽然现在几乎所有的Linux发行版都预置了Mono软件,但是大多数都比较旧,因此要体验最新版本的Mono,还是要用源代码自己进行编译安装的. 先说几句废话,Mono 2.4 提供了.Net 3.5 的 ...
- Windows上python开发--2安装django框架
Windows上python开发--2安装django框架 分类: 服务器后台开发2014-05-17 21:22 2310人阅读 评论(2) 收藏 举报 python django 上一篇文章中讲了 ...
- Linux源代码编译安装详解
使用源代码编译安装软件有以下优点,获取软件的最新版及时修复bug,软件功能可按需选择或定制,有更多软件可供选择,源码包适用于各种平台. 工具/原料 一台装有Linux操作系统的电脑 接入互联网络并能正 ...
- python3源代码_Python3源代码编译安装
Python3源代码编译安装 安装必要工具 yum-utils ,它的功能是管理repository及扩展包的工具 (主要是针对repository) $ sudo yum install yum-u ...
- python源码编译安装 gb18030_源代码编译安装Python3.5.2
由于没有找到Python3.5的rpm安装包,因此进行源代码编译安装 1.下载Python3.5.2 [root@seastar ~]# cd /usr/local/src [root@seastar ...
- mysql5.5.8编译安装_MySQL5.5.8源代码编译安装
/*安装CMake*//*进入CMake源代码所在目录*/cd #/*解压CMake源代码*/tar zxf cmake-2.8.3.tar.gz /*进入CMake源代码目录*/cd cmak 首页 ...
- 【Qt开发】Qt Creator在Windows上的调试器安装与配置
Qt Creator在Windows上的调试器安装与配置 如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应的原生调试 ...
最新文章
- kubesphere部署elasticsearch7.13.4
- 华为的创新——计划制定和调整水平
- 2015年第六届蓝桥杯 - 省赛 - C/C++大学A组 - C.奇妙的数字
- java调用存储过程之环境测试
- 第5讲++创建管理数据库
- 领域应用 | 大众点评搜索基于知识图谱的深度学习排序实践
- 访问tomcat服务器文件路径,外置tomcat映射服务器路径以及springboot内置tomcat映射路径配置...
- VBS操作XML文档,拷贝结点 (转)
- 必读!Java开发人员的十大戒律
- 机器学习理论与实战:逻辑回归
- linux的ls -l显示的total 4是什么意思?我使用ls -a -l显示的total12,同一个文件夹显示了不同的信息?
- 唱吧录制的歌曲转换成mp3_录制开放文化歌曲
- elementui中表格的表头设置背景颜色
- imx6ul spi 设备驱动开发
- 安川机器人怎样与变位器编程_基于CAM Function的安川机器人弧焊焊接离线编程与离线仿真...
- 互联网思维(三)——产业思维
- 算法013:二维数组中的查找-在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断中是否存在
- 新浪sae部署微信订阅号
- 你了解过软件确认测试吗?可进行确认测试的软件测评中心
- windows下内存检测工具
热门文章
- window location href跳转无效
- Unity TMP超链接和图文混排
- 电商软件分享(好用版)
- Linux之进程概念
- 【web前端期末大作业】基于HTML+CSS+JavaScript实现代理商销售管理系统后台(8页)
- python是什么编程语言好-学习编程语言最好的方法是什么?
- python图片统一大小及转换通道
- android 实现屏幕录制功能,极速简单实现Android 屏幕录制编码为H264并且使用RTMP推流...
- Golang搭建并行版爬虫信息采集框架
- android motion linux handle,Android实现刮奖的效果