语音服务#
Manim Voiceover 可以接入各种语音合成器来生成画外音音频。下面是可用服务的比较、它们的优缺点以及如何设置它们。
选择语音服务#
Manim Voiceover 定义了 SpeechService
类,用于添加新的语音合成器。下面介绍的所有类都派生自 SpeechService
。
语音服务 |
质量 |
可离线运行? |
付费/需要账户? |
备注 |
---|---|---|---|---|
不适用 |
不适用 |
不适用 |
这是一个实用类,用于使用麦克风录制您自己的画外音。 |
|
非常好,接近真人 |
否 |
是 |
Azure 提供每月 500 分钟的免费 TTS 配额。但是,注册仍需要信用卡或借记卡。有关详细信息,请参阅Azure 免费帐户常见问题。 |
|
|
非常好,接近真人 |
否 |
是 |
需要 ElevenLabs 账户。点击此处注册。 |
良好,接近真人 |
是 |
否 |
需要 PyTorch 才能运行。在某些平台上可能难以设置。 |
|
良好 |
否 |
否 |
这是一个由 Google 资助的免费 API,因此未来可能会停止工作。 |
|
非常好,接近真人 |
否 |
是 |
||
差 |
是 |
否 |
需要 espeak。在 Mac 上运行不可靠。 |
我们的路线图是提供一个可在本地免费运行的高质量 TTS 引擎。如果您有任何建议,请在 Discord 服务器中告知我们。
RecorderService
#
这不是一个语音合成器,而是一个实用类,用于使用麦克风录制您自己的画外音。它提供了一个命令行界面,以便在渲染过程中录制画外音。
安装带有 recorder
额外功能的 Manim Voiceover 以使用 RecorderService
pip install "manim-voiceover[recorder]"
请参阅示例用法以开始使用。
AzureService
#
目前,Manim Voiceover 中可用的最高质量文本到语音服务是 Microsoft Azure 语音服务。要使用它,您需要创建一个 Azure 账户。
提示
Azure 目前提供每月 500 分钟的免费 TTS。这对于大多数项目来说已经足够了。
安装带有 azure
额外功能的 Manim Voiceover 以使用 AzureService
pip install "manim-voiceover[azure]"
然后,您需要找出您的订阅密钥和服务区域
登录 Azure 门户并创建一个新的语音服务资源。
转到Azure 认知服务页面。
点击您创建的资源并转到
Keys and Endpoint
选项卡。复制Key 1
和Location
的值。
在您调用 Manim 的相同目录中创建一个名为 .env
的文件,其中包含您的身份验证信息。
AZURE_SUBSCRIPTION_KEY="..." # insert Key 1 here
AZURE_SERVICE_REGION="..." # insert Location here
请参阅Azure 文档了解更多详情。
请参阅示例用法以开始使用。
CoquiService
#
Coqui TTS 是一个开源的神经文本到语音引擎。它是 Mozilla TTS 的一个分支,而 Mozilla TTS 是 Tacotron 2 的一个实现。它是一个非常好的 TTS 引擎,可以产生接近真人的语音。但是,它需要 PyTorch 才能运行,这在某些平台上可能难以设置。
安装带有 coqui
额外功能的 Manim Voiceover 以使用 CoquiService
pip install "manim-voiceover[coqui]"
如果您遇到 PyTorch 或 NumPy 的问题,请尝试将您的 Python 版本更改为 3.9。
请参阅示例用法以开始使用。
GTTSService
#
gTTS 是一个文本到语音库,它封装了 Google 翻译的文本到语音 API。它需要互联网连接才能工作。
安装带有 gtts
额外功能的 Manim Voiceover 以使用 GTTSService
pip install "manim-voiceover[gtts]"
请参阅示例用法以开始使用。
OpenAIService
#
OpenAI 提供文本到语音服务。它通过 API 工作,因此需要互联网连接才能使用。它还需要一个 API 密钥。点击此处注册。
安装带有 openai
额外功能的 Manim Voiceover 以使用 OpenAIService
pip install "manim-voiceover[openai]"
然后,您需要找出您的 API 密钥
登录 OpenAI 平台并从左侧面板点击 API Keys。
点击创建新的密钥并复制。
在您调用 Manim 的相同目录中创建一个名为 .env
的文件,其中包含您的身份验证信息。
OPENAI_API_KEY="..." # insert the secret key here. It should start with "sk-"
请参阅OpenAI 文档了解更多详情。
请参阅示例用法以开始使用。
PyTTSX3Service
#
pyttsx3 是一个文本到语音库,它封装了espeak,一个共振峰合成语音合成器。
安装带有 pyttsx3
额外功能的 Manim Voiceover 以使用 PyTTSX3Service
pip install "manim-voiceover[pyttsx3]"
请参阅示例用法以开始使用。
ElevenLabsService
#
ElevenLabs 提供最自然的语音服务 API 之一。它拥有一系列逼真且富有情感的声音,还允许您通过上传几分钟的语音来克隆自己的声音。要使用它,您需要在 Eleven Labs 创建一个账户。
提示
ElevenLabs 目前提供每月 10,000 字符的免费 TTS 配额,并最多支持 3 个自定义声音。
安装带有 elevenlabs
额外功能的 Manim Voiceover 以使用 ElevenLabsService
pip install "manim-voiceover[elevenlabs]"
然后,您需要找出您的 API 密钥。
登录 ElevenLabs 门户并前往您的个人资料以获取密钥
将环境变量
ELEVEN_API_KEY
设置为您的密钥
在您调用 Manim 的相同目录中创建一个名为 .env
的文件,其中包含您的身份验证信息。
ELEVEN_API_KEY="..." # insert Key 1 here
请参阅ElevenLabs 文档了解更多详情。
请参阅示例用法以开始使用。