拓冰建站拓冰建站
首页 / 资讯中心 / 正文

用 VoiceCraft 实现 3 种零样本语音合成与语音编辑做法:几秒参考音频快速上手 TTS

用 VoiceCraft 实现 3 种零样本语音合成与语音编辑做法几秒参考音频快速上手 TTS【免费下载链接】VoiceCraftZero-Shot Speech Editing and Text-to-Speech in the Wild项目地址: https://gitcode.com/GitHub_Trending/vo/VoiceCraftVoiceCraft 是一个开源的零样本语音编辑与 TTS文本转语音工具只凭几秒参考音频就能克隆或编辑你从未见过的声音无需针对特定声音训练。如果你在做有声书、播客或虚拟助手想快速修正一处读错的发音、或让新文本用参考人的声音念出来这篇文章能帮你在几小时内跑通它。先解决什么问题做过有声书的朋友大概都遇到过这种糟心事一整章录完了只有中间几秒读错了一个词。传统做法是重录而重录很难和原录音的音色、底噪、混响完全一致。VoiceCraft 的语音编辑模式恰好干这件事——你给出原音频和改词后的文本它只重新生成出错的那几秒并尽量让前后听不出拼接痕迹。另一种常见需求播客开场白想换成另一位嘉宾的声音念但你没法进棚。用它的零样本 TTS 模式只要那位的几秒清晰录音做参考就能让目标文本用类似的声音生成出来。除了这两种模式它还支持长文本转语音方便处理整段稿件。十分钟上手三种入口按省事程度排列Colab 最省心Docker 适合固定环境本地 conda 环境自由度最高适合要二次开发的你。Colab在线最省事打开 README 里的 Colab notebook语音编辑、TTS 两个入口按页面提示运行即可无需装任何依赖。跑起来后你能看到上传一段参考音频、输入目标文本直接在页面里播放生成结果。Docker固定环境适合 Linux/Windowsgit clone https://gitcode.com/GitHub_Trending/vo/VoiceCraft cd VoiceCraft docker build --tag voicecraft . ./start-jupyter.sh # Windows 用 start-jupyter.bat跑起来后你能看到docker logs jupyter底部会给出一个 URL浏览器打开即可逐个单元格运行 inference_tts.ipynb并听到合成音频。本地 conda 环境自由度最高conda create -n voicecraft python3.9.16 conda activate voicecraft pip install phonemizer3.2.1 # 完整依赖见 environment.yml python tts_demo.py跑起来后你能看到终端生成一段 wav用默认示例参数参考音频 目标文本直接产出 TTS 结果。它是怎么做到的整条链路可以概括成「输入 → 处理 → 输出」四步。输入你提供参考音频和目标文本。文本先被转成音素语音学上的最小发音单位可以理解为比汉字/字母更细的发音颗粒这一步由 data/phonemize_encodec_encode_hf.py 和 data/tokenizer.py 处理。编码参考音频不是直接喂给模型的而是先用 EnCodec 这种神经音频编解码器压成一串离散令牌token相当于给音频数字化成单词。训练数据准备同样由data/目录下的脚本完成。模型生成VoiceCraft 的核心是一个令牌填充式语言模型——它看着参考音频的令牌和目标音素序列在缺失的位置逐词填上新的音频令牌就像完形填空主模型定义在 models/voicecraft.py。输出生成的令牌再被 EnCodec 解码器还原成真实音频波形你听到的就是这一步的产物。进阶玩法几条能直接改善效果的操作建议参考音频选短而干净的几秒即可但要无背景噪音、无其他人声。参考越干净模型能提取的音色特征越明确克隆相似度越高。控制总长度不超过 16 秒按 README 说明当前模型训练时丢弃了超过 16 秒的语句参考音频 生成内容合计尽量控制在 16 秒内效果最稳。采样参数优先用 top_k40README 的 News 提到把推理采样从 top_p1 改为 top_k40 后编辑和 TTS 表现都有改善这是目前推荐默认值temperature 方面 tts_demo.py 里注释建议 0.9 比 0.8 更好。长文本分段合成用 Gradio 界面的 Long TTS 模式先生成整段再逐段part-by-part重跑不满意的部分比一次生成整篇长文更容易控制质量。编辑前先听对齐结果语音编辑会先用 MFA 强制对齐定位要改的片段对齐文件生成在 demo 临时目录里确认定位准确再跑生成能避免改错了位置。常见坑现象本地装依赖时版本冲突、脚本报错。原因项目对 torch、xformers、phonemizer 等组件版本敏感。解决以 environment.yml 里的精确版本为准逐项安装而不是随手 pip 最新版。现象跑语音编辑时报 MFAMontreal Forced Aligner强制对齐工具相关错误。原因本地环境没装 MFA或没下载英文词典和声学模型。解决按 README 的 Environment setup 执行mfa model download dictionary/acoustic english_us_arpa两条命令补齐资源。现象准备训练数据时显存爆掉OOM。原因EnCodec 编码大批量长音频时占用峰值高。解决按 README 提示调小batch_size和max_len参数重跑即可。现象生成音频和参考人声音不像、有塑料感。原因参考音频带噪、太长或参考生成总长超出模型舒适区。解决换一段 36 秒的干净单人录音做参考并把总长度压到 16 秒内。去哪继续inference_tts.ipynb零样本 TTS 推理示例逐格运行就能看到完整生成流程。inference_speech_editing.ipynb语音编辑推理示例演示如何指定音频片段和目标文本。gradio_app.py交互式 Web 界面运行python gradio_app.py后在 127.0.0.1:7860 打开适合反复对比不同参数效果。README.md训练、微调、模型下载等完整说明都在这份文档里。项目本身还在迭代中如推理采样策略、增强版模型权重都有更新记录留意 README 的 News 部分即可获取最新进展。写在最后一句话总结VoiceCraft 让你用听写填空的方式玩语音——给几秒参考音频改一个词、念一段新文本都不需要为某个声音专门训练。下一步建议先用 Colab 把 TTS 和语音编辑各跑一次找到感觉再按你的需求决定是否落到 Docker 或本地环境做集成。跑通第一个样例后上面的参数建议可以帮你把效果再往上抬一档。【免费下载链接】VoiceCraftZero-Shot Speech Editing and Text-to-Speech in the Wild项目地址: https://gitcode.com/GitHub_Trending/vo/VoiceCraft创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门