kiuuiro commited on
Commit
ebe5cbc
·
verified ·
1 Parent(s): 418a000

Upload 8 files

Browse files
TERMS_OF_USE.md ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Terms of Use
2
+
3
+ ## Responsibilities of the User
4
+
5
+ By using Applio, you agree to the following responsibilities:
6
+
7
+ ### 1. Respect Intellectual Property and Privacy Rights
8
+
9
+ - Ensure that any audio or material processed through Applio is either owned by you or used with explicit permission from the rightful owner.
10
+ - Respect copyrights, intellectual property rights, and privacy rights of all individuals and entities.
11
+
12
+ ### 2. Avoid Harmful or Unethical Use
13
+
14
+ - Do not use Applio to create or distribute content that harms, defames, or infringes upon the rights of others.
15
+ - Avoid any activities that may violate ethical standards, promote hate speech, or facilitate illegal conduct.
16
+
17
+ ### 3. Adhere to Local Laws and Regulations
18
+
19
+ - Familiarize yourself with and comply with the laws and regulations governing the use of AI, voice transformation tools, and generated content in your jurisdiction.
20
+
21
+ ## Disclaimer of Liability
22
+
23
+ Applio and its contributors disclaim all liability for any misuse or unintended consequences arising from the use of this tool.
24
+
25
+ - **No Warranty**: Applio is provided "as is" without any warranty, express or implied.
26
+ - **User Responsibility**: You bear full responsibility for how you choose to use Applio and any outcomes resulting from that use.
27
+ - **No Endorsement**: Applio does not endorse or support any activities or content created with this tool that result in harm, illegal activity, or unethical practices.
28
+
29
+ ## Permitted Use Cases
30
+
31
+ Applio is designed for:
32
+
33
+ - **Personal Projects**: Experimentation and creative endeavors for personal enrichment.
34
+ - **Academic Research**: Advancing scientific understanding and education.
35
+ - **Investigative Purposes**: Analyzing data in lawful and ethical contexts.
36
+ - **Commercial Use**: Creating content for commercial purposes, provided that appropriate rights and permissions are obtained and all legal and ethical standards are adhered to.
37
+
38
+ ## Prohibited Activities
39
+
40
+ The following uses are explicitly prohibited:
41
+
42
+ - **Harmful Applications**: Generating audio to defame, harm, or manipulate others.
43
+ - **Unauthorized Distribution**: Sharing content that violates copyrights or the rights of others.
44
+ - **Deceptive Practices**: Creating content intended to deceive or defraud others.
45
+
46
+ ## Training Data
47
+
48
+ All official models distributed by Applio have been trained under publicly available datasets such as [VCTK](https://huggingface.co/datasets/IAHispano/Applio-Dataset). We strive to maintain transparency and ethical practices in the development and distribution of our tools.
49
+
50
+ ## Amendments
51
+
52
+ Applio reserves the right to modify these terms at any time. Continued use of the tool signifies your acceptance of any updated terms.
requirements.txt ADDED
@@ -0,0 +1,45 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Core dependencies
2
+ pip>=23.3; sys_platform == 'darwin'
3
+ wheel; sys_platform == 'darwin'
4
+ PyYAML; sys_platform == 'darwin'
5
+ numpy==1.23.5
6
+ requests>=2.31.0,<2.32.0
7
+ tqdm
8
+ wget
9
+
10
+ # Audio processing
11
+ ffmpeg-python>=0.2.0
12
+ faiss-cpu==1.7.3
13
+ librosa==0.9.2
14
+ scipy==1.11.1
15
+ soundfile==0.12.1
16
+ noisereduce
17
+ pedalboard
18
+ stftpitchshift
19
+ soxr
20
+
21
+ # Machine learning and deep learning
22
+ omegaconf>=2.0.6; sys_platform == 'darwin'
23
+ numba; sys_platform == 'linux'
24
+ numba==0.57.0; sys_platform == 'darwin' or sys_platform == 'win32'
25
+ torch==2.3.1
26
+ torchaudio==2.3.1
27
+ torchvision==0.18.1
28
+ torchcrepe==0.0.23
29
+ torchfcpe
30
+ einops
31
+ libf0
32
+ transformers==4.44.2
33
+
34
+ # Visualization and UI
35
+ matplotlib==3.7.2
36
+ tensorboard
37
+ gradio==4.44.0
38
+
39
+ # Miscellaneous utilities
40
+ certifi>=2023.07.22; sys_platform == 'darwin'
41
+ antlr4-python3-runtime==4.8; sys_platform == 'darwin'
42
+ tensorboardX
43
+ edge-tts==6.1.9
44
+ pypresence
45
+ beautifulsoup4
run-applio.bat ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+ setlocal
3
+ for %%F in ("%~dp0.") do set "folder_name=%%~nF"
4
+
5
+ title %folder_name%
6
+
7
+ if not exist env (
8
+ echo Please run 'run-install.bat' first to set up the environment.
9
+ pause
10
+ exit /b 1
11
+ )
12
+
13
+ env\python.exe app.py --open
14
+ echo.
15
+ pause
run-applio.sh ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/sh
2
+ printf "\033]0;Applio\007"
3
+ . .venv/bin/activate
4
+
5
+ export PYTORCH_ENABLE_MPS_FALLBACK=1
6
+ export PYTORCH_MPS_HIGH_WATERMARK_RATIO=0.0
7
+
8
+ clear
9
+ python app.py --open
run-install.bat ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+ setlocal enabledelayedexpansion
3
+ title Applio Installer
4
+
5
+ echo Welcome to the Applio Installer!
6
+ echo.
7
+
8
+ set "INSTALL_DIR=%cd%"
9
+ set "MINICONDA_DIR=%UserProfile%\Miniconda3"
10
+ set "ENV_DIR=%INSTALL_DIR%\env"
11
+ set "MINICONDA_URL=https://repo.anaconda.com/miniconda/Miniconda3-py310_24.7.1-0-Windows-x86_64.exe"
12
+ set "CONDA_EXE=%MINICONDA_DIR%\Scripts\conda.exe"
13
+
14
+ call :cleanup
15
+ call :install_miniconda
16
+ call :create_conda_env
17
+ call :install_dependencies
18
+
19
+ echo Applio has been installed successfully!
20
+ echo To start Applio, please run 'run-applio.bat'.
21
+ echo.
22
+ pause
23
+ exit /b 0
24
+
25
+ :cleanup
26
+ echo Cleaning up unnecessary files...
27
+ for %%F in (Makefile Dockerfile docker-compose.yaml *.sh) do if exist "%%F" del "%%F"
28
+ echo Cleanup complete.
29
+ echo.
30
+ exit /b 0
31
+
32
+ :install_miniconda
33
+ if exist "%CONDA_EXE%" (
34
+ echo Miniconda already installed. Skipping installation.
35
+ exit /b 0
36
+ )
37
+
38
+ echo Miniconda not found. Starting download and installation...
39
+ powershell -Command "& {Invoke-WebRequest -Uri '%MINICONDA_URL%' -OutFile 'miniconda.exe'}"
40
+ if not exist "miniconda.exe" goto :download_error
41
+
42
+ start /wait "" miniconda.exe /InstallationType=JustMe /RegisterPython=0 /S /D=%MINICONDA_DIR%
43
+ if errorlevel 1 goto :install_error
44
+
45
+ del miniconda.exe
46
+ echo Miniconda installation complete.
47
+ echo.
48
+ exit /b 0
49
+
50
+ :create_conda_env
51
+ echo Creating Conda environment...
52
+ call "%MINICONDA_DIR%\_conda.exe" create --no-shortcuts -y -k --prefix "%ENV_DIR%" python=3.10
53
+ if errorlevel 1 goto :error
54
+ echo Conda environment created successfully.
55
+ echo.
56
+
57
+ if exist "%ENV_DIR%\python.exe" (
58
+ echo Installing specific pip version...
59
+ "%ENV_DIR%\python.exe" -m pip install "pip<24.1"
60
+ if errorlevel 1 goto :error
61
+ echo Pip installation complete.
62
+ echo.
63
+ )
64
+ exit /b 0
65
+
66
+ :install_dependencies
67
+ echo Installing dependencies...
68
+ call "%MINICONDA_DIR%\condabin\conda.bat" activate "%ENV_DIR%" || goto :error
69
+ pip install --upgrade setuptools || goto :error
70
+ pip install -r "%INSTALL_DIR%\requirements.txt" || goto :error
71
+ pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 --upgrade --index-url https://download.pytorch.org/whl/cu121 || goto :error
72
+ call "%MINICONDA_DIR%\condabin\conda.bat" deactivate
73
+ echo Dependencies installation complete.
74
+ echo.
75
+ exit /b 0
76
+
77
+ :download_error
78
+ echo Download failed. Please check your internet connection and try again.
79
+ goto :error
80
+
81
+ :install_error
82
+ echo Miniconda installation failed.
83
+ goto :error
84
+
85
+ :error
86
+ echo An error occurred during installation. Please check the output above for details.
87
+ pause
88
+ exit /b 1
run-install.sh ADDED
@@ -0,0 +1,184 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+ set -e # Exit immediately if a command exits with a non-zero status
3
+
4
+ printf "\033]0;Installer\007"
5
+ clear
6
+ rm -f *.bat
7
+
8
+ # Function to log messages with timestamps
9
+ log_message() {
10
+ local msg="$1"
11
+ echo "$(date '+%Y-%m-%d %H:%M:%S') - $msg"
12
+ }
13
+
14
+ # Function to find a suitable Python version
15
+ find_python() {
16
+ for py in python3.10 python3 python; do
17
+ if command -v "$py" > /dev/null 2>&1; then
18
+ echo "$py"
19
+ return
20
+ fi
21
+ done
22
+ log_message "No compatible Python installation found. Please install Python 3.10."
23
+ exit 1
24
+ }
25
+
26
+ # Function to install FFmpeg based on the distribution
27
+ install_ffmpeg() {
28
+ if command -v brew > /dev/null; then
29
+ log_message "Installing FFmpeg using Homebrew on macOS..."
30
+ brew install ffmpeg
31
+ elif command -v apt > /dev/null; then
32
+ log_message "Installing FFmpeg using apt..."
33
+ sudo apt update && sudo apt install -y ffmpeg
34
+ elif command -v pacman > /dev/null; then
35
+ log_message "Installing FFmpeg using pacman..."
36
+ sudo pacman -Syu --noconfirm ffmpeg
37
+ elif command -v dnf > /dev/null; then
38
+ log_message "Installing FFmpeg using dnf..."
39
+ sudo dnf install -y ffmpeg --allowerasing || install_ffmpeg_flatpak
40
+ else
41
+ log_message "Unsupported distribution for FFmpeg installation. Trying Flatpak..."
42
+ install_ffmpeg_flatpak
43
+ fi
44
+ }
45
+
46
+ # Function to install FFmpeg using Flatpak
47
+ install_ffmpeg_flatpak() {
48
+ if command -v flatpak > /dev/null; then
49
+ log_message "Installing FFmpeg using Flatpak..."
50
+ flatpak install --user -y flathub org.freedesktop.Platform.ffmpeg
51
+ else
52
+ log_message "Flatpak is not installed. Installing Flatpak..."
53
+ if command -v apt > /dev/null; then
54
+ sudo apt install -y flatpak
55
+ elif command -v pacman > /dev/null; then
56
+ sudo pacman -Syu --noconfirm flatpak
57
+ elif command -v dnf > /dev/null; then
58
+ sudo dnf install -y flatpak
59
+ elif command -v brew > /dev/null; then
60
+ brew install flatpak
61
+ else
62
+ log_message "Unable to install Flatpak automatically. Please install Flatpak and try again."
63
+ exit 1
64
+ fi
65
+ flatpak install --user -y flathub org.freedesktop.Platform.ffmpeg
66
+ fi
67
+ }
68
+
69
+ install_python_ffmpeg() {
70
+ log_message "Installing python-ffmpeg..."
71
+ python -m pip install python-ffmpeg
72
+ }
73
+
74
+ # Function to create or activate a virtual environment
75
+ prepare_install() {
76
+ if [ -d ".venv" ]; then
77
+ log_message "Virtual environment found. This implies Applio has been already installed or this is a broken install."
78
+ printf "Do you want to execute run-applio.sh? (Y/N): " >&2
79
+ read -r r
80
+ r=$(echo "$r" | tr '[:upper:]' '[:lower:]')
81
+ if [ "$r" = "y" ]; then
82
+ chmod +x run-applio.sh
83
+ ./run-applio.sh && exit 0
84
+ else
85
+ log_message "Continuing with the installation."
86
+ rm -rf .venv
87
+ create_venv
88
+ fi
89
+ else
90
+ create_venv
91
+ fi
92
+ }
93
+
94
+ # Function to create the virtual environment and install dependencies
95
+ create_venv() {
96
+ log_message "Creating virtual environment..."
97
+ py=$(find_python)
98
+
99
+ "$py" -m venv .venv
100
+
101
+ log_message "Activating virtual environment..."
102
+ source .venv/bin/activate
103
+
104
+ # Install pip if necessary and upgrade
105
+ log_message "Ensuring pip is installed..."
106
+ python -m ensurepip --upgrade || {
107
+ log_message "ensurepip failed, attempting manual pip installation..."
108
+ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
109
+ python get-pip.py
110
+ }
111
+ python -m pip install --upgrade pip
112
+
113
+ install_ffmpeg
114
+ install_python_ffmpeg
115
+
116
+ log_message "Installing dependencies..."
117
+ if [ -f "requirements.txt" ]; then
118
+ python -m pip install -r requirements.txt
119
+ else
120
+ log_message "requirements.txt not found. Please ensure it exists."
121
+ exit 1
122
+ fi
123
+
124
+ log_message "Installing PyTorch..."
125
+ python -m pip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 --upgrade --index-url https://download.pytorch.org/whl/cu121
126
+
127
+ finish
128
+ }
129
+
130
+ # Function to finish installation
131
+ finish() {
132
+ log_message "Verifying installed packages..."
133
+ if [ -f "requirements.txt" ]; then
134
+ installed_packages=$(python -m pip freeze)
135
+ while IFS= read -r package; do
136
+ expr "${package}" : "^#.*" > /dev/null && continue
137
+ package_name=$(echo "${package}" | sed 's/[<>=!].*//')
138
+ if ! echo "${installed_packages}" | grep -q "${package_name}"; then
139
+ log_message "${package_name} not found. Attempting to install..."
140
+ python -m pip install --upgrade "${package}"
141
+ fi
142
+ done < "requirements.txt"
143
+ else
144
+ log_message "requirements.txt not found. Please ensure it exists."
145
+ exit 1
146
+ fi
147
+
148
+ clear
149
+ echo "Applio has been successfully installed. Run the file run-applio.sh to start the web interface!"
150
+ exit 0
151
+ }
152
+
153
+ # Main script execution
154
+ if [ "$(uname)" = "Darwin" ]; then
155
+ log_message "Detected macOS..."
156
+ if ! command -v brew >/dev/null 2>&1; then
157
+ log_message "Homebrew not found. Installing Homebrew..."
158
+ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
159
+ fi
160
+
161
+ # Check installed Python version and install the correct Homebrew Python version (macOS)
162
+ python_version=$(python3 --version | awk '{print $2}' | cut -d'.' -f1,2)
163
+ if [ "$python_version" = "3.9" ]; then
164
+ log_message "Python 3.9 detected. Installing Python 3.10 using Homebrew..."
165
+ brew install [email protected]
166
+ export PATH="/opt/homebrew/opt/[email protected]/bin:$PATH"
167
+ elif [ "$python_version" != "3.10" ]; then
168
+ log_message "Unsupported Python version detected: $python_version. Please use Python 3.10."
169
+ exit 1
170
+ fi
171
+
172
+ brew install faiss
173
+ export PYTORCH_ENABLE_MPS_FALLBACK=1
174
+ export PYTORCH_MPS_HIGH_WATERMARK_RATIO=0.0
175
+ export PATH="/opt/homebrew/bin:$PATH"
176
+ elif [ "$(uname)" != "Linux" ]; then
177
+ log_message "Unsupported operating system. Are you using Windows?"
178
+ log_message "If yes, use the batch (.bat) file instead of this one!"
179
+ exit 1
180
+ fi
181
+
182
+ prepare_install
183
+
184
+
run-tensorboard.bat ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ @echo off
2
+ setlocal
3
+ title Tensorboard
4
+
5
+ if not exist env (
6
+ echo Please run 'run-install.bat' first to set up the environment.
7
+ pause
8
+ exit /b 1
9
+ )
10
+
11
+ env\python.exe core.py tensorboard
12
+ echo.
13
+ pause
run-tensorboard.sh ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ #!/bin/sh
2
+ printf "\033]0;Tensorboard\007"
3
+ . .venv/bin/activate
4
+
5
+ clear
6
+ python core.py tensorboard