Refold Drafts MPV 为语言学习量身定制的视频播放器(2020)

,

(本系列内容整理自 Matt 的相关视频。文本由语音转录翻译而成,可能存在一定偏差)
视频链接:mpv: The Best Video Player for Language Learning
注:该视频发布于 2020 年

  • MPV 是一款免费开源的视频播放器,其高度可定制性和脚本支持使其非常适合语言学习者。
  • 通过配置文件和脚本,MPV 可以实现快速查词、制作 Anki 卡片等强大功能,提升学习效率。
  • 本文将指导你安装和配置 MPV,并简要介绍其核心功能和脚本的初步使用方法。

MPV 简介

MPV 是一款免费的开源视频播放器,它对于语言学习来说非常棒,主要有三个原因。

  1. 它恰好自带了一些对语言学习者非常有用的功能。
  2. 它的可定制性非常强,你可以调整任何设置,使其完全符合你的喜好。
  3. 最重要的一点是,它支持用户编写的脚本。语言学习社区里的一些人已经创建了一些非常强大的脚本,这些脚本使得使用弹出式词典和即时制作 Anki 卡片变得非常容易。

所以,在这个视频里,我将向大家展示如何安装和使用 MPV。我还会稍微介绍一下如何使用其中一些脚本,但关于脚本更深入的细节,我可能会留到将来的视频中再讲,因为那会涉及到很多细节。

首先,我想向大家展示如何设置这个程序,因为它并非市面上最用户友好的播放器。不过我要说的是,一旦你弄清楚了它的工作原理,用起来其实还不错。但我自己也花了一些时间才搞明白如何安装这个程序,所以我希望能帮大家省去这个麻烦。

在我们开始之前,有两点需要注意:

  1. 虽然你可以在任何操作系统上使用 MPV,但我个人用的是 Windows 电脑,所以我只能演示如何在 Windows 上进行设置。
  2. MPV 提供的大部分语言学习优势都高度依赖于你有配套的目标语言字幕文件,用来配合你要观看的目标语言视频。当然,即使没有字幕文件,你仍然可以从 MPV 的一些功能中受益,但我必须强调,拥有视频文件和你想要观看的目标语言的配套字幕文件非常重要。这将让你能够实现很多很酷的功能,我稍后会展示。

好了,让我们直接开始安装吧。

安装 MPV

要安装 MPV,你需要访问 mpv.io,这是官方网站。

  1. 进入官网后,点击顶部的“Installation”(安装)。
  2. 在这个页面上,如果你用的是 Windows 电脑,点击 Windows 分类下的第一个链接,写着“Windows builds by shinchiro”。
  3. 这会带你到另一个页面。在这个页面上,点击“64-bit”(除非你的系统是 32 位的,不过现在应该很少了)。
  4. 在接下来的页面,点击列表顶部的第一个链接,这通常是最新的版本。
  5. 下载这个 .7z 文件(它类似于 .zip 压缩文件)。
  6. 下载完成后,使用你常用的解压缩软件(如 7-Zip 或 Bandizip)打开 .7z 文件。
  7. 创建一个名为 MPV 的新文件夹。
  8. 将 .7z 文件里的所有内容解压到你刚刚创建的 MPV 文件夹中。
  9. (可选)现在你可以删除下载的 .7z 文件了。

如果你想直接使用,可以打开 MPV 文件夹,双击 mpv.exe 来运行播放器。你可以将视频文件拖放到窗口中播放。

不过,你也可以将 MPV 安装到你的系统上,这样做有几个好处。

要安装 MPV:

  1. 将你创建的 MPV 文件夹移动到你的程序文件目录(通常是 C:\Program Files)。你可能需要管理员权限。
  2. 打开你移动到 Program Files 里的 MPV 文件夹,然后进入 installer 子文件夹。
  3. 找到 mpv-install.bat 文件,右键点击它,选择“以管理员身份运行”这一点很重要,否则无法成功安装。

安装完成后,MPV 就集成到你的系统中了。这会带来两个主要好处:

  1. 设置文件关联:你可以将视频文件类型(如 .mkv, .mp4)默认设置为用 MPV 打开。例如,如果你的 .mkv 文件默认是用 VLC 播放器打开的,你可以右键点击文件 → 属性 → “打开方式”旁边点击“更改” → 选择 MPV。这样以后双击这类文件就会用 MPV 打开了。
  2. 脚本安装路径:安装到系统后,脚本的安装路径会固定,便于管理。本教程后续会假设你已经将 MPV 安装到系统,而不是在本地文件夹运行。

配置 MPV

正如我在开头提到的,MPV 的可定制性非常强。你可以控制程序的几乎每一个方面。但问题是,你不是通过像许多普通程序那样的图形用户界面来控制设置的。

相反,你定制设置的方式是:创建一个文本文件,在其中按照特定的语法写下你想要的所有设置,然后将这个文件保存到 MPV 的特定目录中。这就是控制设置的方法。

如果你不是程序员,这可能听起来很奇怪和陌生。对我来说也感觉挺奇怪的,因为我自己也不是程序员。但我会引导你完成一些好的初始设置,这些设置应该能满足你的大部分需求。我个人并没有深入研究所有设置,只是采纳了一些其他人的建议,并这里那里复制了一些配置。但我找到了一个对我来说效果很好的配置,所以我建议你直接复制我的配置,这对你应该也适用。

当然,如果你是技术比较强的用户,你可以去 MPV 手册的“CONFIGURATION FILES”(配置文件)部分,自己研究如何进行各种设置。因为所有信息都在手册里,只是不太用户友好。

基本步骤如下:

  1. 打开一个文本编辑器(如记事本)。

  2. 将以下文本粘贴到文本文件中(这段文本我也会放在视频描述里):

      `# 使字幕可见性设置生效 sub-visibility=yes # 启用字幕自动模糊匹配 sub-auto=fuzzy # 设置次要(第二)字幕语言为英语 slang=eng # 设置音频文件自动模糊匹配 audio-file-auto=fuzzy # 退出时保存播放位置 save-position-on-quit=yes # 将视频画面适配到大于窗口 100% x 100% 的尺寸(即允许放大) autofit-larger=100%x100% # 设置窗口几何大小为屏幕的 50% 宽度和 50% 高度 geometry=50%:50% # 设置默认字幕字体(如果字幕文件本身没有指定或你想覆盖) sub-font="SimSun"  # 设置默认字幕大小 sub-font-size=50`
    

    IGNORE_WHEN_COPYING_START

    content_copy download

    Use code with caution.

    IGNORE_WHEN_COPYING_END

  3. 修改字体和大小(可选)

    • sub-font=“SimSun”:我这里设置成了 “SimSun”(宋体),因为我用 MPV 学中文。你可以根据你学习的语言选择合适的字体(确保你的系统已安装该字体),或者直接删除这一行来使用 MPV 或字幕文件自带的默认字体。如果你对字体很讲究,可以在这里指定你喜欢的字体名称。
    • sub-font-size=50:这是字幕大小,50px 可能有点大,你可以改成你觉得合适的大小,比如 40 或 30。
  4. 保存配置文件

    • 点击“文件” → “另存为”。
    • 在“保存类型”下拉菜单中,务必选择“所有文件 (.)”
    • 将文件名命名为 mpv.conf(注意是 .conf 后缀,不是 .txt)。
    • 保存位置:你需要找到正确的目录。最快的方法是在文件管理器的地址栏输入 %AppData% 然后按回车,这会带你到 AppData\Roaming 目录。在这里找到(或创建一个)名为 mpv 的文件夹,然后将 mpv.conf 文件保存在这个 mpv 文件夹里。
    • 完整路径通常是 C:\Users\你的用户名\AppData\Roaming\mpv\mpv.conf。
  5. 完成!下次你打开 MPV 时,这些设置就会生效。如果你以后想调整设置,只需回到这个目录,用文本编辑器打开 mpv.conf 文件,按照 MPV 手册里的语法进行修改即可。

基本用法

好了,既然我们设置好了配置文件,让我们快速了解一下实际使用 MPV 作为视频播放器是怎样的,然后我们再谈谈脚本如何工作。

我这里有一个普通的动画视频文件(MP4 格式)和一个配套的字幕文件(ASS 格式)。

  • 打开视频:双击视频文件(假设你已经设置了文件关联),MPV 就会打开并播放。
  • 记忆播放位置:你会注意到的第一件事是,它记得你上次观看的位置。这是我们在配置文件中设置的功能 (save-position-on-quit=yes),非常方便。比如我看到 16 分钟,退出后再回来,它会从 16 分钟继续播放。
  • 自动加载字幕:如果字幕文件名和视频文件名完全相同(除了扩展名),MPV 会自动加载字幕。你也可以手动将字幕文件拖放到 MPV 窗口来加载。
  • 极简界面:MPV 的界面非常简洁,甚至没有菜单栏。底部有一些基本控件:播放/暂停按钮、上一个/下一个视频按钮、进度条、音轨选择、字幕轨选择、静音按钮。
  • 热键是关键:除了底部的控件,MPV 的大部分操作都通过键盘快捷键(热键)完成。要高效使用 MPV,你需要记住几个关键的热键。虽然 MPV 手册(我会在描述中提供链接)有完整的列表,并且你也可以通过配置文件自定义所有热键,但掌握以下几个就足够入门了。

常用热键备忘单:

  • 播放/暂停:
    • 空格键:播放/暂停(和大多数播放器一样)
    • P:播放/暂停
    • 鼠标右键单击:播放/暂停
  • 时间跳转 (Seeking):
    • Shift + ←/→:后退/前进 1 秒 (精确跳转)
    • ←/→:后退/前进 5 秒
    • ↓/↑:后退/前进 60 秒 (1 分钟)
    • Ctrl + ←/→:跳转到 上一个/下一个字幕时间点 (语言学习超级有用!)这个功能在你错过一句想重听时特别方便。当然,前提是加载了字幕文件。
  • 播放速度:
    • [ / ]:减慢/加快播放速度 10%
    • { / } (即 Shift + [ / ]):播放速度减半/加倍
    • Backspace (退格键):重置为正常播放速度 (1.0x)
  • 截图:
    • s:截取当前画面,包含字幕
    • S (即 Shift + s):截取当前画面,不包含字幕。这很方便,你可以根据是否需要字幕来选择。
  • 字幕控制:
    • u:切换是否 覆盖字幕文件自带样式。如果开启覆盖,将使用你在 mpv.conf 中设置的字体和大小;否则使用字幕文件本身的样式(特别是对 ASS/SSA 这类带复杂样式的字幕)。
    • j:循环切换可用的字幕轨道。如果你的视频文件内嵌了多种语言字幕,或者你加载了多个外部字幕文件,可以用这个键切换显示哪一个。
    • v:切换字幕的可见性(显示/隐藏)
      重要区别:j 是选择 哪个 字幕轨道处于活动状态,而 v 是控制当前活动的字幕轨道 是否显示 在屏幕上。这个区别对于语言学习非常有用!你可以:
    1. 用 j 选择好你的目标语言字幕轨道。
    2. 用 v 先隐藏字幕,进行听力练习(“看生肉”)。
    3. 当你听不懂或想确认时,可以暂停,用 Ctrl+← 回到那句字幕的开头。
    4. 按 v 显示字幕,看懂后再按 v 隐藏。
    5. 继续播放。整个过程非常流畅,无需反复加载或寻找字幕。

脚本

好了,最后我们来简单谈谈脚本。

MPV 的脚本就像 Anki 的插件 (add-ons) 或 Chrome 浏览器的扩展 (extensions)。它们是任何用户都可以编写并放到网上供他人使用的程序附加功能。正是这些脚本,使得 MPV 成为语言学习的强大工具,特别是因为有很多脚本能让你非常快速地制作高质量的 Anki 卡片。

就像我在视频开头说的,为了不让这个视频太长,我不会详细介绍具体脚本的使用方法,那会留到未来的视频里。但我会向你展示如何设置脚本,并演示一个脚本能带来的很酷的功能。

你现在屏幕上看到的是 MPV 用户脚本的 GitHub Wiki 页面,这里列出了很多公开的用户脚本。我会在描述中放上链接,你可以自己浏览,看看有没有你觉得有用的。

我今天要介绍的这个脚本叫做 mpvacious。这个名字是 MPV 和 Voracious 的结合,因为 Voracious 是另一个可以让你快速制作 Anki 卡片的程序。

这个 mpvacious 脚本有很多功能,具体细节我们以后再说。我现在只演示它的一个小小的、几乎算是“附带”的功能,以及如何用它做一件很酷的事情。

安装 mpvacious 脚本:

  1. 访问 mpvacious 的 GitHub 仓库页面(链接在描述中)。

  2. 点击绿色的 “Code” 按钮,然后选择 “Download ZIP”。

  3. 下载 ZIP 文件并解压。

  4. 在解压后的文件夹里,找到名为 subs2srs.lua 的文件。这个 .lua 文件就是脚本本身。

  5. 将 subs2srs.lua 文件复制或移动到 MPV 的脚本目录。这个目录就是我们之前放配置文件的那个 mpv 文件夹里面的 scripts 文件夹。

    • 路径通常是:%AppData%\mpv\scripts (即 C:\Users\你的用户名\AppData\Roaming\mpv\scripts)。
    • 如果 scripts 文件夹不存在,你需要手动创建它(全小写)。
  6. 完成!把 .lua 文件放进 scripts 文件夹后,下次启动 MPV 时,脚本就会自动激活。

配合使用的浏览器设置 (重要!)

要实现我接下来要演示的功能,除了安装 mpvacious 脚本,你还需要做另外一件事:

  1. 安装 Clipboard Inserter 浏览器扩展

    • 你需要安装一个名为 “Clipboard Inserter” 的浏览器扩展。它有 Chrome 版本和 Firefox 版本(我会在描述中提供链接)。
  2. 配置 Clipboard Inserter 扩展

    • 安装后,需要进行一项关键设置。在 Chrome 中,点击浏览器右上角的拼图图标(扩展程序),找到 “Clipboard Inserter”,点击旁边的三个点,选择“管理扩展程序”。
    • 在扩展程序的详细设置页面,向下滚动,找到并打开“允许访问文件 URL” 的开关。如果不打开这个选项,后续功能将无法工作。 (Firefox 的设置应该类似,找到允许访问本地文件的选项)。
    • (可选)你也可以点击扩展程序图标旁边的图钉,将它固定在工具栏上方便访问。
  3. 访问 Text Hooker 页面并激活扩展

    • 打开浏览器,访问 texthooker.com。这个网站是我专门为此目的搭建的一个极其简单的页面,它本身是空白的。
    • texthooker.com 这个页面上,点击浏览器工具栏上的 Clipboard Inserter 扩展图标。你会看到一个开关或提示,确保它显示为 “ON”(开启)。你需要为这个特定网站激活它。

工作原理和演示:

现在设置完成了,它是如何工作的呢?

  1. 当你用 MPV 播放带有字幕的视频时,mpvacious 脚本有一个功能叫做“剪贴板自动复制 (Clipboard autocopy)”。你需要先在 MPV 中激活它:

    • 按 A 键打开 mpvacious 菜单。
    • 按 T 键切换“Clipboard autocopy”的状态,确保它显示为 “enabled”(已启用)。
    • 再按 A 或 Esc 关闭菜单。
  2. 一旦“剪贴板自动复制”启用,mpvacious 脚本会在 MPV 显示每一行新字幕时,自动将这行字幕的文本复制到你的系统剪贴板

  3. 同时,你在 texthooker.com 页面激活的 “Clipboard Inserter” 扩展会持续监测你的剪贴板。一旦剪贴板内容发生变化(即 mpvacious 复制了新的字幕行),这个扩展就会自动将剪贴板里的文本插入(粘贴)到 texthooker.com 页面上

效果就是:当你在 MPV 中观看视频时,每一句字幕都会实时出现在 texthooker.com 这个网页上!

这有什么用呢?

  • 沉浸式观看与查词:你可以将 MPV 全屏(或放在一个屏幕),texthooker.com 页面放在另一个屏幕(或者需要时用 Alt+Tab 切换)。你可以隐藏 MPV 本身的字幕 (v 键),专注于听。当你遇到听不懂的词或句子时,只需暂停视频,然后切换到 texthooker.com 页面,你就能看到最近播放的所有字幕行。然后你就可以方便地使用像 Yomichan 这样的弹出式词典在网页上查词了!
  • 保留上下文:因为 texthooker.com 会累积显示字幕行,你可以轻松看到当前句子的上下文。
  • 制作 Anki 卡片的基础:虽然 mpvacious 有更直接的制作 Anki 卡片的功能(未来视频会讲),但即使只用这个“剪贴板自动复制”+“Clipboard Inserter”的组合,你也可以很方便地从 texthooker.com 页面复制文本和释义来手动制作卡片。

所以,这个组合提供了一种非常酷的方式,让你可以在“看生肉”的同时,又能方便地查阅和理解字幕内容。

这就是 mpvacious 脚本带来的一个很棒的功能预览。

(视频结尾有文字:抱歉动画场景有些尴尬;我是随机选的这一集)

(编辑后补充说明):编辑时我发现我没有解释清楚刚才到底发生了什么。简单说,我刚才演示的设置是这样工作的:首先,mpvacious 这个 MPV 脚本,当你启用“剪贴板自动复制”后,它会把 MPV 中出现的每一行字幕都复制到你的系统剪贴板。然后,我们安装的那个叫 Clipboard Inserter 的 Chrome 扩展,会把你剪贴板里的任何内容——也就是刚被复制的字幕——插入到当前打开的 texthooker.com 页面里。而 texthooker.com 网站本身只是一个带格式的空白文本页面,专门用来让 Clipboard Inserter 扩展把文本注入进去。所以,基本上就是这样运作的:只要 Clipboard Inserter 扩展在 texthooker.com 页面上是开启状态,任何复制到剪贴板的内容都会显示在那个页面上。