mplayer 是什么?和 mpv 有什么关系,现在还能用吗

mplayer 是一款命令行媒体播放器,支持多种媒体文件格式、音视频编解码器和字幕类型。它曾经是 Linux 上最主流的开源播放器之一,后来衍生出 mpv 这个分支;如今 mpv 由 mpv.io 活跃维护,功能更现代,而 mplayer 本身已基本停止更新。如果你现在要选一个命令行播放器,优先考虑 mpv;只有在维护旧系统或依赖 mplayer 特定行为时,才有必要继续用它。

mplayer 和 mpv 的关系

mpv 是从 MPlayer 分支出来的项目。根据 mpv.io 的说明,mpv 是一款自由、开源、跨平台的媒体播放器,面向命令行使用,支持广泛的媒体格式、音视频编解码器和字幕类型。它继承了 mplayer 的很多设计思路,但代码经过大量重构,并持续活跃开发。

可以这样理解两者的定位:

维度 mplayer mpv
使用方式 命令行 命令行(可加少量屏幕控制器)
维护状态 基本停滞 活跃开发
视频输出 传统输出方式 OpenGL、Vulkan、D3D11
硬件解码 支持有限 支持各平台主流硬件解码 API
脚本扩展 较弱 强大的脚本能力
作为库嵌入 不便 提供 C API

mpv.io 明确把 mpv 描述为“free (as in freedom) media player for the command line”,并强调它在保持极简的同时,仍提供视频上方的简易控制器用于基本操作。

mpv 有哪些值得关注的特点

如果你在考虑从 mplayer 转向 mpv,下面这些是 mpv 相对突出的能力,均来自 mpv.io 的官方介绍:

  • 脚本扩展:强大的脚本能力几乎可以让播放器做任何事,wiki 上有大量用户脚本可选。
  • 屏幕控制器:mpv 追求极简、不提供完整 GUI,但在视频上方有一个小控制器用于基本控制。
  • 高质量视频输出:基于 OpenGL、Vulkan 和 D3D11 的视频输出,支持高质量缩放算法、色彩管理、帧时序、插值、HDR 等。
  • GPU 视频解码:可利用各平台大多数硬件解码 API,并可在运行时按需启用。
  • 可嵌入:从底层设计的 C API,便于作为库集成到其他应用中。
  • 活跃开发:项目持续进行代码重构和清理,并不断加入新功能。

这些特点解释了为什么现在提到“命令行开源播放器”,多数人会直接推荐 mpv 而不是 mplayer。

现在还能不能用 mplayer

能用,但要看场景。mplayer 作为一款成熟的命令行播放器,在旧系统、老旧脚本或特定发行版仓库里仍然可以安装和运行。问题在于它已不再是活跃维护的项目,新格式支持、硬件解码和安全性更新都跟不上。

更实际的做法是:

  • 新装环境:直接选 mpv,功能和维护状态都更好。
  • 已有 mplayer 脚本或工作流:先评估这些脚本是否依赖 mplayer 特有的命令行参数;mpv 的参数体系与 mplayer 不完全兼容,迁移时通常需要调整。
  • 必须用 mplayer 的场合:例如某些老旧的嵌入式环境或发行版只提供 mplayer,那就继续用,但不要期待新特性。

在 Windows 和 Linux 上获取播放器

mpv.io 首页给出的下一步入口是 Installation(安装)和 Source Code Repository(源码仓库),也就是说,获取 mpv 的正规途径是查看官方安装页面或从源码仓库构建。mpv 本身是跨平台的,Windows 和 Linux 都在支持范围内。

具体安装方式会随平台和发行版不同而变化,建议以 mpv.io 的 Installation 页面为准,不要依赖第三方转载的过时命令。如果你只是想在 Windows 或 Linux 上快速用起来,优先走官方安装入口,而不是从不明来源下载二进制文件。

一句话结论

mplayer 是 mpv 的前身,仍可用但已基本停止维护;mpv 由 mpv.io 活跃维护,在脚本、硬件解码、视频输出和嵌入能力上都更现代。新用户直接选 mpv,老用户按脚本兼容性决定是否迁移。

mpv.io
a free, open source, and cross-platform media player