快速结论: OpenAI 的 Whisper 模型本身不是一个 App——它是一个要在终端里安装、运行的 Python 库,也就是说你得先搞定 Homebrew、正确的 Python 版本、虚拟环境、FFmpeg,而且(很常见)在拿到第一份转录结果之前,先撞上一堆依赖报错。如果你不想碰代码,最快获得同样本地、私密转录体验的办法,是用一款已经内置 Whisper 的 Mac App——比如 Subtitle Studio——完全跳过环境搭建,还附带原生 Whisper 没有的预处理与编辑工具。
如果你搜索过「怎么在 Mac 上运行 Whisper」,然后点进一篇教程,发现正文第一步之前居然还有六个步骤,都还没提到你的音频文件——你没想错。这篇文章会讲清楚为什么会这样、大家一般卡在哪里,以及无需写代码的替代方案。
OpenAI Whisper 是什么(为什么它不是一个 App)
Whisper 是 OpenAI 在 2022 年发布、之后持续更新(large-v3、turbo)的开源语音识别模型。它确实很强——支持 90 多种语言、免费使用,而且完全在你自己的设备上运行,不会把任何音频上传出去。这正是为什么这么多人想自己动手跑一遍。
openai/whisper 的 GitHub 仓库页面——106k 颗星,但这只是一个源代码仓库,没有下载按钮、没有安装包,也没有可以打开的 App
留意这个页面缺了什么:下载按钮、安装包、App 图标。你拿到的其实是一个 Python 源代码文件夹——已经有 106,000 人给这个仓库点了星,但点星并不会在你的 Mac 上装上任何东西。
但这个 GitHub 仓库是一份 研究用代码,不是一款消费级产品。官方安装说明 默认你已经熟悉:
- 安装并管理不同的 Python 版本
- 使用
pip和虚拟环境 - 看得懂 Python 的报错堆栈信息(traceback)
- 单独安装一个和模型本身分开的系统依赖(FFmpeg)
对机器学习研究人员来说,这些要求都不算过分。但对一个今晚就想给 YouTube 视频配好字幕的人来说,门槛实在不低。
「官方」在 Mac 上运行 Whisper 的完整步骤
平心而论,Whisper 的 README 写得相当不错。以下就是从「什么都没装」到「屏幕上出现转录文字」实际需要做的事。
步骤一:安装 Homebrew
如果你还没装 Apple 这套非官方包管理工具,第一步就是先装它:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
步骤二:安装兼容的 Python 版本
Whisper 的依赖链(numba、tiktoken、PyTorch)不支持最新版本的 Python。就本文撰写时来说,Python 3.13 会导致安装失败——你需要 3.10、3.11 或 3.12:
brew install python@3.11
步骤三:创建虚拟环境
为了避免 Whisper 的依赖和系统上其他东西起冲突,官方建议使用一个独立环境:
python3.11 -m venv whisper-env
source whisper-env/bin/activate
步骤四:安装 FFmpeg
Whisper 本身不负责解码音频——它会调用 FFmpeg,而这是需要单独安装的:
brew install ffmpeg
步骤五:安装 Whisper
pip install -U openai-whisper
步骤六:跑出你的第一份转录结果
whisper your-audio.mp3 --model turbo
六个步骤、三个各自独立的安装包、一个你必须提前知道的 Python 版本限制——这时候你还没转录出一个字。而这已经是一切顺利、没出任何差错的版本了。
大家一般卡在哪里(GitHub 和 StackOverflow 上的真实案例)
搜索 openai-whisper 安装问题,会反复看到同一批失败情况。以下是直接引用的真实反馈,没有改写。
「Whisper 无法在 Python 3.13 上使用」
如果你装的是 python.org 上最新版本的 Python,而不是用 Homebrew 指定旧版本,安装会立刻失败:
Getting requirements to build wheel ... error
KeyError: '__version__'
正如讨论区里一条回答直白地指出:「就目前 Whisper 依赖链中已发布、受支持的版本来说,Whisper 无法在 Python 3.13 上使用。」(来源:StackOverflow)解决办法是把 Python 版本降下来、重建虚拟环境——如果你本来就不知道 Whisper 对版本这么敏感,根本不会想到问题出在这里。
明明已经装好了 ffmpeg,却还是提示「找不到 ffmpeg」
这是 Mac 上最常见的 Whisper 报错之一,让人抓狂的地方在于,看起来该做的都做了,报错却依然存在:
FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg': 'ffmpeg'
发帖人其实已经成功执行过 brew install ffmpeg、重装过一次,甚至试过一个 Python 的 FFmpeg 封装库——真正的问题是 FFmpeg 的可执行文件没有出现在 Python 能识别的 PATH 里。(来源:StackOverflow)要诊断 PATH 问题,前提是你得先知道 PATH 是什么。
Mac 没有 CUDA——但大多数教程都默认你有
几乎每一篇讲 Whisper 性能的教程都会提到 CUDA,也就是 NVIDIA 的 GPU 框架。但 Mac 没有 NVIDIA 显卡。Apple Silicon 用的是 MPS(Metal Performance Shaders),而 PyTorch 对 MPS 的支持存在真实、有据可查的缺口:
NotImplementedError: The operator 'aten::isin.Tensor_Tensor_out' is not
currently implemented for the MPS device. ... you can set the environment
variable `PYTORCH_ENABLE_MPS_FALLBACK=1` to use the CPU as a fallback for
this op.
这是一个与 Whisper 同类型的 PyTorch 模型,在 Apple Silicon 上真实出现过的报错。(来源:GitHub — huggingface/transformers #31408)建议的解决办法是让该运算退回 CPU 执行——换句话说,为了修复一个「纯粹因为你用的是 Mac」才会出现的 bug,你要牺牲掉速度。
安装过程中出现 Rust 编译器报错
Whisper 依赖 OpenAI 的 tiktoken 分词器。如果你的平台没有现成的 wheel 包可用,pip 就会尝试从源码编译,而这需要一套你大概率没装过的 Rust 工具链。官方 README 也直接点出了这一点:如果安装失败并显示 No module named 'setuptools_rust',你就需要另外安装 setuptools-rust,甚至可能要装上完整的 Rust 开发环境。只是想跑一个语音转文字模型,却要先装一套编译器工具链。
「更快」的方案需要自己编译源码
原版 Whisper 跑在 PyTorch 上,在 Mac 上明显偏慢,所以常见的建议是换成 whisper.cpp 或 mlx-whisper,发挥出 Apple Silicon 真正的速度。这两者确实更快——但代价是把 Python 环境搭建,换成另一种搭建:
git clone https://github.com/ggerganov/whisper.cpp
cd whisper.cpp
make
./models/download-ggml-model.sh large-v3
./main -m models/ggml-large-v3.bin -f your-audio.wav
这需要 git、一套 C++ 编译工具链,还得手动下载模型文件——怎么看都称不上「无需写代码」。而且就算你顺利编译成功,事情依然可能以很难排查的方式出错。有位老用户在 M4 Mac mini 上,用自己编译的 whisper.cpp 可执行文件批量处理一批文件:在 M1 上「运行得完全正常」,但换到 M4 上,跑几个小时后就「直接停止」输出,没有任何报错,也没有崩溃——他的解决办法是写一个脚本,每小时自动杀掉进程再重启一次。(「Whisper 还在运行,终端里没有任何报错,也没有崩溃……就是不再有任何输出了。」)(来源:Ars Technica OpenForum)
这可不是新手才会犯的错——这是一位经验丰富的用户,仍然需要靠脚本和定时任务才能绕过这个问题。
「安装过程极其不友好」
这条抱怨是针对一款基于 Whisper 的工具,在 GitHub 上提交的 issue,完整概括了非开发者用户的体验:「安装程序极其不友好,下载大文件时不断中断,导致安装不完整,还缺了一个可执行文件……对没有编程能力的人来说,卸载是唯一的选择。」(来源:GitHub — meizhong986/WhisperJAV #85)而这条讨论最终的解决办法,同样是 Python 版本不匹配——是一位陌生网友一步步带着发帖人在终端里操作才解决的。
就算跑起来了,大模型也可能导致内存不足
large-v3 模型大约需要 10 GB 的显存/统一内存才能顺畅运行。在标配 8 GB 或 16 GB 的 MacBook 上,这个门槛相当紧张,足以让进程直接崩溃,逼你退而求其次换成更小、准确率更低的模型。
就算能跑起来,Whisper 本身也不等于字幕
假设你排除万难,成功跑出一句 whisper your-video.mp4 --model large-v3 这样的命令。你拿到的是一份 转录文字,不是字幕——对视频来说,这是完全不同的工作:
- 没有预处理。 Whisper 会原封不动地接收你的原始音频。如果有背景音乐、房间回声,或者嘈杂的片头,模型完全不知道该忽略——而且它有据可查的问题是,在静音或音乐段落会产生幻觉(重复句子、编造从未出现过的台词),而不是老实承认自己不确定。
- 时间轴只是大概。 Whisper 内置的时间戳大约四舍五入到最近一秒——做转录文字没问题,但字幕需要在有人开口的那一刻精准出现。
- 没有换行逻辑。 原始输出常见冗长连续的段落,或者句子中间尴尬断开,而且除了打开
.srt文件用文本编辑器手动改,没有任何工具能处理。 - 没有翻译功能。 如果你需要第二语言的字幕轨,那完全是另一套工具和流程。
- 没有编辑界面。 一切都要在终端里完成。没有波形图、没有拖拽调整、也没有撤销按钮。
换句话说,解决了安装问题,不代表解决了字幕问题。你最终还是需要另一个工具,才能把粗糙的转录文字变成真正能发布的东西。
最简单的方法:彻底跳过 Python,直接用 Subtitle Studio
Subtitle Studio 运行的是同一类 Whisper 模型,但包装成一款 原生 Mac App:下载、把视频拖进去,就能拿到字幕。不用终端、不用管理 Python 版本、不用自己排查 pip install 的报错。
Subtitle Studio 编辑器,波形图、字幕列表和视频预览都与语音对齐
除了彻底省去终端安装之外,你还能获得:
- 针对 Apple Silicon 调校的模型。 转录模型专门为 M 系列芯片和 Metal 加速做了优化——不是一套通用的 PyTorch,一遇到 MPS 不支持的运算就退回 CPU。
- 转录前的预处理。 语音活动检测(VAD)和降噪会在 Whisper 处理音频之前先清理好,让背景音乐和房间噪音造成的漏字、幻觉文字都大幅减少——这正是原生 Whisper 最为人诟病的问题。
- 幻觉过滤。 通过置信度评分和语音活动分析,检测并移除模型在静音或音乐段落编造出的幽灵文字,而不是直接把它们塞进你的字幕文件。
- 强制对齐。 转录完成后,强制对齐器会把文字以单词级别对应回音频波形,取代 Whisper 那种约 1 秒四舍五入的时间戳,换来帧级精准时间轴。
- 基于 NLP 的分段处理。 原始转录文字会在自然的短语边界重新分段成易读的字幕行,而不是按任意字符数硬切。
- 内置编辑工具。 拖拽调整字幕的时间、拆分过长的一行,或合并零碎的片段——不用导出到文本编辑器。
Subtitle Studio 重新对齐工具,字幕块正被拖动以匹配音频波形
- 本地翻译。 把完成的字幕翻译成 25 种语言,完全离线运行,不需要 API 密钥,也没有按字计费——可以参考我们的离线字幕翻译深度介绍,了解本地模型是如何运作的。
Subtitle Studio 翻译面板,显示语言选择器和 AI 供应商选项
你的音频和视频永远不会离开你的 Mac——和自己运行 Whisper 一样的隐私保障,只是省去了搭建环境的麻烦。
Subtitle Studio
一次性买断,完全离线运行于你的 Mac。
Whisper 命令行 vs Subtitle Studio 并排对比
| OpenAI Whisper(命令行) | Subtitle Studio | |
|---|---|---|
| 环境搭建 | Homebrew、Python 版本管理、虚拟环境、FFmpeg、pip install | 下载 App、直接打开 |
| 需要写代码 | 需要——终端命令、偶尔要排查依赖问题 | 不需要 |
| Apple Silicon 加速 | 取决于 PyTorch 的 MPS 支持程度(存在缺口) | 内置、Metal 优化模型 |
| 音频预处理 | 没有——原始音频直接送入模型 | 转录前先做 VAD + 降噪 |
| 幻觉处理 | 没有——原始模型输出 | 自动检测并过滤 |
| 时间戳精度 | 约 1 秒粒度 | 单词级强制对齐 |
| 字幕换行 | 没有——需要手动清理 | 自动 NLP 分段 |
| 编辑工具 | 导出文件后用文本编辑器 | 波形式拖拽重新对齐、拆分、合并 |
| 翻译功能 | 未内置 | 内置、离线、25 种语言 |
| 输出格式 | .txt、.srt、.vtt | .srt、.fcpxml |
| 费用 | 免费(付出的是你的时间) | 一次性买断 |
结论
如果你是开发者,想把 Whisper 写进自动化流程、批量处理成千上万个文件,或者自己微调模型,官方命令行工具就是正确的选择——那份灵活性正是它的设计初衷,而搭建成本也只需要付出一次。
如果你只是想在不打开终端的情况下,拿到准确、可以直接发布的视频字幕,无代码路径能让你更快抵达目标:同样的底层技术,省去环境管理的麻烦,再加上一整套原生 Whisper 从未打算涵盖的字幕专用工具。
Subtitle Studio
不需要 Python、Homebrew 或终端,把视频拖进去就好。
常见问题
在 Mac 上运行 Whisper 需要懂 Python 吗?
要使用官方的 openai-whisper 包,答案是需要——你得安装 Python、管理虚拟环境,并在终端里执行命令。如果你不想碰代码,像 Subtitle Studio 这类 App 运行的是同一类模型,但提供拖放式界面,完全不需要写代码。
为什么 Whisper 在我的 Mac 上安装失败?
最常见的原因是:使用了不受支持的 Python 版本(目前 3.13 会导致安装失败,请用 3.10 到 3.12)、就算装了 FFmpeg 也没有出现在系统的 PATH 里,以及缺少编译 tiktoken 依赖所需要的 Rust 编译器。这几种情况都会产生不同、而且相当难懂的报错信息。
Whisper 会用到我 Mac 的 GPU 吗?
会,通过 PyTorch 中 Apple 的 MPS(Metal Performance Shaders)后端,但 MPS 对 Whisper 部分运算的支持存在有据可查的缺口——部分算子尚未实现,会悄悄退回速度更慢的 CPU 执行。whisper.cpp 和 mlx-whisper 通常能更高效地利用 Apple Silicon,但两者都需要自己编译源码。
openai-whisper、whisper.cpp 和 mlx-whisper 有什么区别?
openai-whisper 是 OpenAI 官方的 Python 包——用 pip 安装最简单,但由于通过 PyTorch 的 MPS 后端运行,在 Apple Silicon 上速度会慢一些。whisper.cpp 是一个 C++ 重新实现的版本,直接调用 Metal,速度明显快很多,但你得自己克隆仓库并编译。mlx-whisper 使用 Apple 自家的 MLX 框架,在 M 系列芯片上通常是最快的选择,同样需要类似的源码编译步骤。这三者都不包含音频预处理、字幕编辑或翻译功能——它们是转录引擎,不是字幕工具。
有没有免费、又不用写代码就能在 Mac 上运行 Whisper 的方法?
Whisper 模型本身免费且开源,但要在完全不需要自己搭建环境的情况下运行,就需要一款打包好的 App,而不是原始的 Python 库——总得有人替你处理安装、模型管理和界面。Subtitle Studio 就是专为这个目的打造的 Mac App:不需要终端、不需要管理依赖,一次性买断取代订阅制。
Subtitle Studio 用的是不是和命令行一样的 Whisper 模型?
Subtitle Studio 用的是一个经过优化、微调的 Whisper 模型,专门针对视频创作者实际会遇到的混合音频——音乐叠加对白、房间噪音、多语言语音——并配合 Apple Silicon 加速。它被封装进一整套流程之中(预处理、幻觉过滤、强制对齐、NLP 分段),而不是你用 pip install openai-whisper 拿到的那个独立模型。想进一步了解这套流程如何影响实际输出效果,可以参考我们的 MacWhisper vs Subtitle Studio 对比文章。
免费体验Subtitle Studio
买断制,无订阅,完全离线运行于你的Mac。

