30 秒看懂
Matthew Berman 演示 Charlie Holtz 的 Narrator 项目,该项目结合了 GPT-4 Vision 和 ElevenLabs 语音合成。他介绍设置过程,创建一个类似 David Attenborough 的声音,并排查输出问题。演示生成了音频文件,但终端内直接播放失败;文中界面和价格均为当时的信息。
- 1自然纪录片风格旁白开场示例以自然纪录片的风格解说一个人及其周围环境。
- 2视觉与语音项目用 GPT-4 Vision 描述摄像头画面,再用 ElevenLabs 生成语音。
- 3本地设置Berman 克隆项目,设置 Python 环境并配置 API 凭据。
- 4声音设置他创建克隆声音,选择速度更快的语音模型,并找到对应的语音 ID。
- 5排查输出问题调整 API 密钥处理方式后,他找到一个音频文件,并在终端外播放。
要点建议
- 项目捕捉摄像头画面,用视觉模型描述内容,再生成语音旁白。
- Berman 配置 Python 依赖,并分别设置 OpenAI 和 ElevenLabs 的 API 凭据。
- 在 2023 年的演示中,他使用克隆声音和语音 ID,并表示 Attenborough 对自己的声音享有权利。
- 他修复了密钥处理问题,并在终端播放失败后打开生成的音频文件。
- 示例中的模型可用情况、界面和价格反映的是录制时的情况。
按章节阅读整理后的全文
摄像头旁白
Berman 展示旁白示例,并介绍 Charlie Holtz 的项目。该项目结合图像分析和生成语音。
一个类似 David Attenborough 的生成声音用自然纪录片的风格解说摄像头看到的内容,描述我色彩鲜艳的衣服、麦克风和动作。我将展示这套系统如何运作。Charlie Holtz 最先分享了这个项目:它用 GPT-4 Vision 分析摄像头图像,再用 ElevenLabs 生成语音。
安装与配置
他设置代码仓库和凭据,然后启动摄像头捕捉与旁白生成进程。
我克隆 Narrator 代码仓库,进入目录,创建一个 Python 3.11 Conda 环境。激活环境后,我用该环境的 Python 安装依赖。演示需要访问视觉 API 和一个 ElevenLabs 账户;我将两者的 API 密钥配置为环境变量。
在 2023 年的 ElevenLabs 界面中,我在账户资料页面找到 API 密钥。我还创建了一个 OpenAI 密钥,并表示会撤销视频中显示的那个密钥。这个流程使用两个终端会话:一个运行摄像头捕捉脚本并请求摄像头权限,另一个分析画面并生成旁白。
声音设置与故障排查
Berman 创建克隆声音并设置其 ID。终端直接播放失败后,他调整密钥处理方式并播放生成的音频文件。
第一次尝试提示找不到配置的语音 ID。我说 Attenborough 对自己的声音享有权利,并说明我的用途是教学。我把一段音频样本上传到 ElevenLabs 的即时声音克隆功能;当时这需要付费订阅,另有一个免费的声音设计选项。这些是 2023 年展示的设置和价格。
我用项目已经生成的文本测试克隆声音,觉得效果很逼真。我将多语言语音模型切换到速度更快的 Turbo 选项,然后使用 voices API 查找克隆声音的 ID,并替换旁白脚本中写死的 ID。

下一次运行似乎没有使用我的 API 密钥,因此我修改脚本,明确设置 ElevenLabs 密钥。终端内直接播放仍然失败,但我找到了生成的音频文件,并单独打开其中一个。文件播放了一段描述我在电脑前的旁白。
同频道的其他文章
34:21EN → 简体中文
0:36EN → 简体中文
25:50EN → 简体中文
32:20EN → 简体中文
1:03:37EN → 简体中文
0:53EN → 简体中文