mpv:一个纯粹的命令行播放器

文章目录

  • mpv:一个纯粹的命令行播放器
    • 为什么还有人用命令行播放器
    • 底子是什么
    • 用户脚本和扩展
    • 发布节奏
    • 谁适合用 mpv

mpv:一个纯粹的命令行播放器

mpv 在 GitHub 上有 35,764 个 Star。

这是一个自由的命令行媒体播放器,支持各种媒体文件格式、音视频编解码器和字幕类型。Linux、Windows 10 以上、macOS 10.15 以上都能跑。

为什么还有人用命令行播放器

图形界面播放器到处都是,VLC、PotPlayer、MPC-HC,随便挑。但 mpv 的定位不太一样。

它没有华丽的界面,没有媒体库管理,不搞播放列表的花活。打开就是一个视频窗口,所有操作靠快捷键和命令行参数。听起来原始,但对一部分人来说这刚好够用。

做视频处理的人喜欢它,因为 mpv 对各种编码格式的兼容性好,拖进去基本都能播。写脚本自动化播放任务的人也用它,命令行天然适合批量操作。还有一些人就是单纯觉得它快,启动速度快,资源占用低。

底子是什么

mpv 脱胎于 MPlayer 项目,中间经过 mplayer2 阶段,最后独立出来成了现在的 mpv。代码用 C 写的,构建系统用 meson。

编译需要一堆依赖:gcc 或 clang、X 开发头文件、音频输出库、FFmpeg 系列库、libplacebo、zlib、libass 等等。对普通用户来说,直接装现成的包更省事。mpv 官网有各平台的安装指引,Linux 发行版的仓库里一般也有。

硬件解码支持需要手动开启,用--hwdec参数。默认没开,因为 mpv 的重心不在省电播放上,它的视频输出走的是 shader 渲染,不是 GPU 固定功能硬件。如果你的显卡比较弱,可以试试--profile=fast

用户脚本和扩展

mpv 有一个 wiki 页面专门收集用户脚本。这些脚本用 Lua 写,能扩展播放器的功能。比如自动跳过片头片尾、截图拼接、弹幕显示之类的。

这也是命令行播放器的优势,功能不够就自己加,写个脚本挂上去就行。图形界面播放器要做这种扩展通常门槛高得多。

发布节奏

mpv 大概一年到两年出一个正式版本,版本号是 0.X.0。出了新版之后,旧版就不再维护了,除非有安全问题。

这个发布策略比较务实,开发团队不大,把精力集中在最新版本上。Linux 发行版会自己打补丁处理旧版本的 bug。

谁适合用 mpv

习惯命令行操作的开发者。需要在脚本里嵌入播放功能的人。对播放器启动速度和资源占用有要求的场景。想自己写插件定制播放体验的人。

如果你只是想双击打开一个视频看看,图形界面播放器可能更合适。但如果你的工作流里需要一个可靠的、可编程的播放组件,mpv 值得试试。

放器可能更合适。但如果你的工作流里需要一个可靠的、可编程的播放组件,mpv 值得试试。