如果你不知道UVR5,UVR(ultimatevocalremovergui)是一个分离乐器与人声的AI项目。可是它目前并没有提供Linux下直接安装使用的打包,需要自己去搭建环境。
而RVC这个变声项目刚好整合了UVR5,下面介绍的是如何用docker运行RVC项目,从而使用UVR5。
以下默认docker与docker compose已经在你计算机正常安装并运行
以下默认使用Nvidia显卡
克隆并修改dockerfile文件
在RVC项目本来的dockerfile里,我并不能用python 3.9安装requirements的库,需要修改。
git clone https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI
克隆之后修改dockerfile文件,我修改成使用最新版本的nvidia cuda镜像,删除安装python 3.9的内容,安装ubuntu 22.04源的python,增加去除混响与delay的模型。
FROM nvidia/cuda:12.5.1-cudnn-runtime-ubuntu22.04
EXPOSE 7865
WORKDIR /app
COPY . .
# Install dependenceis to add PPAs
RUN apt-get update && \
apt-get install -y -qq ffmpeg aria2 && apt clean && \
apt-get install -y software-properties-common && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
RUN apt-get update && apt-get -y dist-upgrade
RUN apt install python3-pip -y
RUN python3 -m pip install --no-cache-dir -r requirements.txt
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/D40k.pth -d assets/pretrained_v2/ -o D40k.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/G40k.pth -d assets/pretrained_v2/ -o G40k.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0D40k.pth -d assets/pretrained_v2/ -o f0D40k.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/pretrained_v2/f0G40k.pth -d assets/pretrained_v2/ -o f0G40k.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP2-人声vocals+非人声instrumentals.pth -d assets/uvr5_weights/ -o HP2-人声vocals+非人声instrumentals.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/HP5-主旋律人声vocals+其他instrumentals.pth -d assets/uvr5_weights/ -o HP5-主旋律人声vocals+其他instrumentals.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/VR-DeEchoDeReverb.pth -d assets/uvr5_weights/ -o VR-DeEchoDeReverb.pth
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/uvr5_weights/onnx_dereverb_By_FoxJoy/vocals.onnx -d assets/uvr5_weights/onnx_dereverb_By_FoxJoy -o vocals.onnx
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/hubert_base.pt -d assets/hubert -o hubert_base.pt
RUN aria2c --console-log-level=error -c -x 16 -s 16 -k 1M https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/rmvpe.pt -d assets/rmvpe -o rmvpe.pt
VOLUME [ "/app/weights", "/app/opt" ]
CMD ["python3", "infer-web.py"]
以下是diff:
运行与使用
运行:docker compose up
浏览器访问:http://127.0.0.1:7865/
处理过程图示,结果文件存储在如图中定义的opt目录
本作品采用知识共享署名 4.0 国际许可协议进行许可。