AI个人学习
和实操指南
豆包Marscode1

Seed-VC:支持少样本实时转换语音和歌声

综合介绍

Seed-VC 是一个开源项目,地址在 GitHub 上,由 Plachtaa 开发。它能用一段 1 到 30 秒的参考音频,快速实现语音或歌声转换,不需要额外训练。项目支持实时语音转换,延迟低至 400 毫秒左右,适合在线会议、游戏或直播使用。Seed-VC 提供三种模式:语音转换(VC)、歌声转换(SVC)和实时转换。它用 Whisper 和 BigVGAN 等技术,保证声音清晰。代码免费公开,用户可下载并在本地搭建。官方持续更新,文档详细,社区支持活跃。

Seed-VC:支持少样本实时转换语音和歌声-1


 

功能列表

  • 支持零样本转换:用短音频模仿目标语音或歌声。
  • 实时语音处理:麦克风输入后,声音即时变为目标音色。
  • 歌声转换:将任意歌声转为指定歌手的声音。
  • 音频长度调整:加速或减慢语音,控制节奏。
  • 音高调节:自动或手动调整音调,适配目标音色。
  • Web 界面操作:提供简单图形界面,方便使用。
  • 支持自定义训练:用少量数据优化特定声音。
  • 开源代码:用户可修改或升级功能。

 

使用帮助

安装流程

要在本地使用 Seed-VC,需要先安装环境。以下是详细步骤,适用于 Windows、Mac(含 M 系列芯片)或 Linux。

  1. 准备环境
    • 安装 Python 3.10,从官网下载即可。
    • 安装 Git,Windows 用户可搜索 "Git for Windows",Mac 用  brew install git 。
    • GPU 用户需安装 CUDA 12.4 和对应驱动,CPU 也能跑但较慢。
    • 安装 FFmpeg 处理音频,Windows 从官网下载,Mac 用  brew install ffmpeg ,Linux 用包管理器安装。
  2. 下载代码
    • 打开命令行(Windows 用 CMD 或 Anaconda Prompt,Mac/Linux 用终端)。
    • 输入  git clone https://github.com/Plachtaa/seed-vc.git ,下载项目。
    • 进入目录: cd seed-vc 。
  3. 设置虚拟环境
    • 输入  python -m venv venv ,创建独立环境。
    • 激活环境:
      • Windows: venv\Scripts\activate
      • Mac/Linux: source venv/bin/activate
    • 看到  (venv)  表示成功。
  4. 安装依赖
    • Windows/Linux 输入  pip install -r requirements.txt 。
    • Mac M 系列输入  pip install -r requirements-mac.txt 。
    • 网络问题时加镜像: HF_ENDPOINT=https://hf-mirror.com pip install -r requirements.txt 。
  5. 运行程序
    • 语音转换: python app_vc.py
    • 歌声转换: python app_svc.py
    • 实时转换: python real-time-gui.py
    • 运行后,浏览器访问  http://localhost:7860  使用界面。

主要功能操作

1. 语音转换(VC)

  • 步骤
    1. 运行  python app_vc.py ,打开浏览器到  http://localhost:7860 。
    2. 上传原始音频(Source Audio)和参考音频(Reference Audio,1-30 秒)。
    3. 设置扩散步数(Diffusion Steps),默认 25,设 30-50 音质更好。
    4. 调整长度(Length Adjust),小于 1 加速,大于 1 减慢。
    5. 点击提交,等待几秒,下载转换结果。
  • 注意
    • 首次运行会自动下载模型  seed-uvit-whisper-small-wavenet 。
    • 参考音频超 30 秒会截断。

2. 歌声转换(SVC)

  • 步骤
    1. 运行  python app_svc.py ,打开 Web 界面。
    2. 上传歌声音频和歌手参考音频。
    3. 勾选  f0-condition (音高条件),保持歌声音调。
    4. 可选  auto-f0-adjust  自动调整音高。
    5. 设置扩散步数到 30-50,点击提交。
  • 技巧
    • 用清晰无背景音的参考音频,效果最佳。
    • 模型默认下载  seed-uvit-whisper-base 。

3. 实时转换

  • 步骤
    1. 运行  python real-time-gui.py ,打开界面。
    2. 上传参考音频,连接麦克风。
    3. 设置参数:扩散步数 4-10,Block Time 0.18 秒。
    4. 点击 “Start”,说话时声音实时转换。
    5. 用 VB-CABLE 将输出路由到虚拟麦克风。
  • 要求
    • GPU 推荐(如 RTX 3060),延迟约 430 毫秒。
    • CPU 运行延迟更高。

4. 命令行操作

  • 语音转换示例
     python inference.py --source input.wav --target ref.wav --output ./out --diffusion-steps 25 --length-adjust 1.0 --fp16 True
  • 歌声转换示例
     python inference.py --source song.wav --target singer.wav --output ./out --diffusion-steps 50 --f0-condition True --semi-tone-shift 0 --fp16 True
    

5. 自定义训练

  • 步骤
    1. 准备 1-30 秒的音频文件(.wav/.mp3 等格式),放入文件夹。
    2. 运行训练:
       python train.py --config configs/presets/config_dit_mel_seed_uvit_whisper_base_f0_44k.yml --dataset-dir ./data --run-name myrun --max-steps 1000
      
    3. 训练后Checkpoint 在  ./runs/myrun/ft_model.pth 。
    4. 用自定义模型推理:
       python app_svc.py --checkpoint ./runs/myrun/ft_model.pth --config configs/presets/config_dit_mel_seed_uvit_whisper_base_f0_44k.yml
      
  • 注意:至少 1 个音频样本即可训练,100 步约 2 分钟(T4 GPU)。

补充说明

  • 模型选择
    • 实时用  seed-uvit-tat-xlsr-tiny (25M 参数)。
    • 离线语音用  seed-uvit-whisper-small-wavenet (98M 参数)。
    • 歌声用  seed-uvit-whisper-base (200M 参数,44kHz)。
  • 调试
    • 报错  ModuleNotFoundError ,检查依赖。
    • Mac 运行实时 GUI 可能需安装带 Tkinter 的 Python。

 

应用场景

  1. 娱乐配音
    将声音转为卡通角色,制作搞笑视频。
  2. 音乐制作
    把普通歌声转为专业歌手音色,生成歌曲 demo。
  3. 直播互动
    主播实时变声,增加节目趣味。
  4. 语言学习
    模仿母语者语音,练习发音。

 

QA

  1. 需要大量数据吗?
    不需要。1 段短音频就能转换,训练也只需 1 个样本。
  2. 支持中文音频吗?
    支持。只要参考音频是中文,转换后也清晰。
  3. 延迟高怎么办?
    用 GPU 并设低扩散步数(4-10)。
  4. 音质差怎么办?
    提高扩散步数到 50,或用干净参考音频。
未经允许不得转载:首席AI分享圈 » Seed-VC:支持少样本实时转换语音和歌声

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文