From 5f7df16ebb405ed3c351e22e8da11a7e21d43fbd Mon Sep 17 00:00:00 2001 From: wataru Date: Tue, 23 Aug 2022 11:17:51 +0900 Subject: [PATCH] update --- README.md | 17 +++++++++++-- start.sh | 4 ++-- trainer/exec.sh | 64 ++++++++++++++++++++++++------------------------- 3 files changed, 49 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index f3f8be67..e8ca8973 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,20 @@ -Voice Changer AI Trainer and Player Container +Voice Changer Trainer and Player Container ---- +AIを使ったリアルタイムボイスチェンジャー[MMVC](https://github.com/isletennos/MMVC_Trainer)のトレーニングと実行を簡単にするためのヘルパーDockerコンテナです。 +このコンテナを用いることで、以下のことを簡単に行うことができます。 -[MMVC](https://github.com/isletennos/MMVC_Trainer)のトレーニングと実行を簡単にするためのDockerコンテナです。 +- MMVCのモデルのトレーニング +- MMVCモデルを用いたリアルタイム声質変換(ボイスチェンジャ) + - リアルタイム話者切り替え + - CPU/GPU切り替え + - リアルタイム/ニアリアルタイム声質変換 + +使用方法等はwikiをご参照ください。 + + +# 前提 +本ヘルパーコンテナはDockerで動かすことを想定しています。 +Dockerを動かせる環境の用意は各自で行ってください。 # 使用方法 ## 前提 diff --git a/start.sh b/start.sh index a72e7b65..69e7bf2e 100644 --- a/start.sh +++ b/start.sh @@ -3,11 +3,11 @@ EXP_NAME=$1 shift -docker run -it --gpus all --shm-size=2g \ +docker run -it --gpus all --shm-size=64M \ -v `pwd`/exp/${EXP_NAME}/dataset:/MMVC_Trainer/dataset \ -v `pwd`/exp/${EXP_NAME}/logs:/MMVC_Trainer/logs \ -v `pwd`/exp/${EXP_NAME}/filelists:/MMVC_Trainer/filelists \ -v `pwd`/vc_resources:/resources \ -e LOCAL_UID=$(id -u $USER) \ -e LOCAL_GID=$(id -g $USER) \ - -p 6006:6006 -p 8080:8080 dannadori/voice-changer:20220823_085004 "$@" + -p 6006:6006 -p 8080:8080 dannadori/voice-changer:20220823_111518 "$@" diff --git a/trainer/exec.sh b/trainer/exec.sh index 2cd08d9a..46b49ef1 100644 --- a/trainer/exec.sh +++ b/trainer/exec.sh @@ -93,41 +93,41 @@ fi -# if $training_flag; then +if $training_flag; then -# python3 create_dataset_jtalk.py -f train_config -s 24000 -m dataset/multi_speaker_correspondence.txt -# # date_tag=`date +%Y%m%d%H%M%S` -# sed -ie 's/80000/8000/' train_ms.py -# sed -ie "s/\"batch_size\": 10/\"batch_size\": $batch_size/" configs/train_config.json + python3 create_dataset_jtalk.py -f train_config -s 24000 -m dataset/multi_speaker_correspondence.txt + # date_tag=`date +%Y%m%d%H%M%S` + sed -ie 's/80000/8000/' train_ms.py + sed -ie "s/\"batch_size\": 10/\"batch_size\": $batch_size/" configs/train_config.json + sed -ie "s/torch.cuda.device_count()/1/" train_ms.py + python3 -m tensorboard.main --logdir logs --port 6006 --host 0.0.0.0 & -# python3 -m tensorboard.main --logdir logs --port 6006 --host 0.0.0.0 & + if ${resume_flag}; then + echo "トレーニング再開。バッチサイズ: ${batch_size}。" + python3 train_ms.py -c configs/train_config.json -m vc + else + echo "トレーニング開始。バッチサイズ: ${batch_size}。" + python3 train_ms.py -c configs/train_config.json -m vc -fg fine_model/G_180000.pth -fd fine_model/D_180000.pth + fi +fi -# if ${resume_flag}; then -# echo "トレーニング再開。バッチサイズ: ${batch_size}。" -# python3 train_ms.py -c configs/train_config.json -m vc -# else -# echo "トレーニング開始。バッチサイズ: ${batch_size}。" -# python3 train_ms.py -c configs/train_config.json -m vc -fg fine_model/G_180000.pth -fd fine_model/D_180000.pth -# fi -# fi +if $voice_change_flag; then + if [[ -z "$config" ]]; then + warn "コンフィグファイル(-c)を指定してください" + fi + if [[ -z "$model" ]]; then + warn "モデルファイル(-m)を指定してください" + fi -# if $voice_change_flag; then -# if [[ -z "$config" ]]; then -# warn "コンフィグファイル(-c)を指定してください" -# fi -# if [[ -z "$model" ]]; then -# warn "モデルファイル(-m)を指定してください" -# fi + cd /voice-changer-internal/voice-change-service -# cd /voice-changer-internal/voice-change-service - -# cp -r /resources/* . -# if [[ -e ./setting.json ]]; then -# cp ./setting.json ../frontend/dist/assets/setting.json -# fi -# echo "-----------!!" -# echo $config $model -# echo $model -# python3 serverSIO.py 8080 $config $model -# fi + cp -r /resources/* . + if [[ -e ./setting.json ]]; then + cp ./setting.json ../frontend/dist/assets/setting.json + fi + echo "-----------!!" + echo $config $model + echo $model + python3 serverSIO.py 8080 $config $model +fi