FFplay 是一个使用 FFmpeg 和 SDL 库制作的简易轻便的媒体播放器,他可以用来测试 FFmpeg APIs。
使用方式很简答
ffplay [options] input_file
简单使用
播放 demo.mp4 ,播放完成后自动退出
ffplay -autoexit demo.mp4
以特定大小播放 demo.mp4
ffplay -x 640 -y 480 demo.mp4
从指定时间开始播放
ffplay -ss 10 demo.mp4
指定播放时长
ffplay -t 10 demo.mp4
关闭音频
ffplay -an demo.mp4
关闭视频
ffplay -vn demo.mp4
将窗口标题设置为 “myplayer”,循环播放 2 次
ffplay -window_title myplayer -loop 2 demo.mp4
设置显示模式
ffplay -showmode rdft demo.mp4
参数 -showmode
后面接的mode值可以为
- 0, video 视频,默认
- 1, waves 音频波形
- 2, rdft 音频频谱
默认值 video, 在播放时,可以通过 w
快捷键在几种模式中切换
播放流媒体
ffplay 相比于本地播放器,他也能够播放网络视频,如果能够拿到视频的网络播放地址,不管是直链,还是 m3u8,也能够直接加在 ffplay 后面播放,顺便也可以直接查看视频流的信息。
本地做一个测试,开启一个终端播放 ffplay
ffplay udp://127.0.0.1:8080
然后使用 ffmpeg 生成流媒体
ffmpeg -r 25 -i demo.mp4 -f mpegts udp://127.0.0.1:8080
这里的参数
-r 25
表示每秒25帧-f
输出视频流
快捷键
q, ESC 退出
f 全屏
p, SPC 暂停
w 切换显示模式(视频/音频波形/音频频带)
s 步进到下一帧
left/right 快退/快进 10 秒
down/up 快退/快进 1 分钟
page down/page up 跳转到前一章/下一章(如果没有章节,快退/快进 10 分钟)
mouse click 跳转到鼠标点击的位置(根据鼠标在显示窗口点击的位置计算百分比)