dotdemo / README.md
fantasyfish's picture
Update README.md
de479a3
metadata
title: Dotdemo
emoji: 😻
colorFrom: indigo
colorTo: pink
sdk: static
pinned: false

You can skip this step now, as it's only used to download the codebase and the docker image

  1. git lfs install # Follow this thread https://askubuntu.com/questions/799341/how-to-install-git-lfs-on-ubuntu-16-04
    git clone https://huggingface.co/spaces/fantasyfish/dotdemo
    cd third_party
    git clone https://huggingface.co/spaces/fantasyfish/RVC
    
  2. sudo docker pull fantasyfish677/rvc:v0
    

Training server

  1. Start the server with the command below where the input bucket is mapped to /inputDir. This bucket should include several folders, where each folder contains the audio files from each user.
sudo docker run --gpus all --runtime=nvidia --rm \ 
-v /home/ubuntu/dotdemo/third_party:/third_party \
-v /home/ubuntu/dotdemo/examples:/inputDir \
-v /home/ubuntu/dotdemo/logs:/logs \
-v /home/ubuntu/dotdemo/train_server:/app \
-p 8080:8080 \
-it fantasyfish677/rvc:v0
  1. Two test commands. The first is to trigger the training process and the second is to check whether training has finished
    curl -X GET http://localhost:8080/train \
    -H 'Content-Type: application/json' \
    -d '{"expName":"drake-20","trainsetDir":"drake"}'
    
    curl -X GET http://localhost:8080/check \
    -H 'Content-Type: application/json' \
    -d '{"expName":"drake-20"}'
    

Inference server

  1. Start the server with the command below where the input bucket is mapped to /inputDir and the output bucket is mapped to /outputDir.
sudo docker run --gpus all --runtime=nvidia --rm \
  -v /home/ubuntu/dotdemo/third_party:/third_party \
  -v /home/ubuntu/dotdemo/examples:/inputDir \
  -v /home/ubuntu/dotdemo/logs:/logs \
  -v /home/ubuntu/dotdemo/results:/outputDir \
  -v /home/ubuntu/dotdemo/inference_server:/app \
  -p 8081:8081 \
  -it fantasyfish677/rvc:v0
  1. Test command. If transfer a male vocal into female, recommend set pitchShift to 10. If transfer a female vocal into male, recommend set pitchShift to -10. Otherwise, keep it as 0.
    curl -X GET http://localhost:8081/inference \
    -H 'Content-Type: application/json' \
    -d '{"expName":"drake-20","audioFileName":"radwimps.mp3", "pitchShift": 0, "saveFileName":"radwimps_drake-20.wav"}'