LinuxSir.cn,穿越时空的Linuxsir!

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

mplayer 配置使用总结(自己留个脚印)

[复制链接]
发表于 2007-11-3 01:57:49 | 显示全部楼层 |阅读模式
以下内容没有在gmplayer等其他mplayer外壳下测试过。
我的系统用的zh_CN.UTF-8环境,如果您用的其他字符编码环境,可能需要做些调整 :ask

一、相关配置文件
1、mplayer自身的配置文件
$HOME/.mplayer/config 文件的内容

  1. # Write your default config options here!
  2. #alias mplayer='mplayer -stop-xscreensaver -zoom -vo gl2'
  3. unicode=1
  4. slang=zh
  5. stop-xscreensaver=1
  6. zoom=1
  7. #if your graphic card support opengl , you can use vo=gl2
  8. vo=xv
  9. ao=alsa
  10. ontop=1
  11. #good exclude H264 Video codec
  12. vf=expand=:::::4/3:2
  13. fs=1

  14. subcp=cp936
  15. #subcp=utf-8
  16. font=SimHei
  17. ass=1
  18. ass-styles= $HOME/.mplayer/my.ass
  19. # use up style file no need this scale param
  20. #ass-font-scale=2.5
复制代码


2、字幕样式配置
$HOME/.mplayer/my.ass 的字幕格式设置内容如下([color="Blue"]这里说明一下为什么用ssa字幕格式设置文件,因为我发现使用了ssa的字幕格式文件设置后,srt和ssa的字幕都可以又mplayer自动进行换行处理。注意,如果你下载的字幕的文件扩展名是ass,不是ssa,请修改为ssa,否则字幕无法加载)

  1. [Script Info]
  2. ScriptType:v4.00+

  3. [V4+ Styles]
  4. Format: Name    , Fontname, Fontsize,   PrimaryColour,  SecondaryColour,    OutlineColour,  BackColour, Bold,   Italic, Underline,  StrikeOut,  ScaleX, ScaleY, Spacing,    Angle,  BorderStyle,    Outline,    Shadow, Alignment,  MarginL,    MarginR,    MarginV,    Encoding
  5. Style:  Default , SimHei,   20,         &H00FFFFFF,     &HF0000000,         &H00000000,     &HF0000000, 0,      0,      0,          0,          100,    100,    0,          0.00,   1,              1,          0,      2,          30,         30,         10,         1
复制代码


二、字幕和电影的配合使用说明


1、按照我上面的设置,字幕的字符集必需是gb2312或者gbk。其他字符集的需要将srt字幕文件的编码格式进行转换。
2、如果希望字幕自动加载需要将字幕的文件名和电影的文件名一致,[color="Red"]除了扩展名外
3、经过这样设置后,请直接使用mplayer命令,或者将文件类型的打开方式选择使用mplayer,而不要使用gmplayer,(因为我没有怎么用gmplayer,不知有其他问题没有 ;))

三、mplayer 的常用功能的命令

1、音量调整
9=减小 0=增加

2、全屏开关
f

3、退出
<Esc> 或者 q

4、字幕和视频的配合
z 推迟字幕显示
x 加速字幕显示

四、常见媒体播放问题

1、字幕乱码
应该是你没有转换字符集的问题。
常用的转换命令:
iconv -fbig5 -tgb2312 xxx.srt > yyy.srt  (这个转换有时会因为有些字符转换失败导致无法生成完整的yyy.srt字幕,注意转换后如果有报错,这时需要你修改一下xxx.srt字幕的那个出错的行的相关文字。闲麻烦可以用下面的命令,只不过你看的字体都是繁体就是了。)
iconv -fbig5 -tcp936   xxx.srt > yyy.srt

2、字幕不显示
分2种常见情况,
1) 一个是srt字幕用vim打开,发现格式中的“ --> ”和下一行的字幕内容中间多了空行
如下:
  1. 1
  2. 00:01:14,500 --> 00:01:19,460

  3. 片名:情书

  4. 2
  5. 00:02:57,603 --> 00:03:01,562

  6. 今天在百忙之中
复制代码



a)如果是这个情况,vim可以直接解决,请输入如下命令:

  1. :%g/-->/j
复制代码


b)结果应该是下面的样子:

  1. 1
  2. 00:01:14,500 --> 00:01:19,460
  3. 片名:情书

  4. 2
  5. 00:02:57,603 --> 00:03:01,562
  6. 今天在百忙之中
复制代码


c) 保存退出就ok了。

  1. :w
复制代码


2)vim打开,发现格式很正常
这时最大的可能就是字幕文件含有大量的"\0"字符。这些字符看不见,但会影响字幕的解析,程序员知道这个"\0"是结束的标志。
怎么删除?
我的一个笨办法:
a)用vim打开,输入命令
  1. ggVGy
复制代码

这样就把所有的有效字幕内容拷贝了
b)不关闭vim,直接建立一个新文件
  1. :new
复制代码

c)下面将这些内容贴到新文件中
  1. p
复制代码

d)注意这时需要设置一下字幕文件的编码
  1. :set fileencoding=cp936
复制代码

e)保存为文件xxx
  1. :w xxx
复制代码


这时你可以 ls -l 看看两个字幕文件是否大小不一样了。  如果新文件明显小了那么说明你搞定了     如果没有变化,那么我就真的:sorry
发表于 2007-11-3 09:19:15 | 显示全部楼层
好贴,收藏了
回复 支持 反对

使用道具 举报

发表于 2007-11-3 10:05:20 | 显示全部楼层
好,顶一下!
回复 支持 反对

使用道具 举报

发表于 2007-11-3 11:24:14 | 显示全部楼层
debian下用mplayer(gmplayer)播放sub字幕,总是说“can not load subtitles:xxx.sub”,但是其实是加载了,这事很憋人,郁闷!
还有mplayer能否变成中文界面么?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-11-3 19:34:19 | 显示全部楼层
中文界面的问题我也没有用到过,而且后来都是用命令行完成,就没有再关注中文问题 ;)
回复 支持 反对

使用道具 举报

发表于 2007-11-4 09:30:48 | 显示全部楼层
中文界面倒是无所谓了,mplayer的字幕加载,说句实话,是远远不如vlc来得人性,所以我一般都是用vlc来播放的。
回复 支持 反对

使用道具 举报

发表于 2007-11-4 09:42:04 | 显示全部楼层
字幕好像不能调整语言
回复 支持 反对

使用道具 举报

发表于 2007-11-5 23:20:21 | 显示全部楼层
很实用的贴子,收藏了。
回复 支持 反对

使用道具 举报

发表于 2007-11-7 02:06:42 | 显示全部楼层
实用,收藏了
回复 支持 反对

使用道具 举报

发表于 2007-11-7 20:12:38 | 显示全部楼层
收藏~~这个帖子不错~~以后肯定能用得着
回复 支持 反对

使用道具 举报

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

本版积分规则

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