MPV播放器是一款免费、开源、跨平台的多媒体播放器,带有极简的 GUI 界面以及丰富的命令行控制,它支持各种媒体文件格式、音频和视频编解码器以及字幕类型,可用于 Windows、Linux、MacOS、BSD 以及 Android 等平台。
软件特色
脚本处理
强大的脚本能力几乎可以让播放器做任何事情,Wiki 上有大量用户脚本可供选择。(https://github.com/mpv-player/mpv/wiki/User-Scripts)
屏幕控制器
虽然 mpv 力求简约,并没有提供真正的 GUI,但它在视频顶部有一个小控制器,用于基本控制。
高品质视频输出
mpv 具有基于 OpenGL、Vulkan 和 D3D11 的视频输出,能够支持视频发烧友喜爱的许多功能,例如:使用流行的高质量算法进行视频缩放、色彩管理、帧时序、插值、HDR 等。
GPU 视频解码
mpv 可以利用所有平台上的大多数硬件解码 API,硬件解码可在运行时按需启用。
可嵌入
mpv 从头开始设计了一个简单的 C API,使其可以作为一个库使用,并便于和其他应用轻松集成。
注意:在软件目录doc下有官方的快捷键操作示意。
使用 mvp 播放器
打开 mpv 播放器,拖放一个本地媒体文件到窗口中,即可自动进行播放。
注意:界面没有任何菜单项,只能通过拖放媒体文件来操作。
可以看到,mpv 的界面很简洁,只有一个控制面板(在鼠标移动到播放窗口上才会显示),该面板上有播放/暂停、快进/快退以及全屏等功能。
若要播放在线视频,只能使用命令行模式:
$ mpv http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4
注意:mpv 的默认大小,取决于所播放的视频画质。比如一个 240p 的视频,播放窗口会比较小,而在全高清显示器上播放 1080p 视频时,几乎会占满整个屏幕。
更新日志
0.38.0 版 最近的 此版本需要 FFmpeg 4.4 或更高版本以及 libplacebo 6.338.2 或更高版本。
新的改进渲染器 (vo_gpu_next) 正在开发中,但尚未成为默认值。
特征
新增功能
脚本:添加 mp.input() 播放器:添加一个选项以自动打开去隔行扫描 mac:添加更多“正在播放”信息和功能 osxbundle:自动包含 MoltenVK 以启用 Vulkan 支持 input.conf:将 Ctrl+WHEEL_UP/DOWN 绑定到 video-zoom ao_avfoundation:对 AVFoundation 音频驱动程序 (macOS) 的初始支持 VO:在 Win32 上添加上下文菜单支持
改变
OSC:允许禁用特殊鼠标滚轮行为 Mac:添加对动态更改几何图形、自动调整的支持 x11_common:允许 DPI 以 0.5 为单位缩放,并首选 Xft.dpi 中的值 vo_gpu_next:将缓存保存到单独的文件 Mac:大量的重构、内部改进和清理 builtin.conf:从高质量配置文件中删除去带
删除
播放器:删除旧版、非标准的 Raspberry Pi 特定支持代码
选项和命令
添加
选项:添加次级子延迟 选项:添加 --osd-bar-border-size filter_sdh:添加 --sub-filter-sdh-enclosures 选项 选项:添加 --secondary-sub-ass-override 音频:添加 --Volume-Gain 选项以分贝为单位控制音量 命令:export current-gpu-context 属性 sub:添加 --sub-lavc-o 选项 命令:添加 load-config-file 和 load-input-conf 输入:添加 --input-preprocess-wheel 选项 播放器:添加 loadfile/loadlist insert-next 命令 输入:返工窗口拖动以命令控制 选项:添加 --deinterlace-field-parity 选项 VO:添加 video-target-params 属性 选项:添加 --input-commands,用于在启动时运行命令
改变
player/command:添加缩放叠加功能 Mac:添加对 window-id 属性和 --drag-and-drop 的支持 命令:支持将缩放传递给keypress Mac:添加对 --auto-window-resize、--input-cursor-passthrough 选项的支持 Win32:添加对 --input-cursor-passthrough 选项的支持 x11_common:支持 --title-bar sub:允许通过 --teletext_page 设置特殊页码 播放器:默认将 --hidpi-window-scale 设置为 no osd_libass:更新 OSD 栏的凹痕和边框大小 播放器:删除 --alpha 并将 --background 重命名为 --background-color 选项:删除 --focus-on-open 并添加 --focus-on
删除
播放器:删除 --term-remaining-playtime 选项
修复和次要增强功能
vaapi:添加对 vaapi-win32 的支持 AO/coreaudio_exclusive:修复更改格式时的段错误 Mac:在不嵌入的情况下修复 libmpv 用法 构建:仅在 Windows 上直接链接 Shaderc 和 Spilv-Cross 构建:再次默认启用 DVBin Playloop:使用 16:9 的比例和 --force-window Mac:精确滚动时报告修饰键 输入:修复双击处理 输入:添加缺少的前向媒体键 ('GO_FORWARD') sub:如果播放器因缓存而暂停,则不要繁忙循环 播放列表:使用 --playlist 选项正确填充 playlist-path Win32:选择加入 Windows 段堆 demux_lavf:删除 mp4 的fix_editlists hack Wayland:再次修复密钥修饰符处理 win32:重新启用 IME wayland_common:防止负配置大小 demux_lavf:将ICO检测为图像 bash-completion:延迟解析 mpv 选项 f_auto_filters:使用 bwdif_cuda 与 CUDA HWDEC 进行反隔行扫描 命令:切换 VO 时执行普通寻道而不是刷新寻道 ad_spdif:修复DTS 44.1khz直通播放 vo_dmabuf_wayland:在 HIDpi 情况下更智能地扩展 hwdec_drmprime:添加 P010 和 P210 支持 Wayland:查找“默认”光标以及“left_ptr” wayland_common:正确处理高分辨率滚动 vo_vdpau:将时间固定为纳秒 demux_mkv:为 A_MPEG/L1 (mp1) 音频和 FFV1 视频添加标签 OSDEP:修复取消子进程时的无限循环 dec_sub:展开子包缓存 玩家/替补:避免浪费的字幕重绘 ao_pipewire:添加对 SPDIF 格式的支持 wayland_common:实现多座席支持 VO:仅将 libmpv 放在 Cocoa-CB 的自动探测顺序中的最后 player/loadfile:重写子自动选择逻辑 介子:为 macOS 应用捆绑添加自定义目标 image_writer:如果映像写入失败,则清理剩余文件 sub:修复具有多个时间戳的 LRC 行 AO:不要在非单位增益下裁剪浮点格式 Wayland:删除旧的 Sway/Wlroots 黑客 hwdec/dmabuf_interop_gl:迁移到桌面 GL 上的EXT_EGL_image_storage sd_ass:不要错误地将 \pos 识别为 \p ao_audiotrack:修复了直通支持的缺失检查 wayland_common:如果拖放失败,则记录日志 vo_gpu_next:在视频色彩空间渲染字幕 SWRESAMPLE:停止使用已弃用的 {in,out}_channel_layout 选项 路径:如果传递了 --no-config,则不要加载任何文件(包括缓存和状态) vo_gpu/vo_gpu_next:使用 GLX 修复透明度问题 wayland_common:需要设置初始化WAYLAND_DISPLAY vo_drm:添加对 BGR 格式和 YUYV 的支持 stream:启用套接字、管道和 FIFO 的缓存 ao_coreaudio:空闲超时后停止音响单元 vo_gpu_next:添加对 --dither-depth=auto 的支持 vo_gpu_next:不要在 HDR 色彩空间下渲染 ASS 字幕 video/image_writer:附加 MDVC 元数据和 CLLI 元数据 win32:解析掉落的 shell 链接(Windows 快捷方式) af_lavcac3enc:修复2CH音频的内存泄漏 Win32:提高招聘计时器分辨率 输入:将最大键下限提高到 16 输入:删除最大活动截面限制 视频/egl_helpers:修复EGL_KHR_create_context的回退逻辑 ao_pulse:默认重新启用延迟黑客 hwdec/vulkan:启用稳定的 AV1 扩展 af_scaletempo2:修正了帧可用性的错误报告问题 Win32:修复本机密钥重复支持 ao_pipewire:修复一些缓冲区大小/时序计算 音频:基于拉取的 AO 的暂停处理改进 ad_spdif:指定缺少的介质类型和采样率 Mac/Vulkan:通过演示反馈添加对帧计时的支持 demux_mkv:修正了 ProjectionPoseRoll 旋转的方向 demux_mkv:添加对 BCP 47 语言标记的支持 播放器:避免在字幕轨道切换期间忙于循环播放
|