Audacity AI
概述
这个Python项目利用Demucs库进行语音分离和基于检索的语音转换(RVC)技术来实现两个主要目标:
-
语音分离:它旨在将声音与大胆音频剪辑中的乐器音轨分开。该项目利用了一种最先进的源分离模型Demucs的力量,可以将人的声音与随附的仪器隔离开来。
-
语音转换:提取人声后,该项目将采用基于检索的语音转换(RVC)技术将原始声音转换为另一种声音。
大胆集成
该项目使用mod–script-pipe无缝将其与Audacity接口,从而可以直接在Audacity环境中轻松处理音频剪辑。
演示
安装
downlaod hubert_base.pt并将其放在根文件夹中
pip install -r requirements.txt
mod-script-pipe :此脚本将使用mod-script-pipe与Audacity通信。因此,您需要启用它。这样做:
- Open Audacity的首选项(
ctrl+P或Edit --> Preferences) - 在模块选项卡中,选择
Enabledmod-script-pipe
添加语音模型
- 语音模型应在
models/文件夹中 - 每个语音模型都由一个文件夹组成,该文件夹将用作模型的名称。
- 每个语音模型文件夹都应包含一个
.pth和.index文件
用法
- 将音频剪辑导入Audacity(必须是第一个剪辑)。
- 选择要编辑的音频范围
- 通过运行以下命令来启动服务器:
python server.py - 通过运行以下命令来启动客户端:
python index.py -
index.py文件将指导您完成整个过程。
解耦处理
由于实际原因,我选择将项目的处理部分与大胆通信分离为两个不同的脚本。通过这样做,它允许我们:
-
优化资源使用情况:我可以在配备GPU的高性能机上运行处理服务器,从而确保高效且快速的语音分离和转换任务。
-
将大胆的工作解放:同时,大胆可以在功能较小的机器上运行,因为它主要处理通信任务。责任的分离使我们能够更有效地利用资源,确保可以有效执行音频编辑和处理任务。
将计算卸载到另一台计算机(服务器,…)
您可以将计算卸载到专用服务器。请按照以下步骤:
服务器:在功能强大的Server(使用启用CUDA的GPU)上安装并运行此项目。
客户端配置:在Audacity机器上,编辑utils.py中的server_url以匹配服务器的IP或主机名。
文件传输:请注意,客户端和服务器之间的通信将涉及使用FastAPI缩放的音频文件。
该设置通过利用高端资源来进行诸如语音分离和转换之类的任务,同时在功能较小的系统上保持无缝的沟通,从而优化性能。
