slave模式协议
在关于slave模式,MPlayer为后台运行其他程序。不再截获键盘事件,MPlayer会从标准输入读一个换行符(/n)分隔开的命令。
要动手尝试slave模式,运行
mplayer -slave -quiet
并在控制台窗口输入slave命令。
您也可以使用一个fifo文件(命名管道):
1 | mkfifo </tmp/fifofile> |
大多数slave模式命令相当于命令行选项,但并非一定要在相同的名称。详细说明中可以在手册中找到
所有命令都可以以前缀“pausing”,“pausing_keep”,或“pausing_toggle”为前缀。“pausing”告诉MPlayer暂停尽快正在处理的命令。 “pausing_keep”告诉MPlayer暂定保持只要它已在暂停模式。“pausing_toggle”告诉MPlayer暂定保持只要它尚未暂停模式。请注意,“尽可能“可以在命令完全执行之前。 作为一项临时黑客,也有个实验性“pausing_keep_force”前缀,与之MPlayer不退出了所有的暂停循环。 这样你能避免“frame stepping”由于“pausing_keep”的影响。但大多数命令将要么不执行或是按照令人意外的方式。 对于“set_mouse_pos”和“key_down_event”,“pausing_keep_force”是默认 因为其他值不为他们作出多大的意义。
各种提示和技巧(帮助扩展!):
- 尝试使用例如 pausing_keep_force pt_step 1 get_property pause 切换到下一个文件。它避免在转换到新的音频文件之前旧文件播放一小段时间
可用的命令('mplayer -input cmdlist的'会打印出一份清单):
alt_src_step
audio_delay
[brightness|contrast|gamma|hue|saturation]
change_rectangle
dvb_set_channel
dvdnav
edl_mark 将当前位置写入EDL文件。
frame_drop [value] 切换/设置帧的模式。
get_audio_bitrate 打印出当前文件音频比特率。
get_audio_codec 打印出的音频当前文件的编解码器的名称。
get_audio_samples 打印出的音频和当前文件的声道数。
get_file_name 打印出当前文件名。
get_meta_album 打印出当前文件的'专辑'的元数据。
get_meta_artist 打印出当前文件的'艺术家'的元数据。
get_meta_comment 打印出当前文件的'评论'的元数据。
get_meta_genre 打印出当前文件的'流派'的元数据。
get_meta_title 打印出当前文件的'标题'的元数据。
get_meta_track 打印出当前文件的'音轨的数量'的元数据。
get_meta_year 打印出当前文件的'年份'的元数据。
get_percent_pos 打印出文件中的当前位置为整数百分比[0-100)。
get_property
get_sub_visibility 打印出字幕能见度(1 ==开启,0 ==关闭)。
get_time_length 打印出当前文件的长度用秒表示。
get_time_pos 打印出在文件的当前位置用秒表示,采用浮点数。
get_vo_fullscreen 全屏状态打印出来(1 == 全屏,0 ==窗口)。
get_video_bitrate 打印出当前文件的视频比特率。
get_video_codec 打印出当前视频文件的编解码器的名称。
get_video_resolution 打印出当前文件的视频分辨率。
screenshot
gui_[about|loadfile|loadsubtitle|play|playlist|preferences|skinbrowser|stop] 图形用户界面行动
key_down_event
loadfile <file|url>
loadlist
loop
菜单命令> 执行上显示OSD菜单命令。 up 移动光标向上。 down 移动光标向下。 ok 接受的选择。 cancel 取消选择。 hide 隐藏的OSD菜单。
set_menu
mute [value] 切换声音输出静音或将其设置为[value](value>=0) (1 ==开启,0 ==关闭)。
osd [level] 切换OSD模式或将其设置为[level]在[level]>= 0。
osd_show_property_text
osd_show_text
panscan <-1.0 - 1.0> | <0.0 - 1.0>
pause 暂停/取消暂停播放。
frame_step 播放一帧,然后暂停。
pt_step
pt_up_step
quit [value] 退出MPlayer。可选的整数[value]的值作为返回代码 为mplayer的进程(默认值:0)。
radio_set_channel
radio_set_freq
radio_step_channel <-1|1> 步向前(1)或向后(-1频道列表)。只有当'channel'的广播参数设置。
radio_step_freq
seek
seek_chapter
switch_angle
set_mouse_pos的
set_property
speed_incr
speed_mult
speed_set
step_property
stop 停止播放。
sub_alignment [value] 切换/设置对齐字幕。 0 顶部对齐 1 居中对齐 2 底部对齐
sub_delay
sub_load
sub_log 当前日志上显示的字幕或连同文件名和时间信息的〜/.mplayer/subtitle_log。
sub_pos
sub_remove [value] 如果[value]参数是当前和非负,并取消了字幕文件的[value]索引。如果参数省略或负,除去 所有的字幕文件。
sub_select [value] 显示字幕的索引[value]。关闭字幕显示,如果关闭[value]的值为-1或比更高可用的字幕指数更大。 可用的字幕周期,如果[value]省略或低于-1。支持字幕来源是 -sub 选项在命令行,VOBsubs,DVD字幕和Ogg和Matroska文本流。 这主要是循环所有字幕命令,如果要设置一个特定的字幕,使用sub_file,sub_vob,或sub_demux。
sub_source [source][/source] 显示第一个字幕,从[source][/source]。这里[source][/source]是一个整数: SUB_SOURCE_SUBS(0)用于文件字幕 SUB_SOURCE_VOBSUB(1) VOBSub文件 SUB_SOURCE_DEMUX(2)在媒体文件或DVD嵌入字幕。 如果[source][/source]为-1,将关闭字幕显示。如果[source][/source]低于-1,将循环每个之间的现有资源第一个字幕。
sub_file [value] 显示字幕specifid由[value]的文件subs。在[value]的值 通过相应的ID_FILE_SUB_ID'-identify'报告的值。 如果[value]的值-1,将关闭字幕显示。如果[value]小于-1, 将循环的所有文件subs。
sub_vob [value] 显示字幕specifid由[value]的vobsubs。在[value]的值 通过相应的ID_VOBSUB_ID'-identify'报告的值。 如果[value]的值-1,将关闭字幕显示。如果[value]小于-1, 将循环的所有vobsubs。
sub_demux [value] 显示字幕specifid由[value]从DVD字幕或嵌入在媒体文件。在[value]的值对应ID_SUBTITLE_ID值'-identify',。如果[value]的值-1,将关闭字幕显示。 如果[value]小于-1,将循环所有的DVD字幕或嵌入字幕。
sub_scale
vobsub_lang 这是与sub_select为了向后兼容。
sub_step
sub_visibility [value] 切换/设置字幕。
forced_subs_only [value] 强制切换/设置字幕。
switch_audio [value](目前的MPEG*,AVI,的Matroska和libav库处理流) 切换到音频文件通过ID[value]。循环 歌曲,如果[value]省略或负数。
switch_angle [value](DVD光盘只) 切换到DVD的角度通过ID[value]。循环 如果可用角度,如果[value]省略或负数。
switch_ratio [value] 在运行时改变长宽比。 [value]是表示新的长宽比 作为浮动16 / 9(例如1.77778)。 这可能与某些视频过滤器的问题。
switch_title [value](DVDNAV only) 切换到DVD标题通过ID[value]。循环可用标题,如果[value]的值省略或负数。
switch_vsync [value] 切换场同步(1 ==开启,0 ==关闭)。如果[value]的值没有提供,刷新同步状态反转。
teletext_add_digit
teletext_go_link <1-6> 按照目前的字幕的页面给出链接。
tv_start_scan 电视频道开始自动扫描。
tv_step_channel
tv_step_norm 更改电视制式。
tv_step_chanlist 改变频道列表。
tv_set_channel
tv_last_channel 设置当前电视频道到最后一个。
tv_set_freq
tv_step_freq
tv_set_norm
tv_set_brightness <-100 - 100> [abs] 设置电视调谐器的亮度或调整,如[abs]设置为0。
tv_set_contrast <-100 -100> [abs] 设置电视调谐器的对比或调整,如[abs]设置为0。
tv_set_hue <-100 - 100> [abs] 设置电视调谐器色调或调整,如[abs]设置为0。
tv_set_saturation <-100 - 100> [abs] 设置电视调谐器饱和或调整,如[abs]设置为0。
use_master 主之间切换和PCM音量控制。
vo_border [value] 切换/设置边界显示。
vo_fullscreen [value] 切换/设置全屏模式。
vo_ontop [value] 切换/设置保持在最上层。
vo_rootwin [value] 切换/设置在根窗口播放。
volume
下面的命令,实际上只可用于OSD菜单控制台模式:
help 帮助文本显示,目前还是空的。
exit 从OSD菜单退出控制台。不像'quit',不退出MPlayer的。
hide 隐藏了OSD菜单控制台。点击菜单命令unhides它。其他按键绑定的行为一切如常。
run