Subtitles · 实时翻译

你读得懂的字幕,
在这句话说完之前。

Subtitles 会把 Mac 播放的内容写下来。从 1.3 版起,它还能边收到边翻译,在它听到的十六种语言中的任意两种之间,就在这台机器上,走 Apple 的翻译能力。为了翻译并没有任何东西被上传,而这也是整件事里唯一值得做的做法。

14 天退款,不问缘由

一次性 $9 · 翻译需要 macOS 15,其余一切 14.2 即可 · Apple Silicon

菜单里的两项

Translate To 就在语言选择器下面,默认停在 Off。选一个目标语言,从下一句起字幕就以那种语言出现。紧挨着的 Translation Timing 决定一句话还没说完时你看到什么,而这恰恰就是整个设计难题。

Subtitles 的菜单,Translate To 和 Translation Timing 就在 Language / Models 下面
在 macOS 14 上这两项不是变灰,而是根本不出现。

难的是那句没人说完的话

翻译一句已经说完的话很快:在这台硬件上是 40 到 125 毫秒,和一个人把这句话说完所需的时间相比不值一提。真正的问题是,在那句话说到末尾之前的那几秒里,屏幕上该有什么,而这没有一个对所有人都成立的答案。所以有两种,选择权在你。

Live, Then Settle

最后一秒的语音每次更新都会重译,并以压暗的样子显示,直到稳定下来。压暗的文字还可能改,清晰的已经定了。你读到的是一页基本不动的文字,代价是最新的那几个词看着像临时的,而它们确实是。

Always Live

每次更新都会重译全部内容。没有什么落在说话人后面,也没有什么被压着不出,代价是你已经读过的一行,可能在句子说到那个改变一切的词时,当着你的面被改写。

这两种之下还有一条不可选的规则:翻译的单位是完整的分句,绝不是字幕块。浮层是在文字放不下的地方分页的,而那多半落在句子中间;单独拿去翻译的片段会丢掉词格、丢掉性数一致,或者丢掉说话人还没说到的那个动词。所以翻译的单位和显示的单位是两回事,分页发生在之后,落在已经通顺的文字上。

一块装满并翻页的字幕,会从它最后显示过的那个分句重新开始,而不是从溢出去的那个词开始,这样断开处还有一行可以重新抓住,而不是硬生生一刀切下。只在它翻得很快时才这样:一块已经停留到足够读完的字幕,本身就已经给过你这段时间了。

按住 ,原文就回来了

翻译要拿走的,正是你原本在听的东西。按住 就把它还回来:当前的字幕块和 那一叠会一起切到说话人的语言,你按多久就持续多久。你看的时候翻译仍在下面继续,所以松手回到的是当下的文字,而不是你离开时的那张定格;而且每种语言各有各的历史,这一叠永远不会把两者混在一起。

正在学这门语言的人来说,这才是用得上的方式:跟丢了就读自己的语言,其余时间什么都不用按。

每一对语言,都不必绕道英语

十六种语言组成 240 个有序组合,而且每一个都能用。这就是这里的翻译是第二道工序、而不是识别器上的一个设置的原因:边转写边翻译的模型是按译入英语、译出英语训练的,法语到德语就得绕道英语,而这些语言里有好几种压根不在它们的清单上。把已经成形的文本交给一个覆盖全部组合的翻译器,代价是几十毫秒,而且谁都不落下。

在自动识别下,源语言取自识别器自己的语言标记,它一两个词就能确定,而不是让翻译器一句一句去猜。

照样没有任何东西离开这台 Mac

音频从来没出去过,译好的文字也不会。它走的是 Apple 的 Translation 框架,也就是 macOS 其余部分用的那套设备端翻译,所以这里没有服务器,没有要保管的密钥,也没有要注册的账号。唯一一次动到网络,是第一次使用时 macOS 询问要不要下载某个语言对,这件事它给自己的翻译也照做;此后语言对就在硬盘上,再没有什么要取的了。

两种情况下都不会写下任何东西。译过的字幕出现在屏幕上,然后就消失了,和没译过的一样,而隐私页面之所以短,还是一直以来的那个原因。

在你真正依赖它之前值得知道的

  • 只有这个功能需要 macOS 15 或更高版本。Apple 的翻译能力是在那里才有的。在 14.2 上,应用照样为它一直以来能处理的一切做字幕,只是那两项不在菜单里,而不是变灰。
  • 它翻的是听到的内容,不是说出口的内容。识别器听错的名字,会被忠实地译成一个错的名字。错误不会在第二道工序里互相抵消;在最看重准确度的场合,把说话的语言定死、而不是留给自动识别,才是真正管用的设置。
  • 凡是有人写好的字幕,都比这个好。有人写过、校过、对过时间轴的翻译每次都赢过机器翻的。这东西是为从来没有过这种翻译的音频准备的:那通电话、那次 huddle、那堂课、那集播客、那段只剩原声轨的视频。
  • 一次只有一个方向。只有一个目标语言,而不是一对,所以一场两种语言的通话会统一译成你的那一种,至于实际说的是什么,用 看。

关于翻译的问题

它能在哪些语言之间翻译?
它能做字幕的十六种语言中的任意一种,译到其余十五种中的任意一种:英语、西班牙语、法语、意大利语、葡萄牙语、德语、荷兰语、土耳其语、俄语、阿拉伯语、印地语、日语、韩语、越南语、乌克兰语和普通话。这是 240 个有序组合,而且没有一个在中途绕道英语。
音频会离开我的 Mac 去翻译吗?
不会。音频本来就不出去,文字也一样:翻译走的是 Apple 的 Translation 框架,它在设备上运行。第一次用某个语言对时,macOS 可能会问你要不要下载,就像它给自己的翻译做的那样;此后语言对就在硬盘上,应用不会有任何一次网络请求。
两种节奏有什么区别?
Live, Then Settle 每次更新都重译最后一秒的语音,并把它压暗直到稳定:清晰的文字已经不再变,压暗的还可能动。Always Live 每次更新都重译全部内容:不会落在说话人后面,但屏幕上的任何内容都还可能被改写。读起来更安稳的是 Live, Then Settle,永远不让你落后一句的是 Always Live。
能同时看到原来的语言吗?
按住 。当前的字幕框和 那一叠会一起切到说话人的语言,按住多久就持续多久,翻译在下面继续跑,所以松手看到的是当前的文字,而不是你离开时的那张定格。每种语言各有各的历史,所以这一叠永远不会把两者混在一起。
翻译需要哪个版本的 macOS?
macOS 15,因为 Apple 的 Translation 框架是在那里才有的。做字幕本身在 14.2 上照样可用,只是那里的 Translate To 和 Translation Timing 不是变灰,而是根本不在菜单里。
这和流媒体平台上的字幕是一回事吗?
不是。流媒体平台给的是有人写过、校过、对过时间轴的翻译,凡是有的场合,那都比这个好。这东西是为从来没有过这种翻译的音频准备的:一通电话、一次 huddle、一堂课、一集播客、一段只剩原声轨的视频。

十六种语言进去,你读得懂的那一种出来。

14 天退款,不问缘由

一次性 $9,包含日后所有更新 · macOS 14.2 或更高版本 · Apple Silicon
无限量实时字幕,只要这台 Mac 还在你手上。不用买时长,不用注册账号,不用订阅。