LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2844|回复: 3

mplayer 1.0pre8安装手记(gb2312,gbk,gb18030编码下完美中文支持,流媒体及firefox集成

[复制链接]
发表于 2006-7-28 12:35:08 | 显示全部楼层 |阅读模式
1.安装mplayer相关库,下载http://www4.mplayerhq.hu/MPlayer ... ll-20060611.tar.bz2 解开放在/usr/lib/codecs下面
2.安装live555
下载最新http://www.live555.com/liveMedia/public/live.2006.07.04.tar.gz
解开
cd live
运行
./genMakefiles  linux
make
cd ..
mv live /usr/lib
3.安装mplayer
下载最新
http://www4.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre8.tar.bz2
下载补丁见附件(谢谢此补丁的作者,不过现在我不记得是哪里找的了)
tar jxvf MPlayer-1.0pre8.tar.bz2
假设patch文件也放在当前目录
cd MPlayer-1.0pre8/
patch -Np1 < ../mplayer-1.0.20060415-cjk.patch
但是作者的这个补丁对osd字幕不起作用,而且在gb2312,gbk,gb18030编码下面不能正常现实,在此我们手动替换成英文osd字幕,看截图三
cd help
用mplayer_mp-en.h中的这部分替换掉help_mp-zh_CN.h对应部分(请编辑help_mp-zh_CN.h文件之前将终端编码改成UTF8,export LANG=zh_CN.UTF-8 即可)。
// mplayer.c OSD
/* -------------------------------------------------------------------------- */
#define MSGTR_OSDenabled "enabled"
#define MSGTR_OSDdisabled "disabled"
#define MSGTR_OSDChannel "Channel: %s"
#define MSGTR_OSDSubDelay "Sub delay: %d ms"
#define MSGTR_OSDSpeed "Speed: x %6.2f"
#define MSGTR_OSDosd "OSD: %s"

// property values
#define MSGTR_Enabled "enabled"
#define MSGTR_EnabledEdl "enabled (EDL)"
#define MSGTR_Disabled "disabled"
#define MSGTR_HardFrameDrop "hard"
#define MSGTR_Unknown "unknown"
#define MSGTR_Bottom "bottom"
#define MSGTR_Center "center"
#define MSGTR_Top "top"

// osd bar names
#define MSGTR_Volume "Volume"
#define MSGTR_Panscan "anscan"
#define MSGTR_Gamma "Gamma"
#define MSGTR_Brightness "Brightness"
#define MSGTR_Contrast "Contrast"
#define MSGTR_Saturation "Saturation"
#define MSGTR_Hue "Hue"

// property state
#define MSGTR_MuteStatus "Mute: %s"
#define MSGTR_AVDelayStatus "A-V delay: %s"
#define MSGTR_OnTopStatus "Stay on top: %s"
#define MSGTR_RootwinStatus "Rootwin: %s"
#define MSGTR_BorderStatus "Border: %s"
#define MSGTR_FramedroppingStatus "Framedropping: %s"
#define MSGTR_VSyncStatus "VSync: %s"
#define MSGTR_SubSelectStatus "Subtitles: %s"
#define MSGTR_SubPosStatus "Sub position: %s/100"
#define MSGTR_SubAlignStatus "Sub alignment: %s"
#define MSGTR_SubDelayStatus "Sub delay: %s"
#define MSGTR_SubVisibleStatus "Subtitles: %s"
#define MSGTR_SubForcedOnlyStatus "Forced sub only: %s"
/* ------------------------------------------------------------------------ */

这里本人将mplayer安装在/opt下面,且还安装了lame, bio2jack, faad2, xvidcore 等在/opt目录下面如果你觉得可能不需要可以去掉相应的选项(如: ./configure --prefix=/opt/mplayer --enable-gui --enable-largefiles  --enable-menu  --language=zh_CN,zh_TW,en )
LDFLAGS="-L/opt/lame/lib -L/opt/bio2jack/lib -L/opt/faad2/lib" CPPFLAGS="-I/opt/lame/include -I/opt/bio2jack/include -I/opt/faad2/include"  ./configure --prefix=/opt/mplayer --enable-gui --enable-largefiles  --enable-menu  --language=zh_CN,zh_TW,en  --with-xvidlibdir=/opt/xvidcore/lib --with-xvidincdir=/opt/xvidcore/include
make
make install
完成安装
4.配置环境
debian系统中建议在/etc/environment加入如下两行
G_FILENAME_ENCODING=GBK
G_BROKEN_FILENAMES=1
并配置好mplayer路径的环境变量,
现在一个皮肤包解开在/opt/mplayer/share/mplayer/skins/下面兵连接到default
在此我用的是http://www4.mplayerhq.hu/MPlayer/skins/Blue-1.6.tar.bz2
cd /opt/mplayer/share/mplayer/skins/
ln -s Blue default
mplayer运行一次然后应该会被提示缺少subfont.ttf 自己建立连接即可
这是我的操作
ln -s /usr/lib/X11/fonts/microsoft/simhei.ttf ~/.mplayer/subfont.ttf
至此完成mplayer的安装

5.安装 mplayerplug-in-3.25支持firefox
http://jaist.dl.sourceforge.net/ ... plug-in-3.25.tar.gz
ftp://ftp.mozilla.org/pub/mozill ... k2+xft-1.8b1.tar.gz
下载1.8b1是为了可以支持gtk2和xft
解压geck-sdk到/opt
./configure --with-gecko-sdk=/opt/gecko-sdk --enable-gtk2
make
cp *.so *.xpt /your/firefox/plugings/path/

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2006-7-28 12:39:10 | 显示全部楼层
请在mplayer 的配置文件中使用正确的配置显示和声音输出的默认配置适合你的系统,否则可能导致firefox中不能播放。
以下为我在~/.mplayer/config的内容
# The next 4 lines allow mencoder tv:// to start capturing immediately.
# more complex default encoding option set
ao=esd
vo=xv



注:至此对于安装scopcast,gsopcast看p2p电视电影相对简单不再介绍。
回复 支持 反对

使用道具 举报

发表于 2006-7-28 13:40:46 | 显示全部楼层
mplayer - powerful yet awkward
回复 支持 反对

使用道具 举报

发表于 2006-7-28 14:21:56 | 显示全部楼层
对于不想用utf8 locale的人来说相当必要。

当然,如果使用utf8 locale,那么只要在官方mplayer configure的时候加上--charset=utf8就行了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表