mpv
mpv 是一个基于 MPlayer 和已停止维护的 mplayer2 的媒体播放器。它支持多种视频文件格式、音频和视频编解码器以及字幕类型。在 mpv 和上述播放器之间的详细(尽管承认不完整)差异列表可以在 [1] 中找到。
安装
前端
请参阅 多媒体应用程序列表#mpv-based。
配置
mpv 提供了不错的通用默认设置,应该可以在配置较弱/较旧的显卡的计算机上良好运行。但是,如果你的计算机拥有更现代的显卡,mpv 允许你进行大量配置以获得更好的视频质量(仅受限于你的显卡性能)。为此,只需创建一些配置文件(因为它们默认不存在)。
/etc/mpv/ 读取,并按用户从 ~/.config/mpv/ 读取(除非设置了 环境变量 XDG_CONFIG_HOME)。其中,用户特定设置会覆盖系统范围的设置,而所有这些设置都会被命令行选项覆盖。建议使用用户特定配置,因为它可能需要一些尝试和错误。为了帮助你入门,mpv 提供了默认设置的示例配置文件。复制它们作为起点。
$ cp -r /usr/share/doc/mpv/ ~/.config/
mpv.conf 包含 mpv 的大部分设置,input.conf 包含按键绑定。通读两者以了解它们的工作原理和可用选项。
通用设置
将以下设置添加到 ~/.config/mpv/mpv.conf。
字幕配置
启用模糊搜索
sub-auto=fuzzy
更改字体
sub-font="fontName"
加粗字幕以提高可读性
sub-bold=yes
高质量配置
默认情况下,mpv 利用平衡质量和性能的设置。此外,还有两个预定义配置文件可用:fast 用于最大性能,high-quality 用于卓越的渲染质量。你可以使用 --profile=name 选项应用特定配置文件,并使用 --show-profile=name 查看其内容。
profile=high-quality
可以通过按 i 键调出显示 mpv 性能的实时统计数据。这对于确保你的硬件跟得上你的配置以及比较不同的配置非常有用。
最后两个选项稍微复杂一些。video-sync=display-resample 使得如果音频和视频不同步,则不会丢弃视频帧,而是对音频进行重采样(音频音高的轻微变化通常比丢弃的帧更不明显)。mpv wiki 上有一篇关于它的深度文章,题为 显示同步。interpolation 通过改变帧的显示方式,使运动在你的显示器上看起来更流畅,以使源帧率更好地与你显示器的刷新率同步(不要与 SVP 的技术混淆,SVP 的技术实际上是将视频转换为 60fps)。mpv wiki 上有一篇关于它的深度文章,题为 插值,尽管它也通常被称为 smoothmotion。
profile=high-quality video-sync=display-resample interpolation
video-sync=display-resample 行可能会导致视频加速。它还会完全破坏某些系统的帧步进,似乎会阻止插值工作。除此之外,你仍然可以做很多事情,但事情会变得更复杂,需要更强大的显卡,并且处于不断发展中。作为简要概述,可以加载特殊的着色器,这些着色器执行异国情调的缩放和锐化技术,包括一些实际上使用深度神经网络(针对真实世界和动画内容)训练的着色器。要了解更多关于此的信息,请查看 mpv wiki,特别是 用户着色器部分。
还有许多其他选项你可能认为有用。查看 mpv(1) 是值得的。从命令行运行 mpv 以检查有关配置的错误消息也很有帮助。
自定义配置文件
在 mpv.conf 中,可以创建 配置文件,它们本质上只是“选项组”,你可以通过它们
- 在不同配置之间快速切换,而无需重写文件。
- 为特殊内容创建特殊配置文件。
- 嵌套配置文件,以便你可以从更简单的配置文件创建更复杂的 配置文件。
创建配置文件很容易。mpv.conf 顶部的区域称为顶层,你写在那里的任何选项都会在 mpv 启动后生效。但是,一旦通过在方括号中写下配置文件的名称来定义一个配置文件,你在其下方写入的每个选项(直到你定义新的配置文件)都将被视为该配置文件的一部分。下面是一个 mpv.conf 示例。
profile=myprofile2 #Top level area, load myprofile2 ontop=yes #Always on top [myprofile1] #A simple profile, top level area ends here profile-desc="a profile" #Optional description for profile fs=yes #Start in full screen [myprofile2] #Another simple profile profile=high-quality #A built in profile that comes with mpv log-file=~~/log #Sets a location for writing a log file, ~~/ translates to ~/.config/mpv
顶层区域只有两行,下面定义了两个单独的配置文件。当 mpv 启动时,它会看到第一行,加载 myprofile2 中的选项(这意味着它加载 high-quality 和 log-file=~~/log 中的选项),最后它加载 ontop=yes 并完成启动。注意,myprofile1 从未被加载,因为它从未在顶层区域被调用。
或者,可以从命令行调用 mpv,使用
$ mpv --profile=myprofile1 video.mkv
它将忽略除 myprofile1 选项之外的所有选项。
自动配置文件
某些类型的配置文件将根据文件扩展名或使用的协议自动加载。
这些配置文件将加载到匹配文件扩展名的所有文件中(分别针对所有 .mkv 和 .gif 文件)。
[extension.mkv] keep-open volume-max=150 [extension.gif] osc=no loop-file
每当播放任何 http 或 https 流时(例如 mpv https://example.com/video.mp4),此配置文件都会自动加载。
[protocol.https] speed=2 keep-open [protocol.http] profile=protocol.https
运行 mpv --list-protocols 以查看 mpv 支持的不同协议。
按键绑定
按键绑定相当直接,可以参考 /usr/share/doc/mpv/input.conf 中的示例和 mpv(1) § 命令接口。
将以下示例添加到 ~/.config/mpv/input.conf
shift+s screenshot each-frame Shift+UP seek 600 Shift+DOWN seek -600 = cycle video-unscaled - cycle-values window-scale 2 3 1 .5 WHEEL_UP add volume 5 WHEEL_DOWN add volume -5 WHEEL_LEFT ignore WHEEL_RIGHT ignore Alt+RIGHT add video-rotate 90 Alt+LEFT add video-rotate -90 Alt+- add video-zoom -0.25 Alt+= add video-zoom 0.25 Alt+j add video-pan-x -0.05 Alt+l add video-pan-x 0.05 Alt+i add video-pan-y 0.05 Alt+k add video-pan-y -0.05 Alt+BS set video-zoom 0; set video-pan-x 0; set video-pan-y 0
要尝试在 mpv 中重现 MPC-HC 按键绑定,请参阅 [2]。
附加配置文件
此外,还可以创建一些其他的配置文件和目录,其中
~/.config/mpv/script-opts/osc.conf管理屏幕控制器。请参阅 mpv(1) § 屏幕控制器 了解更多信息。~/.config/mpv/scripts/script-name.lua用于 Lua 脚本。请参阅 [3] 获取示例。
请参阅 mpv(1) § 文件 了解其他文件和目录的信息。
脚本
mpv 有一个 各种脚本,可以扩展播放器的功能。为此,它内部绑定了 Lua 和 JavaScript。
脚本通常通过将其放入 ~/.config/mpv/scripts/ 目录(你可能需要先创建它)来安装。之后,它们会在 mpv 启动时自动加载(此行为可以通过其他 mpv 选项进行更改)。一些脚本带有自己的安装和配置说明,因此请务必查看。此外,一些脚本已过时、损坏且未维护。
JavaScript
自 2014 年以来,JavaScript(ES5,通过 MuJS)已被支持作为 mpv 脚本语言。目前只有 少数脚本 可用,但文档在 mpv(1) § JAVASCRIPT 中,感兴趣的人可以自己制作。
要开始,将一个扩展名为 .js 的脚本放入 mpv scripts 目录,例如。
~/.config/mpv/scripts/fullscreen-off-on-pause.js
function onPauseChange (prop, enabled) {
if (enabled) {
mp.set_property('fullscreen', 'no')
}
}
mp.observe_property('pause', 'bool', onPauseChange)
有关更多详细信息,例如关于使用 require 加载 CommonJS 模块,请参阅 mpv(1) § CommonJS 模块和 require(id)。
Lua
mpv 的 Lua 脚本开发记录在 mpv(1) § LUA 脚本 中,示例在 TOOLS/lua 中,它们被安装到 /usr/share/mpv/scripts。
例如,你可以启用内置脚本来自动裁剪带有黑边的视频。
$ ln -s /usr/share/mpv/scripts/autocrop.lua ~/.config/mpv/scripts
mpv-ytdlAutoFormat
mpv-ytdlautoformat 是一个 Lua 脚本,用于自动更改 Youtube 和 Twitch 或你指定的域名的 ytdl 格式,以 480p 或你想要的质量。
mpv-webm
mpv-webm(或简称 webm)是一个非常易于使用的 Lua 脚本,允许用户在观看视频时创建 WebM 文件。它包含多项功能,并且没有任何额外的依赖项(完全依赖 mpv)。
ytdl-preload
ytdl-preload 是一个 Lua 脚本,用于预加载播放列表中的下一个 ytdl 链接。
C
mpv-mpris
C 插件 mpv-mpris 允许其他应用程序通过 MPRIS 协议与 mpv 集成。例如,安装 mpv-mpris 后,kdeconnect 可以在来电时自动暂停 mpv 中的视频播放。另一个例子是蓝牙音频设备上的按钮(播放/暂停等)。
要使用该插件,请安装 mpv-mpris。
Vapoursynth
Vapoursynth 是 AviSynth 的一种替代方案,可以在 Linux 上使用,并通过 Python 脚本进行视频操作。Vapoursynth 的 Python 脚本可以用作 mpv 的视频过滤器。
mpv 包现在默认启用 Vapoursynth 支持。
SVP 4 Linux (SmoothVideoProject)
SmoothVideoProject SVP 是一个主要以将视频转换为 60fps 而闻名的程序。它是免费的 [概念上] 且功能齐全,适用于 64 位 Linux(Windows 和 OS X 收费,并且与 32 位 Linux 不兼容)。
它有三个主要功能,每个功能都可以根据需要禁用/启用(你不必使用运动插值)。
- 运动插值(YouTube 视频)- 一种将视频转换为 60fps 的算法。这产生了有些人喜欢有些人讨厌的“肥皂剧效应”。不幸的是,该算法并不完美,并且引入了比正常情况更多的奇怪伪影。算法可以(通过滑块)调整以获得性能或质量。它还具有一些伪影减少设置,通过插值实际帧与生成的帧来减少伪影的可察觉性。帧率检测可以设置为自动或手动(手动似乎解决了某些用户的性能问题)。
- 黑边光照(YouTube 视频)- 如果图像的纵横比在你的显示器上产生黑边,SVP 将用屏幕上内容生成的“灯光”照亮黑边。它有一些自定义选项,但默认设置非常接近最佳。
- LED 环境光控制(YouTube 视频)- 能够控制连接到电视的 LED 环境灯。
一旦你的 mpv 编译了 Vapoursynth 支持,让 SVP 与 mpv 工作就相对容易了。只需安装 svp-binAUR,打开 SVP 程序让它评估你的系统性能(你可能想先关闭其他程序,以便它能获得准确的读数),最后将以下 mpv 配置文件添加到你的 mpv.conf 中[4]。
mpv.conf
[svp] input-ipc-server=/tmp/mpvsocket # Receives input from SVP hr-seek-framedrop=no # Fixes audio desync watch-later-options-remove=vf # Do not remember SVP's video filters # Can fix stuttering in some cases, in other cases probably causes it. Try it if you experience stuttering. #opengl-early-flush=yes
然后,要使用 SVP,你必须在打开具有该配置文件的文件之前,让 SVP 程序在后台运行。要么执行
$ mpv --profile=svp video.mkv
或在 mpv 配置文件的顶层部分设置 profile=svp。
如果你想使用硬件解码,你必须使用 copy-back 解码器,因为普通解码器与 Vapoursynth 不兼容(选择一个以 -copy 结尾的 hwdec 选项)。例如
hwdec=auto-copy hwdec-codecs=all
无论如何,mpv 开发人员都不推荐硬件解码,并且不太可能对性能产生显著影响。
技巧与窍门
图像
硬件视频加速
请参阅 硬件视频加速。
硬件加速视频解码可通过 --hwdec=API 选项获得。有关所有支持的 API 和其他必需选项的列表,请参阅 mpv(1) § hwdec。
要使其永久生效(例如在播放桌面环境中的视频时),请将其添加到配置文件中。
~/.config/mpv/mpv.conf
hwdec=auto
要允许 CPU 处理视频过滤器,请选择一个 *-copy API。
在视频运行时,使用键盘快捷键 Ctrl+h 可切换硬件解码。
要对硬件加速进行故障排除,可能需要调整日志级别(参见 mpv(1) § msg-level)。例如,--msg-level=vd=v,vo=v,vo/gpu/vaapi-egl=trace 启用以下内容。
- 视频解码器 (
vd) 和视频输出 (vo) 模块的详细消息。 - 负责视频解码的模块的更详细的跟踪消息。在这里,在一次不调整任何日志级别的 mpv 运行后,通过经验确定感兴趣的模块是
vo/gpu/vaapi-egl。
快速循环纵横比
你可以使用 Shift+a 在纵横比之间循环。
忽略纵横比
你可以使用 --keepaspect=no 忽略纵横比。要使选项永久生效,请将 keepaspect=no 行添加到配置文件中。
绘制到根窗口
使用 --wid=0 运行 mpv。mpv 将绘制到窗口 ID 为 0 的窗口。
始终显示应用程序窗口
要从命令行启动 mpv 时始终显示应用程序窗口(即使是音频文件),请使用 --force-window 选项。要使选项永久生效,请将 force-window=yes 行添加到配置文件中。
禁用视频输出
要从命令行启动时禁用视频输出,请使用 --vid=no 选项,或其别名 --no-video。
终端视频
--vo=tct“适用于文本控制台的 Unicode 彩色艺术视频输出驱动程序。”--vo=caca“适用于文本控制台的 ASCII 彩色艺术视频输出驱动程序。” libcaca 支持因漏洞(参见 FS#70962)而在 Arch 上被禁用,并且由于其上游不活跃而未重新添加:请安装 mpv-fullAUR。--vo=kitty“使用适用于文本控制台的 Kitty 协议进行视频输出,该协议适用于所有支持此协议的终端”
音频
音量太低
在配置文件中将 volume-max=value 设置为合理的值,例如 volume-max=150,这样就可以将音量提高到 150%,即原来的两倍多。将音量设置得太高会导致削波伪影。此外(或替代地),您可以使用 动态范围压缩,使用 af=acompressor。
指定音频输出
运行以下命令获取可用音频输出设备列表。
$ mpv --audio-device=help
然后将其中一个添加到 ~/.config/mpv/mpv.conf。例如。
audio-device=alsa/hdmi:CARD=NVidia,DEV=1
高清音频直通
要启用高清音频编解码器(如 TrueHD 和 DTS-MA)直通到 AV 接收器,请将以下内容添加到 ~/.config/mpv/mpv.conf。
audio-spdif=ac3,eac3,dts-hd,truehd
音量标准化
不同来源的响度可能不同或不一致,因此 mpv 用户可能需要配置自动音量标准化。例如。
~/.config/mpv/input.conf
n cycle_values af loudnorm=I=-30 loudnorm=I=-15 anull
这会将按键 n 绑定到循环音频滤波器设置(af)在指定值之间。
loudnorm=I=-30:响度标准化设置,I=-30,柔和音量,可能适用于背景音乐。loudnorm=I=-15:较大的音量,可能适合当前观看的视频。anull:将音频滤波器重置为 null,即禁用音频滤波器。
af=loudnorm=I=-30。mpv 中的音频滤波由 FFmpeg 后端提供。有关详细信息,请参阅 Wikipedia:EBU R 128 和 ffmpeg loudnorm 过滤器。
另请参阅上游问题 [6] 和 [7],其中提到了不同的选项。
使用 Lua 脚本将 mpv 打造成音乐播放器
这篇博客文章介绍了 music.lua 脚本,该脚本展示了如何使用 Lua 脚本来改进 mpv 作为音乐播放器。
退出时保存位置
默认情况下,你可以通过按 Shift+q 来保存位置并退出。可以通过在按键绑定配置文件中设置 quit_watch_later 来更改快捷方式。
要自动保存当前播放位置并在退出时保存,请使用 --save-position-on-quit 启动 mpv,或将 save-position-on-quit 添加到配置文件中。
保存播放列表位置并在下一个文件时暂停
播放列表可以简单地是文件列表,请参阅 mpv(1) § playlist。要播放播放列表并记住其位置。
$ mpv --save-position-on-quit --pause --reset-on-next-file=pause --playlist=/path/to/playlist
使用 --pause 选项,mpv 将以暂停状态启动,而 --reset-on-next-file=pause 在切换到下一个文件时将重置暂停模式。
播放 DVD
mpv 不支持 DVD 菜单。要开始播放视频 DVD 的最长标题的主流,请使用以下命令:
$ mpv dvd://
可选的标题指定符是一个数字(从 0 开始),用于在 DVD 上的单独视频流之间进行选择。
$ mpv dvd://[title]
已复制到本地文件系统的 DVD(例如通过 dvdbackup 工具)可以通过指定本地副本的路径来支持:--dvd-device=PATH。
请参阅以下 桌面文件 示例,用于从本地文件系统播放 DVD。
[Desktop Entry] Type=Application Name=mpv Media Player DVD GenericName=Multimedia player Comment=Play movies and songs Icon=mpv Exec=mpv dvd:// --player-operation-mode=pseudo-gui --force-window --idle --dvd-device=%f Terminal=false Categories=AudioVideo;Audio;Video;Player;TV; # (MimeType and X-KDE-Protocols omitted, see original mpv.desktop file)
通过将 Exec 行替换为
Exec=mpv dvd://0 dvd://1 dvd://2 dvd://3 dvd://4 dvd://5 dvd://6 dvd://7 dvd://8 dvd://9 --player-operation-mode=pseudo-gui --force-window --idle --dvd-device=%f
mpv 播放器将把 DVD 标题 0 到 9 排入播放列表,这允许用户按顺序播放标题,或使用 mpv GUI 在 DVD 标题之间向前和向后跳转。
安装 libdvdcss,以修复错误。
[dvdnav] Error getting next block from DVD 1 (Error reading from DVD.)
恢复旧的 OSC
从 0.21.0 版本开始,mpv 用底部栏取代了屏幕控制器。如果你想恢复屏幕控制器,你可以编辑 mpv 配置 如下所示。
可复现的截图
截图模板选项可以包含被截图帧的精确时间码(HH:MM:SS.mmm)。有意义的文件名使得知道截图来源变得容易。可以这样设置。
~/.config/mpv/mpv.conf
screenshot-template="%F - [%P] (%#01n)"
这会扩展为 文件名 - [HH:MM:SS.mmm] (数字).jpg。示例结果。
Gunsmith Cats/ ├── Gunsmith Cats Ep. 01 - [00:00:50.217] (1).jpg ├── Gunsmith Cats Ep. 01 - [00:22:55.874] (1).jpg ├── Gunsmith Cats Ep. 01 - [00:22:55.874] (2).jpg └── Gunsmith Cats Ep. 02 - [00:15:05.778] (1).jpg
好处是它能很好地排序,因为按字母顺序,时间码在集编号内排序。
有关更多信息,请参阅 mpv(1) § screenshot-template。
创建单个截图
使用开始时间(HH:MM:SS)创建单个截图的示例。
$ mpv --no-audio --start=00:01:30 --frames=1 /path/to/video/file --o=/path/to/screenshot.png
截图将保存在 /path/to/screenshot.png。
直播
通过 mpv 流式传输 Twitch.tv
如果安装了 yt-dlp 或 youtube-dlAUR,mpv 可以直接打开 Twitch 直播。
或者,请参阅 Streamlink#Twitch。
另一个基于 Livestreamer 的替代方案是这个 Lua 脚本:https://gist.github.com/ChrisK2/8701184fe3ea7701c9cc
youtube-dl 和格式选择
默认的 --ytdl-format 是 bestvideo+bestaudio/best。对于提供 4K 分辨率的 YouTube 视频,这可能意味着你的设备在软件解码 4K VP9 编码视频时会遇到困难,即使连接的显示器分辨率低得多。
但是,设置正确的 youtube-dl 格式选择器可以轻松解决此问题。在下面的配置示例中,只考虑垂直分辨率为 1080 像素或更低的视频。
ytdl-format="bestvideo[height<=?1080]+bestaudio/best"
如果你想完全避免某个编解码器,因为它无法进行硬件解码,你可以将其添加到格式选择器中。例如,我们可以另外选择忽略 VP9,如下所示。
ytdl-format="bestvideo[height<=?1080][vcodec!~='vp0?9']+bestaudio/best"
如果你偏爱最佳质量的开放编解码器(VP9 和 Opus),请使用。
ytdl-format="((bestvideo[vcodec^=vp9]/bestvideo)+(bestaudio[acodec=opus]/bestaudio[acodec=vorbis]/bestaudio[acodec=aac]/bestaudio))/best"
带搜索的 youtube-dl 音频
要使用 yta 搜索词 在终端模拟器中查找和流式传输音频,请将以下函数放入你的 .bashrc 中。
function yta() {
mpv --ytdl-format=bestaudio ytdl://ytsearch:"$*"
}
系统集成
从 KDE 剪贴板打开视频链接
如果安装了 youtube-dlAUR 或 yt-dlp 并且正在使用 KDE Plasma,可以创建自定义剪贴板操作,以方便地播放来自视频分享网站的链接。
- 打开剪贴板配置菜单(通常通过右键单击系统托盘中的图标)并转到“操作”选项卡。
- 单击“添加操作”,然后输入一个正则表达式来检测你想从中播放视频的网站(例如
^http.+(youtu|twitch)用于检测 YouTube 和 Twitch URL)。 - 单击“添加命令”,在“命令”下输入
mpv %s,在“描述”下输入mpv。
现在,你可以通过按 Ctrl+Alt+r 并从上下文菜单中选择 mpv 来在 mpv 中播放剪贴板中的视频链接。你可能需要转到“高级设置”并从“禁用窗口类型为 WM_CLASS 的操作”部分删除 Firefox。
故障排除
通用调试
如果你在使用 mpv 播放时遇到问题(或者它根本无法运行),你应该首先做的三件事是。
- 从命令行运行 mpv(-v 标志增加详细程度)。如果幸运的话,那里会有错误消息告诉你问题所在。
$ mpv -v video.mkv - 让 mpv 输出一个日志文件。日志文件可能很难梳理,但如果有什么东西坏了,你可能会在那里看到。
$ mpv -v --log-file=./log video.mkv - 在没有配置的情况下运行 mpv。如果这样做运行良好,那么问题就在你的配置中(也许你的硬件跟不上你的设置)。
$ mpv --no-config video.mkv
如果 mpv 运行但运行效果不佳,那么可能值得关注的第四件事是实时统计信息(按 i)以确切了解其性能。
修复卡顿和画面撕裂
mpv 默认使用 OpenGL 视频输出设备设置(如果硬件支持)。在诸如尝试在 4K 显示器上使用 Intel HD4XXX 系列显卡或类似显卡播放视频之类的情况下,你会发现使用任何 OpenGL 输出设置时,视频播放都不可靠,卡顿到有时完全停止,并且伴有严重的画面撕裂。如果你遇到任何这些问题,使用 XV(仅限 Xorg)视频输出设备可能有所帮助。
~/.config/mpv/mpv.conf
vo=xv
甚至可以进一步提高播放性能(尤其是在较低端硬件上),但这在大多数情况下会显著降低视频质量。
可以考虑以下 选项来提高视频播放性能。
~/.config/mpv/mpv.conf
vd-lavc-fast vd-lavc-skiploopfilter=skipvalue vd-lavc-skipframe=skipvalue vd-lavc-framedrop=skipvalue vd-lavc-threads=threads
窗口合成器问题
如 mpv(1) § 窗口 中所述,mpv 默认会在全屏模式下禁用任何活动的窗口 合成器。这样做是为了防止播放过程中潜在的性能问题。
对于像 KWin 或 Mutter 这样的窗口合成器,即使在窗口模式下禁用窗口合成也可以带来优势。这可以通过设置 x11-bypass-compositor=yes 选项来实现。
禁用合成器有两个缺点。
- 重新启用合成器可能会在一段时间内出现卡顿,尤其是在使用 KWin 合成时。
- 合成器提供的任何效果将暂时不可用(直到 mpv 重新启用它),这在 Plasma 中会导致默认应用程序切换器无法工作。
为了规避这些问题,您可以尝试保持合成器启用,使用 x11-bypass-compositor=no。
没有音量条,无法更改音量
在音量图标上滚动鼠标滚轮。
GNOME 屏幕空白 (Wayland)
如果使用 Wayland,mpv 可能不会挂起 GNOME 的省电设置,导致屏幕保护程序在视频播放期间关闭显示器。一种解决方法是将 gnome-session-inhibit 添加到 mpv.desktop 文件中的 Exec= 行的开头。
为了仅在播放期间禁用屏幕保护程序,请使用 mpv_inhibit_gnomeAUR。或者,可以使用基于 gnome-session-inhibit 的 mpv lua 脚本。
io.mpv.Mpv flatpak 应用程序已经包含了 mpv_inhibit_gnome 插件。在 GNOME Wayland 下不尊重光标主题
请参阅 GNOME/Troubleshooting#Cursor size or theme issues on Wayland。
关于 AMD GPU 上缺少 CUDA 库的错误消息
在使用 v0.34.1 及更早版本的 AMD GPU 上使用 VAAPI 硬件加速时,您可能会看到一条持续的错误消息,提示 Cannot load libcuda.so.1。可以通过设置 gpu-hwdec-interop=vaapi 来抑制此消息。
相关错误报告: Github issue #9691,Github issue #8765
此问题已在上游的 pull request #9842 中修复。
如果 PipeWire 被屏蔽,则无法播放音频
如果在 PipeWire 被 屏蔽 的系统上 mpv 崩溃或无法播放音频,并报告没有输出或管道损坏,请将 --ao 选项设置为与您的环境匹配。在 mpv.conf 中设置以实现持久配置。
mpv 将无法从文件开始播放 DVD
如果 mpv 无法在纯 VIDEO_TS/VOB 结构下从文件播放 DVD,则可能是恢复播放位置功能存在问题。请尝试清理 .config/mpv/watch_later 文件夹,或使用 no-resume-playback 选项启动 mpv,或/和设置 save-position-on-quit=no 选项。
修复暂停后恢复播放时的卡顿
如果使用 PulseAudio 时视频出现卡顿,请尝试在 mpv(1) § --pulse-latency-hacks 中讨论的 pulse-latency-hacks 选项。
~/.config/mpv/mpv.conf
pulse-latency-hacks=yes