感谢支持
我们一直在努力

安装编译最新mplayer 解决很多BUG

为什么要选择最新的,因为最新的解决了一个好长时间的bug,原先放rm和rmvb格式的无法拖动进度条。现在最新的能拖动了。我们先到下面这个链接去下最新的:

要做以下得有一个编译的环境,就是gcc4以上,gtk2以上(gtk1我不用了,常出乱码,只要你这儿不加参数会自动调用gtk2的,不会用你的 gtk1.)glibc,以及X的头文件库文件(因为我们要界面)。不过一般发行版只要你选了全部安装这个环境是有的,所以你放心的做。如果在. /configure出错就是环境问题,很有可能是相依的软件没装。你可以根据提示先把这个装了。我们这里先明白一个道理,我们不是win系统装软件。我们是从一个源码编译安装。所以主要分三步:

第一步:./configure 这主要是检查你的系统环境以及初始化一些变量,最后生成Makefile文件。
第二步:make 根据刚才生存的Makefile文件进行编译。这里没出错,整个编译就算完成。
第三步:make install这一步就是安装了啊。只要你没装在你的home目录,得用root身份安装。
好了下载必要的:

1、 源码部份:最新的是

ftp://ftp1.mplayerhq.hu/MPlayer/releases/mplayer-checkout-snapshot.tar.bz2


2、解码部份:下all这个几乎各种格式都能放:
ftp://ftp1.mplayerhq.hu/MPlayer/releases/codecs/all-20061022.tar.bz2


3、皮肤部分:就图形界面你得要吧!(先下一个,一会再说哪儿下,你下个十几个,天天换个样.)
ftp://ftp1.mplayerhq.hu/MPlayer/skins/Blue-1.7.tar.bz2


4、字体我们不要了。你的系统字体多吧,到时随便链一个。

首先你想装在哪里呢?装在/usr/下,大部份发行版的软件都装在这里。如果装在这里就没有必要进入系统初始化一起变量。因为你安装时发行版已给你设好了。为了不给装系统软件弄混。我们选其它地方吧。按一般习惯还有两个地方/usr/local 和/opt下。为了说明一个问题,我们选/opt下而且专们用一个目录来装mplayer,到时你不想要了。直接把他删了,决对干净。


首先建目录root身分:(为了方便我们都用root身份,不要怕,不会出问题的。)
mkdir /opt (一般都有,没有就执行这一步)
mkdir /opt/mp (专门装mplayer的目录)

为了找得到库,和能在菜单栏显图标等,我们先设置一些初始化的变量:(因为各个发行版不一样,可写的地方很多,但都要去执行/etc/profile文件,所以我们把下面的写在/etc/profile文件最后面)

export PATH=”${PATH}:/opt/mp/bin”
export PKG_CONFIG_PATH=”${PKG_CONFIG_PATH}${PKG_CONFIG_PATH+:}/opt/mp/lib/pkgconfig”
export XDG_DATA_DIRS=”${XDG_DATA_DIRS}${XDG_DATA_DIRS+:}/opt/mp/share”

好了执行下面命令使他生效:
source /etc/profile

现在再打开/etc/ld.so.conf 文件加入
/opt/mp/lib
执行: ldconfig


正式开始:

1、先装解码器:
mkdir /opt/mp/lib && mkdir /opt/mp/lib/codecs
cd /opt/mp/lib/codecs (把all-20061022.tar.bz2 下到这个目录)
tar xvf all-20061022.tar.bz2
rm all-20061022.tar.bz2
chown -v root:root *

2、装图形界面:
mkdir /opt/mp/share && mkdir /opt/mp/share/mplayer && mkdir /opt/mp/share/mplayer/skins
cd /opt/mp/share/mplayer/skins (把Blue-1.7.tar.bz2下到这个目录)
tar xvf Blue-1.7.tar.bz2
rm Blue-1.7.tar.bz2
chown -v -R root:root Blue
chmod -v 755 Blue{,/icons}
ln -sv Blue default
关于更多的皮肤直接到mplayer网站下了解到/opt/mp/share/mplayer/skins里就行了。

3、编译安装mplayer源码:
首先我们随便找个目录就在/opt/mp
cd /opt/mp (把mplayer-checkout-snapshot.tar.bz2弄到这里来)
tar xvf mplayer-checkout-snapshot.tar.bz2
rm mplayer-checkout-snapshot.tar.bz2
cd mplayer-checkout-2007-01-28 (进入源码目录,最后面这个号数有可能变,天天都在开发)

我们先不忙编译,我们先看下帮助:

./configure –help (贴出部份信息,稍加解释)
这是默认安装的位置如下:
–prefix=DIR prefix directory for installation [/usr/local]我们装到/opt/mp
–bindir=DIR directory for installing binaries [PREFIX/bin]这里就变成了/opt/mp/bin
–datadir=DIR directory for installing machine independent
data files (skins, etc) [PREFIX/share/mplayer]
–mandir=DIR directory for installing man pages [PREFIX/man]
–confdir=DIR directory for installing configuration files
[PREFIX/etc/mplayer]
这个我们给他改个位置放到 /etc/mplayer下,你应该明配置的大部份都在/etc下吧。

–libdir=DIR directory for object code libraries [PREFIX/lib]
上面这些你该明白了吧!

–codecsdir=DIR directory for binary codecs [LIBDIR/codecs]
解码器位置:我们的: /opt/mp/lib/codecs
–win32codecsdir=DIR directory for Windows DLLs [LIBDIR/codecs]
–xanimcodecsdir=DIR directory for XAnim codecs [LIBDIR/codecs]
–realcodecsdir=DIR directory for RealPlayer codecs [LIBDIR/codecs]
win xanim real 解码器我们全部指到 /opt/mp/lib/codecs 好管理

–disable-mencoder disable MEncoder (A/V encoder) compilation [enable]
–disable-mplayer disable MPlayer compilation [enable]
–enable-gui enable GMPlayer compilation (GTK+ GUI) [disable]
图形界面要这个关闭了的 一会选上打开
–enable-gtk1 force using GTK 1.2 for the GUI [disable]
GTK1.2不要他不选
–enable-largefiles enable support for files > 2GB [disable]
这个也要
–enable-linux-devfs set default devices to devfs [disable]
–enable-termcap use termcap database for key codes [autodetect]
–enable-termios use termios database for key codes [autodetect]
这种[autodetect]自动动根据你的系统有无配置不管他
–disable-iconv disable iconv for encoding conversion [autodetect]
–disable-langinfo do not use langinfo [autodetect]
–enable-lirc enable LIRC (remote control) support [autodetect]
–enable-lircc enable LIRCCD (LIRC client daemon) input [autodetect]
上面的还有一部份没贴,该要的都自动打开了的不管他。

–charset=charset convert the console messages to this character set
这个是设编码的,gtk2的一般不用管他
–language=list a white space or comma separated list of languages for
translated man pages, the first language is used for
messages and the GUI (the environment variable
$LINGUAS is also honored) [en]
(Available: bg cs de dk el en es fr hu it ja ko mk nb nl pl ro ru
sk sv tr uk pt_BR zh_CN zh_TW all)
语言选项:默认英语,你懂那国语言就选哪个国语,我懂中文;我就选 zh_CN

下面这一部份是相依赖的,如果在./configure过程说没找到,但你确信你装了的。你就得给他指路径。我的X之类就没找到;如下请看:
–extra-libs=FLAGS extra linker flags
–extra-libs-mplayer=FLAGS extra linker flags for MPlayer
–extra-libs-mencoder=FLAGS extra linker flags for MEncoder
–with-extraincdir=DIR extra header search paths in DIR (*)
这个头文件找不到,我就得在./configure (加上) –with-extraincdir=/usr/X11R7/include/
–with-extralibdir=DIR extra linker search paths in DIR (*)
库文件也找不到 又得加上 –with-extralibdir=/usr/X11R7/lib
–with-xvmclib=NAME adapter-specific library name (e.g. XvMCNVIDIA)

–with-freetype-config=PATH path to freetype-config
–with-fribidi-config=PATH path to fribidi-config
–with-glib-config=PATH path to glib*-config
–with-gtk-config=PATH path to gtk*-config
–with-sdl-config=PATH path to sdl*-config
–with-dvdnav-config=PATH path to dvdnav-config
我已说明两个例子,如过你在./configure过程中不过。提什么没找到。如果你没装就得装上,如果你确信装了的,也有可能没找到路径。在./configure 后面加上相应参数指明路径就行了。


根据我刚才上面总体情况给出一个最普遍的configure的例子,如下执行:./configure –prefix=/opt/mp –enable-gui –enable-largefiles \
–language=zh_CN –confdir=/etc/mplayer –codecsdir=/opt/mp/lib/codecs \
–win32codecsdir=/opt/mp/lib/codecs –xanimcodecsdir=/opt/mp/lib/codecs \
–realcodecsdir=/opt/mp/lib/codecs


最后结果大体如下,请检查一下看是不是自已想要的环境。如果不是重新在./configure 加好你的参数:我cp上面执行结果:

Config files successfully generated by ./configure !

Install prefix: /opt/mp
Data directory: /opt/mp/share/mplayer
Config direct.: /etc/mplayer

Byte order: little-endian
Optimizing for: pentium4 mmx mmxext sse sse2 cmov mtrr

Languages:
Messages/GUI: zh_CN 语言部份
Manual pages: en

Enabled optional drivers:
Input: ftp network pvr tv-v4l2 tv-v4l tv libdvdcss dvdread vcd dvb
Codecs: qtx libavcodec real xanim win32 faad2 libmpeg2 liba52 mp3lib tremor(internal)
Audio output: alsa esd oss sdl mpegpes(dvb)
Video output: xvidix cvidix md5sum sdl pnm jpeg png mpegpes(dvb) fbdev opengl dga xv
x11 xover tga 支持的解码以及一些设备。
Audio filters:
Disabled optional drivers:
Input: vstream radio live555 cddb cdda dvdnav smb
Codecs: x264 xvid libdv amr_wb amr_nb faac musepack libdts libtheora speex toolame
twolame libmad liblzo gif
Audio output: sun openal jack polyp arts ivtv dxr2 nas
Video output: winvidix bl zr zr2 ivtv dxr3 dxr2 vesa gif89a svga caca aa ggi xmga mga
xvmc dfbmga directfb tdfx_vid s3fb tdfxfb 3dfx
Audio filters: ladspa


‘config.h’ and ‘config.mak’ contain your configuration options.

Note: If you alter theses files (for instance CFLAGS) MPlayer may no longer
compile *** DO NOT REPORT BUGS if you tweak these files ***


‘make’ will now compile MPlayer and ‘make install’ will install it.

Note: On non-Linux systems you might need to use ‘gmake’ instead of ‘make’.

Please check mtrr settings at /proc/mtrr (see DOCS/HTML/zh_CN/video.html#mtrr)

Check configure.log if you wonder why an autodetection failed (make sure
development headers/packages are installed).

NOTE: The –enable-* parameters unconditionally force options on, completely
skipping autodetection. This behavior is unlike what you may be used to from
autoconf-based configure scripts that can decide to override you. This greater
level of control comes at a price. You may have to provide the correct compiler
and linker flags yourself.
If you used one of these options (except –enable-gui and similar ones that
turn on internal features) and experience a compilation or linking failure,
make sure you have passed the necessary compiler/linker flags to configure.

If you suspect a bug, please read DOCS/HTML/zh_CN/bugreports.html.


自已看你的输出,不要看这上面的:确定无误,执行:make && make install

好了,make install执行会ldconfig的,为了稳当,再执行一次ldconfig.

最后还有几步就完了:

install -v -m755 -d /opt/mp/share/doc/mplayer-checkout-2007-01-28 (后面的号数改成你的对应的)
cp -v -R DOCS/* /opt/mp/share/doc/mplayer-checkout-2007-01-28
ln -v -s libdha.so.1.0 /opt/mp/lib/libdha.so
install -m644 etc/codecs.conf /etc/mplayer
install -m644 etc/*.conf /etc/mplayer
echo “dev.rtc.max-user-freq=1024” >> /etc/sysctl.conf

好了做个字体链接找下你的字体在哪里,一般都如/usr/share/fonts随便找一个
ln -s /usr/share/fonts/TTF/luximb.ttf /opt/mp/share/mplayer/font/luximb.ttf
你自已找一个你喜欢的字体。然后进mplayer设置界面去选这个/opt/mp/share/mplayer/font/luximb.ttf

这下总算完了,打开菜单 应用程序-影音-mplayer (如果没有注消X再登进来。还没有就先用命令运行下gmplayer)


调试部份:说个例子

如果播放rm , rmvb,弹出:错误:打不开所需的DirectShow 编解码器:drvc.so ,但能放,为了消去这讨厌的东东你可以执行如下(如下操作好像不管用啊,俺的系统是有libstdc++.so.5的,但是既然不影响播放,姑且放过吧):
cd /opt/mp/lib/codecs
ldd drvc.so
输出结果:
linux-gate.so.1 => (0xffffe000)
libstdc++.so.5 => not found 这个libstdc++.so.5没找到
libc.so.6 => /lib/libc.so.6 (0xb7dd1000)
/lib/ld-linux.so.2 (0x80000000)
你得去网上找过或从其它系统cp libstdc++.so.5.0.6 到/usr/lib
然后 ln -s libstdc++.so.5.0.6 libstdc++.so.5 再执行ldconfig
这下执行就不会弹这个框了,这只是一个例子。具体情况具体办。
如果弹出Not audio/video stream or unsupported! 这个框要修改一下源码再编译就不会有这个框了,再此不做讨论。反正不影响播放,按下硧定就完了。
试试进度条rm rmvb格式也能拖动了,不用键盘上的方向键操作了。

赞(0) 打赏
转载请注明出处:服务器评测 » 安装编译最新mplayer 解决很多BUG
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏