2007年2月12日星期一

linux下 MPlayer使用手册


MPlayer 是我在 Linux 系统中用到的相当好的媒体播放程序,它因支持播放广泛的音/视频文件格式而著称。本文所要探讨的,除却一般的使用方法之外,更包括一些鲜为人知的提示和诀窍。相信在阅读此文后,你的多媒体播放体验将会增色不少。

播放文件

使用 MPlayer 播放媒体文件最简单的方式是:
mplayer <somefile>

MPlayer 会自动检测文件的类型并加以播放,如果是音频文件,则会在命令行中显示该播放文件的状态信息;而假如是视频文件的话,则会打开一个新的播放窗口。

倒退与快进

在播放文件的时候,你可以通过以下三组快捷键来对播放进程进行倒退与快进操作:

* 左方向键和右方向键:分别执行倒退 10 秒和快进 10 秒操作
* 下方向键和上方向键:分别执行倒退 1 分钟和快进 1 分钟操作
* 下翻页键和上翻页键:分别执行倒退 10 分钟和快进 10 分钟操作

播放 DVD

虽然 MPlayer 不支持 DVD 菜单,但是却能够播放 DVD。你可以这样播放 DVD:
mplayer dvd://<titlenumber>

你需要使用实际的数字来替换 <titlenumber>,如 1、2、3 等。

使用字幕

当播放电影文件时,你可以指定字幕文件:
mplayer -sub <somesubtitlefile> <somefile>

在播放 DVD 电影时,你也可以通过指定语言代码来使用字幕:
mplayer dvd://<titlenumber> -slang nl,en

这样,MPlayer 就会优先使用荷兰语字幕,如果该语言不可用,则再使用英语字幕。

有用的快捷键

以下是 MPlayer 中一些有用的快捷键:

* f-当播放视频时,在全屏和窗口模式之间切换。你也可以在命令行中使用 -fs 选项,以便让 MPlayer 开始在全屏模式中播放。
* o-在播放视频时切换 OSD(OnScreen Display)模式。
* p 或 Space-暂停/继续播放。
* q 或 Esc-退出 MPlayer。在 GUI 模式时,Esc 不会退出,仅停止播放。
* / 和 * 或 9 和 0-减小或增大音量。
* m-静音切换。
* T(通常是 Shift + t)-播放窗口置顶切换。
* b 和 j-在可用的字幕间循环。
* x 和 z-调整字幕的延迟时间。
* I(Shift + i)-显示播放电影的文件名称。
* 1 和 2-调整对比度。
* 3 和 4-调整亮度。
* 5 和 6-调整色度。
* 7 和 8-调整饱和度。


官方的快捷键大全:

<− 和 −> (左右光标键)------------后退/ 快进 10 秒。
up 和 down(上下光标键)-----------快进/ 后退 1 分。
pgup 和 pgdown(翻页键)---------快进/ 后退 10 分。
[ 和 ]------------------------------------减少/增加当前回放速度 10%。
{ 和 }------------------------------------减半/加倍当前回放速度。
backspace(退格键)-----------------重置正常回放速度.
< 和 >----------------------------------在播放列表中后退/ 快进。
ENTER(回车键)---------------------在播放列表中快进, 甚至越过末尾。
HOME 和 END------------------------下一个/ 前一个父列表中的播放树项。
INS 和 DEL (仅用于 ASX 播放列表)----下一个/ 前一个供选择的源。
p / SPACE------------------------------暂停 (再按取消暂停)。
. --------------------------------步进。按一下暂停回放, 每按一下就播放一帧(直到按其它键取消步进)。
q / ESC----------------------------------停止播放和退出。
+ 和 - -----------------------------------调整音频延迟增加/减少 0.1 秒。
/ 和 * -----------------------------------降低/ 提高音量。
9 和 0 -----------------------------------降低/ 提高音量。
m -----------------------------------静音。
_ (仅用于 MPEG-TS)---------------------循环可用的像轨。
# (仅用于 MPEG 和 Matroska)----------循环可用的音轨。
TAB (仅用于 MPEG-TS)-------------------循环可用的节目。
f ----------------------------------------切换全屏 (也请参见 −fs)。
T ----------------------------------------切换顶置 (也请参见 −ontop)。
w 和 e--------------------------------------降低/ 提高摇移范围。
o ---------------------------------------循环 OSD 状态: 无 / 搜索条 / 搜索条 + 计时器 / 搜索条 + 计时器 + 总时间。
d ---------------------------------------循环丢帧状态: 无 / 跳过显示 / 跳过解码。 (请参见 −framedrop 和 −hardframedrop)。
v --------------------------------------切换显示字幕。
j -------------------------------------循环可用的字幕。
y 和 g-----------------------------------在字幕列表中步进/步退。
F -------------------------------------切换显示 "锁定的字幕"。
a -------------------------------------切换对齐字幕: 上 / 中 / 下。
x 和 z----------------------------------调整字幕延迟增加/减少 0.1 秒。
r 和 t----------------------------------上/下调整字幕位置。
i (仅用于 −edlout 模式)---------------设置 EDL 的开头或末尾并写入指定的文件。
s (仅用于 −vf 截屏)----------------------截屏。
S (仅用于 −vf 截屏)---------------------开始/停止截屏。
I ----------------------------------用 OSD 显示文件名。
! 和 @----------------------------------寻到前一章节/后一章节的开始处。
D (仅用于 −vo xvmc)------------------激活/撤销去交错。


(以下的按键仅适用于硬件加速视频输出(xv, (x)vidix, (x)mga, 等), 软件均衡器(−vf eq or −vf eq2), 或者色调过滤器(−vf hue)。)

1 和 2----------------------------------调整对比度。
3 和 4----------------------------------调整亮度。
5 和 6----------------------------------调整色调。
7 和 8----------------------------------调整饱和度。

(以下的按键仅适用于 quartz or macosx 视频输出驱动。)

command + 0----------------------------------半尺寸。
command + 1----------------------------------原始尺寸。
command + 2----------------------------------双倍尺寸。
command + f----------------------------------切换全屏 (也请参见 −fs)。
command + [ 和 command + ]---------------设置窗口的 alpha。

(以下的按键仅适用于 sdl 视频输出驱动。)

c ----------------------------------切换可用的全屏模式。
n ----------------------------------原始尺寸。

(以下的按键仅适用于多媒体键盘。)

PAUSE----------------------------------暂停。
STOP----------------------------------停止并退出。
PREVIOUS 和 NEXT-------------------后退/ 快进 1 分。

(以下的按键仅适用于已编译支持 GUI 并优先于以前的定义。)

ENTER----------------------------------开始播放。
ESC----------------------------------停止播放。
l ----------------------------------加载文件。
t ----------------------------------加载字幕。
c ----------------------------------打开皮肤浏览器。
p ----------------------------------打开播放列表。
r ----------------------------------打开首选项。

(以下的按键仅适用于已编译支持 TV 或 DVB 的输入并优先于以前的定义。)

h 和 k----------------------------------选择上一个/ 下一个频道。
n ----------------------------------改变制式。
u ----------------------------------改变频道列表。

(以下的按键仅适用于已编译支持 dvdnav: 用于导航菜单)

keypad 8----------------------------------选择上。
keypad 2----------------------------------选择下。
keypad 4----------------------------------选择左。
keypad 6----------------------------------选择右。
keypad 5----------------------------------返回主菜单。
keypad 7----------------------------------返回最近的菜单(先后次序是: 章节->标题->根)。
keypad ENTER----------------------------确定。

鼠标控制

button 3 和 button 4----------------------------------后退/ 快进 1 分。
button 5 和 button 6----------------------------------降低/ 提高音量。

操纵杆

left 和 right----------------------------------后退/ 快进 10 秒。
up 和 down----------------------------------快进/ 后退 1 分。
button 1----------------------------------暂停。
button 2----------------------------------循环 OSD 状态: 无 / 搜索条 / 搜索条 + 计时器 / 搜索条 + 计时器 + 总时间。
button 3 和 button 4----------------------------------降低/ 提高音量。

生成索引

有时候,有些视频文件(主要是 AVI 文件)包含损坏的索引,或者根本就没有索引。这种情况通常是由下载文件不正确或未完成造成的。幸运的是,MPlayer 能够生成正常播放文件所需的索引。通过使用 -idx 选项,你可以告诉 MPlayer 来生成索引:
mplayer -idx <somefile>

有时候文件虽然包含索引,但却已损坏。那样的情况,你可能需要 MPlayer 强制生成索引:
mplayer -forceidx <somefile>

根据视频文件的大小,生成索引需花费一定的时间。但在此后,文件应该能够正常播放。

纠正错误的音频/视频同步

有些视频文件(主要是 flv 文件)由于编码的问题,会给 MPlayer 带来音频/视频同步的麻烦。这有两种可能情况:

* MPlayer 会尝试修复,但同步问题却更遭。
* MPlayer 会尝试修复那些正确的,因此没有必要同步。

对于第一种情况,你应当让 MPlayer 努力修复同步问题:
mplayer -autosync 30 -mc 2.0 <somefile>

而对于第二种情况,你不应当允许 MPlayer 去修复同步问题:
mplayer -autosync 0 -mc 0 <somefile>

将上述命令中的 autosync 设置为正值就会让 MPlayer 逐渐调整音频/视频的同步。值越高,MPlayer 越快地修复它。mc 选项指定 MPlayer 纠正每帧要多少秒。值越高,MPlayer 越认为接近修复音频/视频同步。设置为 0 则阻止 MPlayer 修复。

在慢系统上使用 MPlayer

MPlayer 允许在旧的或慢的系统上使用低 CPU 功率来播放视频文件。你可以使用 -framedrop 选项:
mplayer -framedrop <somefile>

当播放 MP3 或 OGG Vorbis 文件时,你可能感受到一定的缓冲,这将影响你的音乐体验。那样的话,你可以尝试使用 libmad(MP3)或 Tremor(OGG Vorbis)音频解码器。你可以这样来检测它们:

对于 MP3:
mplayer -ac help | grep mad

如果上面的命令返回的结果像这样:
mad libmad working libMAD MPEG layer 1-2-3 [libmad]

那么你可以使用 libmad 播放 MP3:
mplayer -ac mad <somefile>

在 OGG 的情况中,你可以使用同样的技巧来检测 tremor 音频解码器是否可用:
mplayer -ac help | grep tremor

播放流媒体

如果 MPlayer 无法自动找到播放列表或直接的流媒体文件,你可以尝试使用 -playlist 选项:
mplayer -playlist <file or url>

同时你也可以设置较大的缓存:
mplayer -cache 8192 -playlist <file or url>

指定缓存大小的单位是 KB,上面的命令将允许 MPlayer 使用 8 MB 缓存。你可以使用 -cache-min 选项来改变 MPlayer 占用缓存的百分比:
mplayer -cache 8192 -cache-min 50 -playlist <file or url>

循环播放

如果你想让媒体文件循环播放,可以使用 -loop 选项:
mplayer -loop 3 <somefile>

上面的命令将播放 <somefile> 3 次,然后才退出。
mplayer -loop 0 <somefile>

上面的命令将永远重复播放 <somefile>。

改变播放速度

你可以使用 -speed 选项来改变 MPlayer 播放媒体文件的速度。值为 1.0,意味着正常速度;0.5 意味着慢两倍;2.0 意味着快两倍。像这样指定选项:
mplayer -speed 2.0 <somefile>

改变采样率

使用 -srate 选项你可以改变 MPlayer 输出的采样率:
mplayer -srate 48000 <somefile>

将音频输出为 wav 文件

你可以将视频文件中的音频部分输出为 wav 文件:
mplayer -ao pcm <somefile>

这将输出名为 audiodump.wav 的音频文件。你也可以为输出的 wav 文件指定名称:
mplayer -ao pcm:file=<filename>.wav <somefile>

使用 ASCII 方式观看电影

虽然无用,但却很好玩。有两个库文件支持该特性:aa 和 caca。使用 libaa,你只能在黑白 ASCII 中观看电影。而 libcaca 支持色彩。然而,libaa 支持更广泛。你可以像这样使用 libaa 观看电影:
mplayer -vo aa <somefile>

如果你想使用 libcaca:
mplayer -vo caca <somefile>

将电影输出为系列图片

MPlayer 也能将电影输出为一系列的图片:
mplayer -vo jpeg <somefile>

注意:上面的命令将产生数量巨大的 jpeg 文件。输出的 jpeg 文件名看起来像这样:00000001.jpg、00000002.jpg、00000003.jpg 等等。

你也可以输出其他的格式。只需将命令中的 jpeg 替换成 ppm、png、tga 等。

指定纵横比

当你在宽屏中播放电影时,可能想要使用 16:9 的纵横比:
mplayer -aspect 16:9 <somefile>

在非宽屏中,你可以使用 4:3 的纵横比。

将选项放置到 MPlayer 的配置文件中

对于一般用户来说,该配置文件位于 ~/.mplayer/config;全局的配置文件在 /etc/mplayer/config。不同的值使用行分隔

                              转载:linux下 MPlayer使用手册


一般的都是在”Preferences“中设置,打开方式:在mplayer的窗口(Video窗口或播放控制窗口均可)上点右键,选择“Preferences”,就可以打开了(当然要注意警告点OK后才能进)。
1、vo(Video Output)
这是最重要的设置,如果设置不对,即使你已经按设置指南安装了各个包,也无法正常观看,最常见的错误就是:“ Error opening/initializing the selected video_out(-vo) device.”
设置这个选项, 在mplayer的窗口(Video窗口或播放控制窗口均可)上点右键,选择“Preferences”,打开后(当然要注意提示点OK后才能进)选择上 面的“Video”标签页,在上面的驱动里面选一个,比如最常见的就是“xv”。如果不适合你的情况,可以自己多试试,选其它的驱动。注意:每改变一次都 要重新启动一次mplayer才能见效。

2、ao(Audio Output)

这是设置声音的驱动,如果设置不对,会出现在播放wmv、rmvb等格式时声音卡或画面一顿一顿的。
基本操作同上,但打开的标签页改成“Audio”。比如我的原来设置为alsa时就出现上面的毛病,后来我换成sdl的就没问题了。(只针对 dapper源里的版本,不包括1.0rc1,在1.0rc1中好像用alsa就行,再说,我这只是根据我的机器这样)同样,也是根据自己情况设置就行。

3、声音与图像不同步

我没有遇到这个问题,但看到有的帖子里说,把“Video”标签页的“Enable frame Dropping"(允许丢帧)勾选就可以解决。

4、图像翻转

好像也有人遇到这种问题,解决办法:把“Video”标签页的“flip image upside down"(图像翻转)的勾选去掉就可以解决。如果你的设置原来没有勾选却出现图像翻转,那就再勾选它。

5、播放DVD或VCD

在6.06里面,DVD的位置好像并不是/dev/dvd了,至少我的机器如此。所以我直接将”Misc“标签页的DVD Device(DVD设备)这里改为“/media/cdrom"(没有引号),下面的VCD Device也一样。这样,在放入DVD(或VCD)时,直接在mplayer的右键菜单中选择”DVD->Open disc"(或”VCD->Open disc")就可以播放影碟了。(DVD我试过,没问题。)

ps:这里的/media/cdrom就是机器上的光驱,可以在终端下以“

代码:
ls -l /media
"的命令查看。如果你有多个光驱,根据自己的情况来。
或者直接用命令
代码:
sudo ln -s /media/cdrom0 /dev/dvd
将光驱指向mplayer默认的dvd位置(该操作是针对DVD,如果是给vcd做符号链结,就用
代码:
sudo ln -s /media/cdrom0 /dev/cdrom
)。注意这两种方法只能二先一,不要一起用。
应该可以直接播放插入的光盘的,可是我在”系统“->"首选项”->”可移动驱动器和介质“的“多媒体”标签页中将DVD影碟项的totem %m改为
代码:
gmplayer -menu dvd://1
就行了。

相关配置文件及位置:
FILES (文件)


/usr/local/etc/mplayer/mplayer.conf


MPlayer 范围的设置


/usr/local/etc/mplayer/mencoder.conf


MEncoder 范围的设置


~/.mplayer/config


MPlayer 用户设置


~/.mplayer/mencoder.conf


MEncoder 用户设置


~/.mplayer/input.conf


输入绑定 (按键的完整列表请参见 "−input keylist" 的输出)


~/.mplayer/gui.conf


GUI 配置文件


~/.mplayer/gui.pl


GUI 播放列表


~/.mplayer/font/


字体目录 (里面必须有一个 font.desc 文件和带 .RAW 后缀的文件。)


~/.mplayer/DVDkeys/


缓存的 CSS 钥匙


假如播放文件是 /path/to/movie.avi, MPlayer 按以下顺序搜索字幕文件:


/path/to/movie.sub
~/.mplayer/sub/movie.sub

technorati tags:

没有评论: