{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "ymhGfgFSR17k" }, "source": [ "## **Applio**\n", "Ultimate voice cloning tool, meticulously optimized for unrivaled power, modularity, and user-friendly experience.\n", "\n", "[Support](https://discord.gg/IAHispano) — [Discord Bot](https://discord.com/oauth2/authorize?client_id=1144714449563955302&permissions=1376674695271&scope=bot%20applications.commands) — [Find Voices](https://applio.org/models) — [GitHub](https://github.com/IAHispano/Applio)\n", "\n", "
\n", "\n", "### **Credits**\n", "- Encryption method: [Hina](https://github.com/hinabl)\n", "- Extra section: [Poopmaster](https://github.com/poiqazwsx)\n", "- Main development: [Applio Team](https://github.com/IAHispano)\n", "\n", "
\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "vtON700qokuQ" }, "outputs": [], "source": [ "# @title **Install Applio**\n", "\n", "import codecs\n", "import time\n", "import os\n", "import csv\n", "import shutil\n", "import tarfile\n", "import subprocess\n", "from pathlib import Path\n", "from datetime import datetime\n", "\n", "rot_47 = lambda encoded_text: \"\".join(\n", " [\n", " (\n", " chr(\n", " (ord(c) - (ord(\"a\") if c.islower() else ord(\"A\")) - 47) % 26\n", " + (ord(\"a\") if c.islower() else ord(\"A\"))\n", " )\n", " if c.isalpha()\n", " else c\n", " )\n", " for c in encoded_text\n", " ]\n", ")\n", "\n", "org_name = rot_47(\"Vkkgdj\")\n", "new_name = rot_47(\"kmjbmvh_hg\")\n", "uioawhd = rot_47(codecs.decode(\"pbbxa://oqbpcj.kwu/QIPqaxivw/Ixxtqw.oqb\", \"rot_13\"))\n", "uyadwa = codecs.decode(\"ncc.cl\", \"rot_13\")\n", "!git clone --depth 1 $uioawhd\n", "!mv $org_name $new_name\n", "%cd $new_name/\n", "\n", "from IPython.display import clear_output, Javascript\n", "\n", "clear_output()\n", "\n", "E = Exception\n", "B = print\n", "\n", "\n", "def vidal_setup(ForceIn):\n", " L = \"Kikpm.ovm.bu\"\n", " K = \"/content/\"\n", " C = ForceIn\n", "\n", " def F():\n", " print(\"Installing pip packages...\")\n", " subprocess.check_call([\"pip\", \"install\", \"-r\", \"requirements.txt\", \"--quiet\"])\n", "\n", " A = K + rot_47(L)\n", " G = K + rot_47(L)\n", " D = \"/\"\n", " if not os.path.exists(A):\n", " M = os.path.dirname(A)\n", " os.makedirs(M, exist_ok=True)\n", " print(\"No cached install found..\")\n", " try:\n", " N = rot_47(\n", " codecs.decode(\n", " \"pbbxa://pcooqvonikm.kw/QIPqaxivw/Ixxtqw/zmawtdm/uiqv/Kwtij/Xvxcz.biz.oh\",\n", " \"rot_13\",\n", " )\n", " )\n", " subprocess.run([\"wget\", \"-O\", A, N])\n", " print(\"Download completed successfully!\")\n", " except E as H:\n", " print(str(H))\n", " if os.path.exists(A):\n", " os.remove(A)\n", " if Path(A).exists():\n", " with tarfile.open(G, \"r:gz\") as I:\n", " for J in I.getmembers():\n", " O = os.path.join(D, J.name)\n", " try:\n", " I.extract(J, D)\n", " except E as H:\n", " print(\"Failed to extract a file\")\n", " C = True\n", " print(f\"Extraction of {G} to {D} completed.\")\n", " if os.path.exists(A):\n", " os.remove(A)\n", " if C:\n", " F()\n", " C = False\n", " else:\n", " F()\n", "\n", "\n", "vidal_setup(False)\n", "\n", "clear_output()\n", "print(\"Finished installing requirements!\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "form", "id": "-7cQtXouqpQi" }, "outputs": [], "source": [ "# @title **Start Applio**\n", "import codecs\n", "import threading\n", "\n", "uyadwa = codecs.decode(\"ncc.cl\", \"rot_13\")\n", "\n", "%load_ext tensorboard\n", "%reload_ext tensorboard\n", "%tensorboard --logdir logs --bind_all\n", "\n", "if \"autobackups\" not in globals():\n", " autobackups = False\n", "\n", "if autobackups:\n", " thread = threading.Thread(target=backup_files)\n", " thread.start()\n", "\n", "!python $uyadwa --share" ] }, { "cell_type": "markdown", "source": [ "### **Extra**\n", "Enjoy extra options that can make it easier for you to use Applio\n" ], "metadata": { "id": "3b59-2x-qEnX" } }, { "cell_type": "code", "source": [ "# @title Mount Drive\n", "# @markdown Mount the files from Google Drive to the Colab.\n", "from google.colab import drive\n", "\n", "drive.mount(\"/content/drive\")" ], "metadata": { "cellView": "form", "id": "19LNv6iYqF6_" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title Auto Backup\n", "# @markdown When running it, it will be activated or deactivated previously to start up together with Applio.\n", "LOGS_FOLDER = \"/content/program_ml/logs/\"\n", "GOOGLE_DRIVE_PATH = \"/content/drive/MyDrive/ApplioBackup\"\n", "\n", "if \"autobackups\" not in globals():\n", " autobackups = False\n", "\n", "\n", "def backup_files():\n", " print(\"\\nStarting backup loop...\")\n", " last_backup_timestamps_path = os.path.join(\n", " LOGS_FOLDER, \"last_backup_timestamps.txt\"\n", " )\n", " fully_updated = False\n", "\n", " while True:\n", " try:\n", " updated = False\n", " last_backup_timestamps = {}\n", "\n", " try:\n", " with open(last_backup_timestamps_path, \"r\") as f:\n", " last_backup_timestamps = dict(line.strip().split(\":\") for line in f)\n", " except FileNotFoundError:\n", " pass\n", "\n", " for root, dirs, files in os.walk(LOGS_FOLDER):\n", " # Excluding \"zips\" directory\n", " if \"zips\" in dirs:\n", " dirs.remove(\"zips\")\n", " if \"mute\" in dirs:\n", " dirs.remove(\"mute\")\n", " for filename in files:\n", " if filename != \"last_backup_timestamps.txt\":\n", " filepath = os.path.join(root, filename)\n", " if os.path.isfile(filepath):\n", " backup_filepath = os.path.join(\n", " GOOGLE_DRIVE_PATH,\n", " os.path.relpath(filepath, LOGS_FOLDER),\n", " )\n", " backup_folderpath = os.path.dirname(backup_filepath)\n", " if not os.path.exists(backup_folderpath):\n", " os.makedirs(backup_folderpath)\n", " print(\n", " f\"Created backup folder: {backup_folderpath}\",\n", " flush=True,\n", " )\n", " last_backup_timestamp = last_backup_timestamps.get(filepath)\n", " current_timestamp = os.path.getmtime(filepath)\n", " if (\n", " last_backup_timestamp is None\n", " or float(last_backup_timestamp) < current_timestamp\n", " ):\n", " shutil.copy2(filepath, backup_filepath)\n", " last_backup_timestamps[filepath] = str(\n", " current_timestamp\n", " )\n", " if last_backup_timestamp is None:\n", " print(f\"Backed up file: {filename}\")\n", " else:\n", " print(f\"Updating backed up file: {filename}\")\n", " updated = True\n", " fully_updated = False\n", "\n", " for filepath in list(last_backup_timestamps.keys()):\n", " if not os.path.exists(filepath):\n", " backup_filepath = os.path.join(\n", " GOOGLE_DRIVE_PATH, os.path.relpath(filepath, LOGS_FOLDER)\n", " )\n", " if os.path.exists(backup_filepath):\n", " os.remove(backup_filepath)\n", " print(f\"Deleted file: {filepath}\")\n", " del last_backup_timestamps[filepath]\n", " updated = True\n", " fully_updated = False\n", "\n", " if not updated and not fully_updated:\n", " print(\"Files are up to date.\")\n", " fully_updated = True\n", " sleep_time = 15\n", " else:\n", " sleep_time = 0.1\n", "\n", " with open(last_backup_timestamps_path, \"w\") as f:\n", " for filepath, timestamp in last_backup_timestamps.items():\n", " f.write(f\"{filepath}:{timestamp}\\n\")\n", "\n", " time.sleep(sleep_time)\n", "\n", " except Exception as e:\n", " print(f\"An error occurred: {str(e)}\")\n", "\n", "\n", "if autobackups:\n", " autobackups = False\n", " print(\"Autobackup Disabled\")\n", "else:\n", " autobackups = True\n", " print(\"Autobackup Enabled\")" ], "metadata": { "cellView": "form", "id": "I5o6MlpFouiG" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title Load a Backup\n", "from google.colab import drive\n", "\n", "# @markdown Put the exact name you put as your Model Name in Applio.\n", "modelname = \"My-Project\" # @param {type:\"string\"}\n", "source_path = \"/content/drive/MyDrive/ApplioBackup/\" + modelname\n", "destination_path = \"/content/program_ml/logs/\" + modelname\n", "backup_timestamps_file = \"last_backup_timestamps.txt\"\n", "if not os.path.exists(source_path):\n", " print(\n", " \"The model folder does not exist. Please verify the name is correct or check your Google Drive.\"\n", " )\n", "else:\n", " time_ = os.path.join(\"/content/drive/MyDrive/ApplioBackup/\", backup_timestamps_file)\n", " time__ = os.path.join(\"/content/program_ml/logs/\", backup_timestamps_file)\n", " if os.path.exists(time_):\n", " shutil.copy(time_, time__)\n", " shutil.copytree(source_path, destination_path)\n", " print(\"Model backup loaded successfully.\")" ], "metadata": { "cellView": "form", "id": "ifV_vc4h4Uvx" }, "execution_count": null, "outputs": [] }, { "cell_type": "code", "source": [ "# @title Download all custom pretrains\n", "import os\n", "import urllib.request\n", "\n", "%mkdir /content/program_ml/rvc/pretraineds/pretraineds_custom\n", "pretrained_urls = [\n", " \"https://huggingface.co/ORVC/Ov2Super/resolve/main/f0Ov2Super32kG.pth\",\n", " \"https://huggingface.co/ORVC/Ov2Super/resolve/main/f0Ov2Super32kD.pth\",\n", " \"https://huggingface.co/ORVC/Ov2Super/resolve/main/f0Ov2Super40kG.pth\",\n", " \"https://huggingface.co/ORVC/Ov2Super/resolve/main/f0Ov2Super40kD.pth\",\n", " \"https://huggingface.co/MUSTAR/RIN_E3/resolve/main/RIN_E3_G.pth\",\n", " \"https://huggingface.co/MUSTAR/RIN_E3/resolve/main/RIN_E3_D.pth\",\n", "]\n", "output_directory = \"/content/program_ml/rvc/pretraineds/pretraineds_custom\"\n", "for url in pretrained_urls:\n", " filename = os.path.join(output_directory, os.path.basename(url))\n", " urllib.request.urlretrieve(url, filename)" ], "metadata": { "cellView": "form", "id": "leWbhk1X4XoY" }, "execution_count": null, "outputs": [] } ], "metadata": { "accelerator": "GPU", "colab": { "gpuType": "T4", "provenance": [], "collapsed_sections": [ "3b59-2x-qEnX" ] }, "kernelspec": { "display_name": "Python 3", "name": "python3" }, "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 0 }