explaingit

thanhng8/supertonic-tool

Analysis updated 2026-05-18

61SwiftAudience · developerComplexity · 3/5Setup · moderate

TLDR

A local server and web page that add batch processing, multi voice dialogue, and easy file import on top of the Supertonic text to speech engine.

Mindmap

mindmap
  root((supertonic tool))
    What it does
      Local WebSocket server
      Browser TTS client
      Batch inference
    Tech stack
      Python
      WebSocket
      ONNX Runtime
    Use cases
      Local narration audio
      Multi voice dialogue
      Bulk file import
    Audience
      Developers
      Content creators

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Generate a batch of narration or dialogue audio clips locally without a cloud service

USE CASE 2

Build multi speaker dialogue with a different voice and language per line

USE CASE 3

Import a spreadsheet or text file of lines and convert them all to speech at once

USE CASE 4

Connect your own app to the local TTS server over WebSocket

What is it built with?

PythonWebSocketONNX RuntimeHTML

How does it compare?

thanhng8/supertonic-toolnanako0129/tokenbarjaydenjcpy/eeveespotifyreincarnated
Stars616468
LanguageSwiftSwiftSwift
Setup difficultymoderateeasyhard
Complexity3/52/54/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires the upstream Supertonic project set up first, plus Python 3.10 or newer and the uv package manager.

In plain English

supertonic-tool is a small toolkit built on top of Supertone's Supertonic, a text to speech engine, that turns it into a local server you can talk to over WebSocket along with a browser based interface for using it. It is a companion project, not part of the original Supertonic repository, and it stays in sync with that upstream project through a helper script. The server automatically detects the best way to run the speech model on your machine, checking for CUDA on NVIDIA graphics cards, DirectML on Windows, or CoreML on Mac, and falling back to plain CPU processing if none of those are available or if an accelerator fails to start. When several text to speech requests arrive close together, the server groups them into a single batch and processes them with one call to the model instead of one call each, which speeds things up noticeably when converting many lines at once. The included web page lets you build a queue of dialogue lines, each with its own voice and language, which is useful for multi speaker conversations or narration with different characters. You can paste in multiple lines at once or import them from a spreadsheet, CSV, or text file, and there is a shorthand format for setting the voice and language inline. Once converted, each line gets its own audio player and download button, and the whole batch can be downloaded together as a single zip file of audio files. To get started, you first set up the original Supertonic project, then run one of the included launcher scripts, which install any missing dependencies and start the server. A Windows batch file and a shell script are both provided, and there are example client code snippets for browsers, a Chrome extension, Node.js, and Python for anyone who wants to connect their own program instead of using the included web page. Python 3.10 or newer and the uv package manager are recommended for the smoothest setup.

Copy-paste prompts

Prompt 1
Walk me through setting up Supertonic and then this WebSocket tool on top of it.
Prompt 2
Show me how to use the multi-line dialogue queue in tts_web.html to assign different voices per line.
Prompt 3
Explain how to force the server to use CPU instead of CUDA with the --cpu flag.
Prompt 4
Help me write a Python client that connects to ws_tts_server.py and sends text for conversion.

Frequently asked questions

What is supertonic-tool?

A local server and web page that add batch processing, multi voice dialogue, and easy file import on top of the Supertonic text to speech engine.

What language is supertonic-tool written in?

Mainly Swift. The stack also includes Python, WebSocket, ONNX Runtime.

How hard is supertonic-tool to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is supertonic-tool for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.