VOICEVOX/voicevox_engine
無料で使える中品質なテキスト読み上げソフトウェア、VOICEVOXの音声合成エンジン
VOICEVOX Engine – What it is
VOICEVOX Engine is an open‑source HTTP server that turns Japanese text into spoken audio. It is the back‑end for the VOICEVOX desktop editor and is built on top of VOICEVOX Core, the actual neural‑network‑based TTS model. The repository ships the server code, a Docker image, and tooling for running the engine on CPU or GPU.
Key capabilities (as described in the README)
| Feature | How it works / what you can do |
|---|---|
| Text‑to‑speech | Send a POST request to /audio_query to get a synthesis query, then POST that JSON to /synthesis (or /streaming_synthesis) to receive a WAV file (24 kHz). |
| Streaming synthesis | /streaming_synthesis returns audio in small chunks so a client can start playback before the whole utterance is ready. |
| Voice morphing | /synthesis_morphing blends two speaker styles (e.g., speaker 8 → speaker 10) with a controllable morph rate. |
| User dictionary | CRUD API (/user_dict, /user_dict_word) lets you add, edit, delete custom word‑pronunciation entries, useful for proper nouns or domain‑specific terms. |
| Presets | presets.yaml can be edited to share speaker/style settings across projects; the API exposes /presets and /audio_query_from_preset. |
| AquesTalk‑style phonetic notation | The engine can return and accept a Katakana‑only “AquesTalk‑style” representation of pronunciation, giving fine‑grained control over accents. |
| Singing synthesis | Specialized endpoints (/sing_frame_audio_query, /frame_synthesis) accept MIDI‑like note data to generate singing voice output. |
| Cancellable synthesis | When started with --enable_cancellable_synthesis, aborting the HTTP connection frees the compute resources immediately. |
| Docker images | Pre‑built voicevox/voicevox_engine:cpu-latest and voicevox/voicevox_engine:nvidia-latest images for quick deployment. |
| Configurable CORS & mutable‑API toggle | Runtime flags (--cors_policy_mode, --disable_mutable_api) let you restrict which origins can call the API or lock down dictionary‑changing endpoints. |
| GPU/CPU selection, threading, mock mode | Command‑line options (--use_gpu, --cpu_num_threads, --enable_mock) let you run on a GPU, limit CPU threads, or use a mock engine for testing. |
Typical usage flow (quick example)
# 1. Start the engine (Docker example, CPU)
docker run --rm -p 127.0.0.1:50021:50021 voicevox/voicevox_engine:cpu-latest
# 2. Get a synthesis query for some text
echo -n "こんにちは、音声合成の世界へようこそ" > text.txt
curl -s -X POST "127.0.0.1:50021/audio_query?speaker=1" \
--get --data-urlencode text@text.txt > query.json
# 3. Synthesize the audio
curl -s -H "Content-Type: application/json" -X POST -d @query.json \
"127.0.0.1:50021/synthesis?speaker=1" > audio.wav
The resulting audio.wav is a 24 kHz mono file.
Who might use this?
- Developers building Japanese‑language voice assistants, games, or accessibility tools who need a locally‑hosted TTS service.
- Researchers experimenting with voice style morphing, custom pronunciation dictionaries, or singing synthesis.
- Integrators who want to embed VOICEVOX into other applications via its HTTP API or Docker container.
Getting started / resources
- Downloads – Latest binaries are on the Releases page.
- API docs – Interactive Swagger UI at
http://127.0.0.1:50021/docs(or the hosted docs at https://voicevox.github.io/voicevox_engine/api/). - Docker –
docker pull voicevox/voicevox_engine:cpu-latest(ornvidia-latestfor GPU). - Contribution – See
CONTRIBUTING.mdfor build, test, and CI instructions; the project welcomes pull requests.
TL;DR
VOICEVOX Engine is a self‑contained, HTTP‑based Japanese TTS server that supports normal synthesis, streaming, voice morphing, custom dictionaries, and even singing. It can run on CPU or GPU, is distributed as Docker images, and is intended for developers who need a programmable speech synthesis backend.
Related
- Project
- Project
- Project
- Project
- Project