rsxdalv/TTS-WebUI

★ 3,262⑂ 0

A single Gradio + React WebUI with extensions for ACE-Step, OmniVoice, Kimi Audio, Piper TTS, GPT-SoVITS, CosyVoice, XTTSv2, DIA, Kokoro, OpenVoice, ParlerTTS, Stable Audio, MMS, StyleTTS2, MAGNet, AudioGen, MusicGen, Tortoise, RVC, Vocos, Demucs, SeamlessM4T, and Bark!

3,262Star
0Fork
0Watch
0Issue
TypeScriptLanguage
-License
Created · last push · repository size 0 KB · default branch -

README

TTS WebUI

Download Installer || Installation || Docker Setup || Silly Tavern || Extensions || Feedback / Bug reports

banner

GitHub stars GitHub Discord Open In Colab GitHub forks YouTube

Videos

| Watch the video | Watch the video | Watch the video | | :------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------: | :------------------------------------------------------------------------------------------------------: |

Examples

| | | | | :-----------------------------------------: | :-----------------------------------------: | :-------------------------------: |

Screenshots

| react_1.png) | react_2.png) | react_3.png) | | :-----------------------------------------: | :-----------------------------------------: | :-------------------------------: |

| gradio_1.png) | gradio_2.png) | gradio_3.png) | | :-----------------------------------------: | :-----------------------------------------: | :-------------------------------: |

Supported Models

| Text-to-speech | Audio/Music Generation | Audio Conversion/Tools | | ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | | Bark | MusicGen | RVC | | Tortoise | MAGNeT | Demucs | | Maha TTS | Stable Audio | Vocos | | MMS | Riffusion\* | Whisper | | Vall-E X | AudioCraft Mac\* | AP BWE | | StyleTTS2 | AudioCraft Plus\* | Resemble Enhance | | SeamlessM4T | ACE-Step\* | Audio Separator | | XTTSv2\ | Song Bloom\ | PyRNNoise\* | | MARS5\ | | MiMo Audio\ | | F5-TTS\* | | | | Parler TTS\* | | | | OpenVoice\* | | | | OpenVoice V2\* | | | | Kokoro TTS\* | | | | DIA\* | | | | CosyVoice\* | | | | GPT-SoVITS\* | | | | Piper TTS\* | | | | Kimi Audio 7B Instruct\* | | | | Chatterbox\* | | | | VibeVoice\* | | | | Kitten TTS\* | | | | Index-TTS2\* | | | | VoxCPM\* | | | | FireRedTTS2\* | | | | MegaTTS3\* | | | | MiniMax Cloud TTS (built-in) | | |

\* These models are not installed by default, instead they are available as extensions.

Installation

Using TTS WebUI Ignition (Recommended)

TTS WebUI Ignition is the new installer and launcher for TTS WebUI.

On Windows:

winget install TTS-WebUI.Ignition

For other platforms, download the latest release from the releases page or build it from source using the instructions in the repository.

Using the Installer (Legacy)

Current base installation size is around 10.7 GB. Each model will require 2-8 GB of space in addition.

Manual installation

Prerequisites:

1. Clone the repository:
   git clone https://github.com/rsxdalv/tts-webui.git
   cd tts-webui
   
2. Install required packages:
    pip install -r requirements.txt
    

3. Run the server:

   python server.py --no-react
   

4. For React UI:

   cd react-ui
   npm install
   npm run build
   cd ..
   python server.py
   

For detailed manual installation instructions, please refer to the Manual Installation Guide.

Docker Setup

tts-webui can also be ran inside of a Docker container. Using CUDA inside of docker requires NVIDIA Container Toolkit. To get started, pull the image from GitHub Container Registry:

docker pull ghcr.io/rsxdalv/tts-webui:main

Once the image has been pulled it can be started with Docker Compose: The ports are 7770 (env:TTS_PORT) for the Gradio backend and 3000 (env:UI_PORT) for the React front end.

docker compose up -d

The container will take some time to generate the first output while models are downloaded in the background. The status of this download can be verified by checking the container logs:

docker logs tts-webui

Building the image yourself

If you wish to build your own docker container, you can use the included Dockerfile:
docker build -t tts-webui .
Please note that the docker-compose needs to be edited to use the image you just built.

Changelog

May:

April: March: December: November: October:

Past Changes

See the 2025 Changelog for a detailed list of changes in 2025.

See the 2024 Changelog for a detailed list of changes in 2024.

See the 2023 Changelog for a detailed list of changes in 2023.

Extensions

Extensions are available to install from the webui itself, or using React UI. They can also be installed using the extension manager or the External Extensions Installer (a built-in tool for adding custom extensions from JSON).

Internally, extensions are just python packages that are installed using pip. Multiple extensions can be installed at the same time, but there might be compatibility issues between them. After installing or updating an extension, you need to restart the app to load it.

For a curated list of community-created extensions, visit the TTS WebUI Extension Catalog. You can also find information on publishing your own extensions there.

Updates need to be done manually by using the mini-control panel:

mini-control-panel

Integrations

Silly Tavern

1. Update OpenAI TTS API extension to latest version 2. Start the API and test it with Python Requests (OpenAI client might not be installed thus the Test with Python OpenAI client might fail)

3. Once you can see the audio generates successfully, go to Silly Tavern, and add a new TTS API Default provider endpoint: http://localhost:7778/v1/audio/speech silly-tavern-tts-api 4. Test it out!

Text Generation WebUI (oobabooga/text-generation-webui)

1. Install https://github.com/rsxdalv/text-to-tts-webui extension in text-generation-webui 2. Start the API and test it with Python Requests 3. Configure using the panel: oobaboooga-text-to-tts-webui

OpenWebUI

1. Enable OpenAI API extension in TTS WebUI 2. Start the API and test it with Python Requests 3. Once you can see the audio generates successfully, go to OpenWebUI, and add a new TTS API Default provider endpoint: http://localhost:7778/v1/audio/speech 4. Test it out! openwebui

OpenAI Compatible APIs

Using the instructions above, you can install an OpenAI compatible API, and use it with Silly Tavern or other OpenAI compatible clients.

Compatibility / Errors

Red messages in console

These messages:
---- requires ----, but you have ---- which is incompatible.
Are completely normal. It's both a limitation of pip and because this Web UI combines a lot of different AI projects together. Since the projects are not always compatible with each other, they will complain about the other projects being installed. This is normal and expected. And in the end, despite the warnings/errors the projects will work together. It's not clear if this situation will ever be resolvable, but that is the hope.

Extra Voices for Bark, Prompt Samples

PromptEcho

Bark Speaker Directory

Bark Readme

README_Bark.md

Info about managing models, caches and system space for AI projects

https://github.com/rsxdalv/tts-webui/discussions/186#discussioncomment-7291274

Open Source Libraries

This project utilizes the following open source libraries:

Ethical and Responsible Use

This technology is intended for enablement and creativity, not for harm.

By engaging with this AI model, you acknowledge and agree to abide by these guidelines, employing the AI model in a responsible, ethical, and legal manner.

License

Codebase and Dependencies

The codebase is licensed under MIT. However, it's important to note that when installing the dependencies, you will also be subject to their respective licenses. Although most of these licenses are permissive, there may be some that are not. Therefore, it's essential to understand that the permissive license only applies to the codebase itself, not the entire project.

That being said, the goal is to maintain MIT compatibility throughout the project. If you come across a dependency that is not compatible with the MIT license, please feel free to open an issue and bring it to our attention.

Known non-permissive dependencies: | Library | License | Notes | |-------------|-------------------|-------------------------------------------------------------------------------------------| | encodec | CC BY-NC 4.0 | Newer versions are MIT, but need to be installed manually | | diffq | CC BY-NC 4.0 | Optional in the future, not necessary to run, can be uninstalled, should be updated with demucs | | lameenc | GPL License | Future versions will make it LGPL, but need to be installed manually | | unidecode | GPL License | Not mission critical, c

More Audio Trending projects

1

huggingface / transformers

Python★ 166,108⑂ 0
2

harry0703 / MoneyPrinterTurbo

Python★ 123,776⑂ 0
3

unslothai / unsloth

Python★ 76,181⑂ 0
4

RVC-Boss / GPT-SoVITS

Python★ 61,798⑂ 0
5

calesthio / OpenMontage

Python★ 59,205⑂ 0
6

ggml-org / whisper.cpp

C++★ 53,674⑂ 0