diff --git a/Hina_Modified_Realtime_Voice_Changer_on_Colab.ipynb b/Hina_Modified_Realtime_Voice_Changer_on_Colab.ipynb index 8cc67ed85..a3b17bda0 100644 --- a/Hina_Modified_Realtime_Voice_Changer_on_Colab.ipynb +++ b/Hina_Modified_Realtime_Voice_Changer_on_Colab.ipynb @@ -116,7 +116,6 @@ "clear_output()\n", "!rm -rf rvctimer\n", "!git clone --depth 1 $rvctimer\n", - "!cp -f rvctimer/index.html $pathloc/client/demo/dist/\n", "\n", "\n", "%cd $pathloc/server/\n", @@ -357,7 +356,7 @@ "Token = 'YOUR_TOKEN_HERE' # @param {type:\"string\"}\n", "# @markdown **4** - Still need further tests, but maybe region can help a bit on latency?\\\n", "# @markdown `Default Region: us - United States (Ohio)`\n", - "Region = \"ap - Asia/Pacific (Singapore)\" # @param [\"ap - Asia/Pacific (Singapore)\", \"au - Australia (Sydney)\",\"eu - Europe (Frankfurt)\", \"in - India (Mumbai)\",\"jp - Japan (Tokyo)\",\"sa - South America (Sao Paulo)\", \"us - United States (Ohio)\"]\n", + "Region = \"us - United States (Ohio)\" # @param [\"ap - Asia/Pacific (Singapore)\", \"au - Australia (Sydney)\",\"eu - Europe (Frankfurt)\", \"in - India (Mumbai)\",\"jp - Japan (Tokyo)\",\"sa - South America (Sao Paulo)\", \"us - United States (Ohio)\"]\n", "MyConfig = conf.PyngrokConfig()\n", "\n", "MyConfig.auth_token = Token\n", @@ -372,6 +371,47 @@ "# @markdown If you want to automatically clear the output when the server loads, check this option.\n", "Clear_Output = True # @param {type:\"boolean\"}\n", "\n", + "#@markdown ---\n", + "#@markdown If you want to use a custom background for the voice changer\n", + "Use_Custom_BG=False #@param{type:\"boolean\"}\n", + "BG_URL=\"https://w.wallha.com/ws/14/cMmpo5vn.jpg\" #@param{type:\"string\"}\n", + "#@markdown Text colors can be hex ``#101010`` or name of color ``black`` (css)\n", + "Text_Color=\"green\" #@param{type:\"string\"}\n", + "if Use_Custom_BG==True:\n", + " if BG_URL==\"\":\n", + " !cp -f rvctimer/index.html $pathloc/client/demo/dist/\n", + " else:\n", + " html_template = f'''\n", + " \n", + " \n", + " \n", + " \n", + " Voice Changer Client Demo\n", + " \n", + " \n", + " \n", + " \n", + "
\n", + " \n", + " \n", + " '''\n", + " with open('index.html', 'w') as file:\n", + " file.write(html_template)\n", + " !mkdir ../client/demo/dist/temp/\n", + " !mv ../client/demo/dist/index.html ../client/demo/dist/temp/index.html\n", + " !mv index.html ../client/demo/dist/\n", + "else:\n", + " !cp -f ../client/demo/dist/temp/index.html ../client/demo/dist/index.html\n", + "\n", "mainpy=codecs.decode('ZZIPFreireFVB.cl','rot_13')\n", "\n", "import portpicker, socket, urllib.request\n", @@ -431,64 +471,6 @@ "metadata": { "id": "2Uu1sTSwTc7q" } - }, - { - "cell_type": "code", - "source": [ - "# @title **[Optional]** Start Server **using localtunnel** (ngrok alternative | no account needed)\n", - "# @markdown This cell will start the server, the first time that you run it will download the models, so it can take a while (~1-2 minutes)\n", - "\n", - "# @markdown ---\n", - "!npm config set update-notifier false\n", - "!npm install -g localtunnel\n", - "print(\"\\033[92mLocalTunnel installed!\")\n", - "# @markdown If you want to automatically clear the output when the server loads, check this option.\n", - "Clear_Output = True # @param {type:\"boolean\"}\n", - "\n", - "import portpicker, subprocess, threading, time, socket, urllib.request\n", - "PORT = portpicker.pick_unused_port()\n", - "\n", - "from IPython.display import clear_output, Javascript\n", - "\n", - "def iframe_thread(port):\n", - " while True:\n", - " time.sleep(0.5)\n", - " sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\n", - " result = sock.connect_ex(('127.0.0.1', port))\n", - " if result == 0:\n", - " break\n", - " sock.close()\n", - " clear_output()\n", - " print(\"Use the following endpoint to connect to localtunnel:\", urllib.request.urlopen('https://ipv4.icanhazip.com').read().decode('utf8').strip(\"\\n\"))\n", - " p = subprocess.Popen([\"lt\", \"--port\", \"{}\".format(port)], stdout=subprocess.PIPE)\n", - " for line in p.stdout:\n", - " print(line.decode(), end='')\n", - "\n", - "threading.Thread(target=iframe_thread, daemon=True, args=(PORT,)).start()\n", - "\n", - "\n", - "!python3 MMVCServerSIO.py \\\n", - " -p {PORT} \\\n", - " --https False \\\n", - " --content_vec_500 pretrain/checkpoint_best_legacy_500.pt \\\n", - " --content_vec_500_onnx pretrain/content_vec_500.onnx \\\n", - " --content_vec_500_onnx_on true \\\n", - " --hubert_base pretrain/hubert_base.pt \\\n", - " --hubert_base_jp pretrain/rinna_hubert_base_jp.pt \\\n", - " --hubert_soft pretrain/hubert/hubert-soft-0d54a1f4.pt \\\n", - " --nsf_hifigan pretrain/nsf_hifigan/model \\\n", - " --crepe_onnx_full pretrain/crepe_onnx_full.onnx \\\n", - " --crepe_onnx_tiny pretrain/crepe_onnx_tiny.onnx \\\n", - " --rmvpe pretrain/rmvpe.pt \\\n", - " --model_dir model_dir \\\n", - " --samples samples.json \\\n", - " --colab True" - ], - "metadata": { - "id": "Mr7325z-TTX5" - }, - "execution_count": null, - "outputs": [] } ], "metadata": {