OpenVoice是一种多功能的即时语音克隆方法,只需要参考说话者的一个简短的音频剪辑即可复制他们的声音并生成多种语言的语音。除了复制参照的说话者的音色之外,OpenVoice 还可以对语音风格进行精细控制,包括情感、口音、节奏、停顿和语调。OpenVoice还可以针对训练集中未包含的语言实现零样本跨语言语音克隆。OpenVoice 的计算效率也很高,其成本比一些性能较差的商用 API 低数十倍。
自 2023 年 5 月以来,OpenVoice 一直为myshell.ai提供即时语音克隆功能。截至 2023 年 11 月,该语音克隆模型已被全球用户使用了数千万次,并见证了该平台用户的爆炸性增长。
特性
- 准确的音色克隆:OpenVoice 可以准确克隆参考音色并生成多种语言和口音的语音。
- 灵活的语音风格控制:OpenVoice 可以对语音风格(例如情感和口音)以及其他风格参数(包括节奏、停顿和语调)进行精细控制。
- 零样本跨语言语音克隆:生成语音的语言和参考语音的语言都不需要出现在多语言训练数据集中。
架构
演示
- Lepton AI:https://www.lepton.ai/playground/openvoice
- MyShell:https://app.myshell.ai/bot/z6Bvua/1702636181
- Hugging Face:https://huggingface.co/spaces/myshell-ai/OpenVoice
安装
克隆存储库并运行
conda create -n openvoice python=3.9 conda activate openvoice conda install pytorch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1 pytorch-cuda=11.7 -c pytorch -c nvidia pip install -r requirements.txt
从这里下载检查点并将其解压到checkpoints
文件夹中。
用法
- 灵活的音色控制。请参阅
demo_part1.ipynb
了解 OpenVoice 如何对克隆语音进行灵活的风格控制。 - 跨语言语音克隆。请参阅
demo_part2.ipynb
。 - 录音室演示。在这里提供了一个极简的本地渐变演示。如果用户在使用 gradio 演示时遇到问题,强烈建议查看
demo_part1.ipynb
、demo_part2.ipynb
和QnA 。使用python -m openvoice_app --share
启动本地渐变演示。 - 高级用法。基本扬声器模型可以替换为用户喜欢的任何模型(任何语言和风格)。请使用
se_extractor.get_se
中演示的函数来提取新基础扬声器的音色嵌入。 - 生成自然语音的技巧。有许多单人或多人的 TTS 方法可以生成自然语音,并且很容易获得。只需将基本扬声器模型替换为您喜欢的模型,您就可以将语音自然度提升到您想要的水平。
来自: