1. 前言
前面文章介绍了Linux下Mplayer播放的交叉编译、移植,在命令行上成功运行了mplayer播放器,完成了视频播放。mplayer支持二次开发,也支持命令行上直接使用;如果在命令行上直接运行,mplayer会默认捕获键盘事件,支持很多快捷键,也支持很多的命令行参数,可以完成视频播放、循环播放设置、播放列表设置、将视频里的音频文件输出保存,将视频帧保存为图片,设置播放速度等等。
这篇文章就介绍mplayer命令的快捷键用法,常用的命令参数用法。
2. 快捷键介绍
2.1 倒退与快进
在播放文件的时候,可以通过下面的快捷键对播放的进程进行倒退与快进操作:
代码语言:javascript复制左方向键和右方向键:分别执行倒退 10 秒和快进 10 秒操作
下方向键和上方向键:分别执行倒退 1 分钟和快进 1 分钟操作
下翻页键和上翻页键:分别执行倒退 10 分钟和快进 10 分钟操作
2.2 加载字幕
播放视频文件时,可以加载字幕,语法如下:
代码语言:javascript复制mplayer -sub <somesubtitlefile> <somefile>
2.3 暂停与继续切换
代码语言:javascript复制p 或 Space 暂停/继续播放。
q 或 Esc 退出 MPlayer。
2.4 声音控制
代码语言:javascript复制/ 和 * 或 9 和 0 减小或增大音量。
m 静音切换。
2.5 画面显示效果调整
代码语言:javascript复制x 和 z-调整字幕的延迟时间。
1 和 2-调整对比度。
3 和 4-调整亮度。
5 和 6-调整色度。
7 和 8-调整饱和度。
3. 命令行用法介绍
3.1 查看mplayer帮助
代码语言:javascript复制[root@XiaoLong /video_mp3]#mplayer --help
Basic options: (complete list in the man page)
-vo <drv> select video output driver ('-vo help' for a list)
-ao <drv> select audio output driver ('-ao help' for a list)
vcd://<trackno> play (S)VCD (Super Video CD) track (raw device, no mount)
dvd://<titleno> play DVD title from device instead of plain file
-alang/-slang select DVD audio/subtitle language (by 2-char country code)
-ss <position> seek to given (seconds or hh:mm:ss) position
-nosound do not play sound
-fs fullscreen playback (or -vm, -zoom, details in the man page)
-x <x> -y <y> set display resolution (for use with -vm or -zoom)
-sub <file> specify subtitle file to use (also see -subfps, -subdelay)
-playlist <file> specify playlist file
-vid x -aid y select video (x) and audio (y) stream to play
-fps x -srate y change video (x fps) and audio (y Hz) rate
-pp <quality> enable postprocessing filter (details in the man page)
-framedrop enable frame dropping (for slow machines)
Basic keys: (complete list in the man page, also check input.conf)
<- or -> seek backward/forward 10 seconds
down or up seek backward/forward 1 minute
pgdown or pgup seek backward/forward 10 minutes
< or > step backward/forward in playlist
p or SPACE pause movie (press any key to continue)
q or ESC stop playing and quit program
or - adjust audio delay by /- 0.1 second
o cycle OSD mode: none / seekbar / seekbar timer
* or / increase or decrease PCM volume
x or z adjust subtitle delay by /- 0.1 second
r or t adjust subtitle position up/down, also see -vf expand
* * * SEE THE MAN PAGE FOR DETAILS, FURTHER (ADVANCED) OPTIONS AND KEYS * * *
MPlayer 1.1-4.5.1 (C) 2000-2012 MPlayer Team
3.2 播放媒体文件
使用mplayer播放媒体文件最简单的方式如下:
代码语言:javascript复制mplayer <somefile>
直接在命令行后面跟上要播放的媒体文件,mplayer会自动检测文件,打印出状态信息,完成播放。如果是音频文件,在命令行上会输出音频文件的专辑信息、作者、创作等信息,并完成音频输出;如果是视频文件会输出图像,展示视频画面。
用法示例:
代码语言:javascript复制[root@XiaoLong /video_mp3]# mplayer july_my_soul.mp3 播放MP3文件
[root@XiaoLong /video_mp3]# mplayer zuixuanminzufeng.mp4 播放MP4文件
3.2 播放流媒体
mplayer可以播放rtsp、rtmp等流媒体连接,语法如下:
代码语言:javascript复制mplayer -playlist <file or url>
如果播放不流畅,可以设置缓冲区大小:
代码语言:javascript复制mplayer -cache 8192 -playlist <file or url>
使用示例:
代码语言:javascript复制拱北口岸珠海过澳门大厅摄像头流媒体地址访问示例:
[root@XiaoLong /video_mp3]# mplayer -framedrop rtsp://218.204.223.237:5
54/live/1/66251FC11353191F/e7ooqwcfbqjoo80j.sdp -zoom -x 800 -y 480
带缓冲访问示例:
[root@XiaoLong /video_mp3]# mplayer -cache 8192
-framedrop rtsp://218.204.223.237:554/live/1/66251FC11353191F/e7ooqwcfbqjoo80j.sdp -zoom -x 800 -y 480
3.3 设置循环播放
语法如下:
代码语言:javascript复制mplayer -loop 3 <somefile>
上面命令表示循环播放源文件3次。
如果想一直循环播放某一个视频,可以将loop后面填0。例如:
代码语言:javascript复制mplayer -loop 0 <somefile>
3.4 设置播放速度
语法如下:
代码语言:javascript复制mplayer -speed 2.0 <somefile>
上面命令行里的 -speed 表示设置文件的播放速度,可以填入浮点数,正常速度是1.0,可以填0.5、1.0、2.0、3.0等等。
如果想两倍速播放,可以这样填:
代码语言:javascript复制mplayer -speed 2.0 <somefile>
3.5 音频文件另存为
如果想将视频里的音频数据剥离出来,可以采用下面的命令:
代码语言:javascript复制mplayer -ao pcm <somefile>
运行之后,输出的音频文件名称默认为audiodump.wav
。
如果想指定音频文件的名称,可以这样写:
代码语言:javascript复制mplayer -ao pcm:file=<filename>.wav <somefile>
3.6 输出图片帧
将视频帧全部生成图片输出,命令格式如下:
代码语言:javascript复制mplayer -vo jpeg <somefile>
上面的命令行运行后,会输出一大堆图片文件,格式像这种: 00000001.jpg、00000002.jpg、00000003.jpg 排列的。 如果想输出其他图片格式,把后缀改掉就行。
3.7 设置纵横比
在不同尺寸的屏幕上,可以设置播放的效果,常见的电脑都是16:9 的占比,可以设置纵横比为16:9。
代码语言:javascript复制mplayer -aspect 16:9 <somefile>
也可以设置其他占比,比如 4:3
代码语言:javascript复制mplayer -aspect 4:3 <somefile>
3.8 创建播放列表
如果想播放指定的几个视频文件,可以将这些视频文件添加到播放列表里,让mplayer播放这个列表。
代码语言:javascript复制1. 将当前目录下的所有MP4文件加入到lst列表文件中:
[root@XiaoLong /video_mp3]# ls ./*.mp4 > video.lst
2. 单个文件添加:
[root@XiaoLong /video_mp3]#echo music.mp3 >> video.lst
3. 删除:
用编译器打开music.lst删除你想删除的
4. 播放列表文件:
[root@XiaoLong /video_mp3]# mplayer -playlist video.lst
3.9 设置显示器的尺寸
在开发板上播放视频时,如果视频的尺寸大于了开发板LCD屏的画面,视频超出的部分就无法正常显示,这种情况可以设置LCD屏尺寸,让mplayer 缩放画面,匹配LCD屏的尺寸。
语法:
代码语言:javascript复制mplayer -zoom -x <x> -y <y> <somefile>
示例:
代码语言:javascript复制[root@XiaoLong /video_mp3]# mplayer -zoom -x 800 -y 480 zuixuanminzufeng.mp4
3.10 全屏播放
想让mplayer 自己适应屏幕,除了上面的设置尺寸命令外,还有一个更加方便的命令,设置全屏:
代码语言:javascript复制mplayer -fs <somefile>
示例:
[root@XiaoLong /video_mp3]# mplayer -fs zuixuanminzufeng.mp4