1、debian官方没有MPlayer的deb包,却有mozilla-mplayer的deb包。没有MPlayer,浏览器插件自然没有用;
2、虽然MPlayer的官方现在提供1.0pre7try2的源码包。但是对于Debian Etch/Sid用户,这个版本的源码不打补丁无法用gcc 4.0成功编译,而且使用的是gtk1.2的库,中文显示相比gtk 2.0程式配置要复杂一些。
大家自然能够选择非官方的二进制包。但是根据官方文档,在ad_pcm.c文档中存在堆溢出问题,该问题影响任何pre7(含)以前的MPlayer。而非官方源似乎还没有pre7try2的二进制包。
好在MPlayer的CVS上的源码已移植到gtk 2.0,而且能够使用gcc 4.0编译,也解决了堆溢出。而且作为Debian的用户,自然也不愿放弃dpkg工具。那么就请使用Debian方式编译自己的MPlayer CVS Debian Package吧!
零、前提:
请注意提示符:
# 代表需要root权限;
$ 代表普通权限即可;
一、准备工作:
1、获得MPlayer CVS:
这里您需要安装CVS:
# apt-get install cvs
2、获得MPlayer source:
CVS安装完成后,请登陆MPlayer的匿名CVS仓库:
$ cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer login
假如提示您输入密码,请留空直接回车,即可。登陆后
$ cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer co -P main
这一步取决于网络情况。对于国内用户,一般这一步相当漫长,请耐心等待代码下载完成。完成后您在当前目录下会获得一个main/子目录,里面就是MPlayer的源码。
3、获得FFmpeg
刚刚获得的mplayer源码不是全功能的,因为他缺少FFmpeg的libavcodec, libavformat和libavutil库,我们同样需要获得他:
$ cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg login
密码留空,直接回车,
$ cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/ffmpeg co -P ffmpeg
这一过程也不会很快请耐心等待。完成后当前目录下会有ffmpeg/子目录。
4、制作完整的MPlayer源码目录:
我们需要将刚刚获得的ffmpeg目录里的三个子目录:libavcodec, libavformat,libavutil拷贝到main子目录下:
$ cp -r ffmpeg/libavcodec main/
$ cp -r ffmpeg/libavformat main/
$ cp -r ffmpeg/libavutil main/
我们还需要修改main/CVS/Entries文档,以使我们刚刚拷贝的3个目录的内容同样能够更新。将一下3行加到main/CVS/Entries文档的末尾:
D/libavcodec////
D/libavformat////
D/libavutil////
至此,我们完成了MPlayer源码目录的创建。将来在更新时,只需要在main目录下:
$ cvs -z3 update -dPA
即可。
5、获取其他必须品(codecs, skin...):
请到http://www.mplayerhq.hu/homepage/design7/dload.html下载Codecs和Skins。Codecs建议使用other binary codec packages里的all(all codecs for Linux x86 (Win32 .dll and Linux .so))。
二、开始编译:
1、获取Debian制作工具:
首先请确认您有完整的研发工具集:gcc, make, binutils等等。
制作Debian包我们需要dh-make和fakeroot。但是MPlayer已提供了debian的编译环境,无须dh-make。我们只要获得fakeroot就行了:
# apt-get install fakeroot
2、准备Codecs:
请将获得的all-20050412.tar.bz2解压,并将目录重命名为codecs,然后将其移动或复制到/usr/local/lib/:
# tar jxvf all-20050412.tar.bz2
# mv all-20050412 codecs
# mv codecs /usr/local/lib
这里是MPlayer Codecs的默认路径之一。在编译之前,Codecs就需要放在这里,或在编译的时候加上您放置Codecs的位置。显然前者要方便一些 :)
3、开始编译:
进入main目录,先更新一下:
$ cvs -z3 update -dPA
然后能够开始Debian编译方式了:
$ DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary
注意:DEB_BUILD_OPTIONS指定传递给configure的参数。具体的参数列表能够通过
$ ./configure --help
来查询。假如您需要GUI,请务必按上句所说加入"--enable-gui"参数。
build过程仍然会十分漫长。完成后,在main的上一级目录就会得到mplayer_1.0cvs_i386.deb包!您现在能够使用dpkg来安装他了:
# dpkg -i mplayer_1.0cvs_i386.deb
安装的时候会让您选择视频驱动,一般选为x11即可。
然而事情并没有结束。
三、善后工作:
1、复制Skin。
解压您下载的Skin文档,将得到的目录改名为default,并将default目录移动到/usr/share/mplayer/Skin/,即完成Skin配置。
2、配置字体。
在主目录下有MPlayer的配置目录:~/.mplayer。在这里我们需要创建一个字体文档或链接。我使用的是AR PL SungtiL GB。之所以没有使用AR PL ShanHeiSun Uni,是因为后者实在太大了,在启动MPlayer和改变MPlayer窗口大小时会有言重停顿,甚至影响音话同步。当然假如您在观看时不会频繁的调整窗口大小也无妨。我这里是:
$ ln -s /usr/share/fonts/truetype/arphic/gbsn00lp.ttf ~/.mplayer/subfont.ttf
注意:subfont.ttf的名字不要更改,因为MPlayer默认只会查找这个名字。
3、配置。
默认安装的MPlayer有3个地方我不太满意:
(1)默认窗体大小改变时视频大小不变,即没有缩放;
(2)默认不关闭xscreensaver,因此在观看时有可能在关键时刻突然屏保启动!于是乎@#¥¥%!@#¥%!@#¥
(3)默认字幕大小并不限制在屏宽之内,因此过长的字幕会超出屏幕边界……
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




