Souvoix · Official Website · Mac App Store · Watch Demo


我最近上架了自己的第一款 macOS App,Souvoix。Souvoix 这个名字来自法语单词 sous 和 voix,分别有「在……之下」和「声音」的意思。我想用这个名字表达软件的核心功能:把声音转化为可以阅读和翻译的文字,生成双语字幕。

它适合希望用来看外语生肉视频的人。我会说,现在用 LLM 来进行翻译绝对是性价比最高的用途之一。Google 的 LLM 在翻译字幕的能力上尤其出色,一个视频通常只要几毛钱,甚至几分钱。

这个软件最初起源于我自己的需求。我需要学法语,而法语有非常多丰富的视频资源,比如 ARTE 纪录片之类的。只是我的水平还无法完全理解这些内容,我只能看那些别人制作了字幕的视频,而无法去 access 更广泛的无字幕视频。所以,我会用脚本来 launch Whisper 生成字幕,并用 LLM 翻译,which 我发现效果特别好。除了法语,也包括英语。英语不是我的母语,翻译字幕也可以让我理解一些非我本专业的视频,比如医疗等等。

让我能够 access 全世界各种语言的视频,确实是我觉得 AI 给我带来的最大好处之一。而且这是 scalable 的,是广泛性的。它不止能够对学一种语言有帮助,而是对学几乎任意语言都有帮助。我的母语是中文,相对来说,各种生肉视频都有比较多的翻译,但我相信,对于一些使用人数更少的语言,能够自己制作翻译字幕可能会有更大的帮助。

独立开发也是我一直想做的事情,所以我希望以此来尝试其可能性,毕竟效果确实非常棒。To be honest,如果你会计算机的话,完全可以用脚本来做这个事情,但对很多人来说,GUI 是更方便的,所以我把它做成了一个简单的 Souvoix 软件。

我 appreciate 简洁的软件设计,而不仅仅是能用就行,所以它完全用 Swift 和 SwiftUI 原生开发。我自己 design 了整个架构,也很享受这个过程,而不仅仅是简单地把脚本转换成一个应用。

我其实一开始还尝试过一些别的形式的软件,比如实时字幕翻译,但我发现在我的 M3 MacBook Pro(32GB 内存)上,很难做到又快又好的转录,更别提还有额外的一步翻译了。Whisper 可以转录多种语言,但它内置的语音翻译任务主要是翻译成英语,而不能直接翻译成任意目标语言。

想要有更好的实时转录 + 翻译,至少在我使用的设备和测试过的模型上,还无法同时达到我想要的实时性和翻译质量。对于我来说,质量更重要,所以我放弃了实时字幕这个场景。但等未来时机更成熟,我相信本地(而非云端)的实时字幕 + 翻译一定是有价值的。(我不得不说,云端服务,比如 Google Meet 的字幕质量真的很烂。)

另一点是翻译,我会推荐使用云端 LLM 进行翻译,尤其是 Gemini Flash 和 Pro 系列。如果你需要更精准的翻译,用 Pro;普通的用 Flash 就足够了。它们非常听话、严谨,而且又便宜,可以做到字幕一一对应,而这就是最难的地方。

在我的测试中,很多模型,包括 OpenAI 和 Anthropic 的一些模型,都会出现字幕条目错位或数量不匹配的问题,本地小模型更容易出现这类错误。不过我也知道,让用户自己准备 API Key 会阻碍一些用户,但是我确实并不想负担庞大的 API 开销,so 这是最轻便、也最给用户自由的方式了。

Anyway,这是我做出来的第一款软件。我不太确定到底能不能给别人带来便利,但至少我自己每天都会使用它,我已经为此感到满意和高兴。

它是我的语言学习 workflow 的一部分,之后可能我也会考虑推出 workflow 中其他部分的软件。