SuperAPI AI 工具集

so-vits-svc

so-vits-svc 是一个开源的 AI 歌声转换(Singing Voice Conversion, SVC)项目,由 svc-develop-team 维护。它使用 SoftVC 内容编码器从源音频中提取语音特征,并直接输入 VITS 模型,无需转换为文本中间表示,从而保留原始音频的音高和语调。声码器采用 NSF HiFiGAN 以解决声音中断问题。该项目可生成接近原声或原唱的人声合成音频,音质清晰、音色相似、音准准确、韵律自然、表现力丰富。项目完全离线运行,不收集用户信息,仅作为框架提供,不附带任何模型,用户需自行训练模型。项目明确不支持 TTS 功能,且与 VITS 模型不通用。

访问官网

工具介绍

so-vits-svc 是一个开源的歌声转换(Singing Voice Conversion, SVC)项目,由 svc-develop-team 维护。该项目与 VITS 有本质区别:它专注于歌声转换而非文本转语音(TTS),不支持 TTS 功能,且 VITS 无法执行 SVC 任务,两个项目的模型不能互换或通用。

用途:项目旨在让开发者能够使用喜爱的动漫角色进行歌唱任务,开发者意图仅关注虚构角色,避免涉及真实人物。项目完全离线运行,不收集任何用户信息或输入数据。

主要能力:

  • 使用 SoftVC 内容编码器从源音频提取语音特征,直接输入 VITS,无需转换为文本中间表示,保留原始音频的音高和语调。
  • 声码器替换为 NSF HiFiGAN,解决声音中断问题。
  • 4.1-Stable 版本更新:特征输入改为 Content Vec Transformer 输出的第 12 层,兼容 4.0 分支;更新浅层扩散,可使用浅层扩散模型提升音质;新增 Whisper-PPG 编码器支持;新增静态/动态声音融合;新增响度嵌入;新增从 RVC 检索特征的功能。
  • 支持浅层扩散(shallow diffusion)以提升音质。
  • 支持多种编码器(如 vec768l12、vec256l9、hubertsoft、whisper-ppg、cnhubertlarge、wavlmbase+ 等)和 F0 预测器(如 rmvpe、crepe、fcpe 等)。

使用方式:

  • 项目为框架,不附带模型,用户需自行训练模型。
  • 需要准备数据集,放置在 dataset_raw 目录,文件类型必须为 WAV,命名无特定限制。
  • 预处理:建议将音频切片为 5s-15s,可使用 audio-slicer-GUI 或 audio-slicer-CLI。需重采样至 44100Hz 单声道,并建议使用专业软件进行响度匹配。
  • 训练:运行预处理脚本生成 hubert 和 f0,然后训练模型。可选训练扩散模型以使用浅层扩散。
  • 推理:使用 inference_main.py,需指定模型路径、配置文件、wav 文件名列表、音高偏移、说话人 ID 等参数。
  • 预训练模型需从指定来源下载并放置到对应目录(如 pretrain、logs/44k 等)。
  • 推荐 Python 3.8.9。

适用场景:

  • 学术研究和学习交流。
  • 开发者用于让虚构角色(如动漫角色)进行歌唱。
  • 不适用于生产环境部署。

限制:

  • 项目仅作为框架,不具备语音合成功能,所有功能需用户自行训练模型。
  • 不附带任何模型,二次分发项目与本项目贡献者无关。
  • 不支持 TTS 功能。
  • 使用非授权数据集训练需用户自行承担全部责任。
  • 严禁用于非法活动、宗教和政治活动。
  • 发布基于 sovits 的视频必须明确标注输入源人声和音频,并给出原始链接或说明。
  • 使用其他商业人声合成软件作为输入源时,需遵守该软件规定。
  • 项目已进入 Archive 状态。
  • 预训练模型通常无版权问题,但建议咨询作者或查看描述以确认允许的使用方式。
  • 若使用 whisper-ppg 编码器,音频片段必须短于 30 秒。
  • 训练时需注意显存限制,避免过长音频导致内存溢出。