Repository navigation
Releases: kjranyone/sttts-gui
Release list
v0.1.4
Fixed
sttts-saydid not write the bundled preset voices todata/voices/(only the GUI did), so a CLI-only install had no voices with reference audio. Anysttts-saycommand now writes the missing presets, like the GUI; deleted presets are still not restored.
Downloads: Windows x64 (sttts-gui = GUI + CLI, sttts-say = CLI only). macOS (Apple Silicon) and Linux x64 builds of sttts-say are experimental: they are built and unit-tested in CI, but not yet verified on real hardware.
v0.1.3
Added
- Models
v4.1-animeandv4.1-anime-int8: Irodori-TTS v4.1 Anime by phasefield-audio, v4.1 Small (RF) fine-tuned on anime-style speech. Captions and emoji may act differently fromv4.1-small. Choose it withsttts-say model use v4.1-animeor in the GUI's Advanced settings.
Changed
- Agent Skill (
skills/sttts-say/SKILL.md): the agent chooses the model, voice and take itself and reports its choices instead of asking the user, picks takes by checks it can make without hearing them, and always synthesizes with a voice that has reference audio (a bundled preset or one it makes first) so the output stays stable from line to line and across models.
Downloads: Windows x64 (sttts-gui = GUI + CLI, sttts-say = CLI only). macOS (Apple Silicon) and Linux x64 builds of sttts-say are experimental: they are built and unit-tested in CI, but not yet verified on real hardware.
v0.1.2
Added
- GUI: each card has 📁, which opens the folder with that line's WAV selected, so it can be dragged into a video editor. "Open" under "Audio queue" opens
output/. - GUI: each saved line gets subtitles (
.srt, one cue per synthesized chunk) and a record (.json: text, caption, seed, timings) next to its WAV.
Changed
- GUI: spoken audio is saved as one WAV per line instead of one per chunk, in a folder per launch, numbered in the order it was spoken and named after the start of the line (
output/2026-10-11_153012/003_そっか、今日もおつかれさま。.wav). Cancelled or failed lines are no longer saved.
Downloads: Windows x64 (sttts-gui = GUI + CLI, sttts-say = CLI only). macOS (Apple Silicon) and Linux x64 builds of sttts-say are experimental: they are built and unit-tested in CI, but not yet verified on real hardware.
v0.1.1
Added
- Model choice: Irodori-TTS v4.1 Small (RF, 40 steps with classifier-free guidance) besides the default v4.1 Small MeanFlow. It reads kanji and clones voices more accurately at about 20 times the computation, which suits
sttts-say. Choose it withsttts-say model use v4.1-small(recorded indata/backend.jsonastts.model) or in the GUI's Advanced settings. - More models:
v4.1-small-int8(int8 weights, about a quarter of the GPU memory for the main layers),v4-large(Irodori-TTS v4 Large, 3.3B parameters, T5Gemma 2 text encoder; subject to the Gemma Terms of Use) andv4-large-int8. Int8 weights stay int8 in GPU memory. sttts-say model list/model use NAME.- One-line install for AI agents: paste the line from the README into the agent and it installs
sttts-sayand its Agent Skill by followingskills/sttts-say/INSTALL.md(download, checksum,PATH, Skill, check). sttts-saykeeps the model loaded in a background process between calls, so after the first call a short line takes about 1 s instead of 6 s with the default model. It starts by itself, exits after 10 minutes without requests or with the newsttts-say stop, and gives the GPU to sttts-gui when the GUI starts while it is idle.- The RF sampler options of Irodori in
tts.sampling(and in the GUI's synthesis parameters):cfg_scale_text,cfg_scale_caption,cfg_scale_speaker,cfg_scale,cfg_guidance_mode,cfg_min_t,cfg_max_t,truncation_factor,rescale_k,rescale_sigma,speaker_kv_scale,speaker_kv_min_t,speaker_kv_max_layers,speaker_uncond_mode,t_schedule_mode,sway_coeff. - Eight preset voices (
genki,kuudere,narrator,ojisan,oneesan,seinen,shounen,tsundere), synthetic voices made with Gemini TTS. They are written todata/voices/on first launch of the GUI orsttts-say; deleted presets are not restored and existing voices with the same name are kept. - Voice library: a panel opened from the gear next to "+" under Voice, to preview voices, set their icons, delete them (with confirmation) and restore deleted bundled voices. Deleting a voice also removes its
sttts-saysettings (NAME.json). - Each card shows the seed its voice was synthesized with. Click it to make it the fixed seed, so a voice you liked while on random can be used again.
Changed
- The delete button next to the voice selector is gone; voices are deleted from the voice library instead, so a click meant for "+" cannot delete one.
tts.num_stepsandtts.sampling.num_stepsdefault to the model's own step count (4 for MeanFlow, 40 for RF) when unset.
Fixed
- The "loading" bar for speech synthesis disappeared once the model was loaded, although the warm-up synthesis that follows was still running (about a minute with v4 Large), so the app looked unresponsive. The bar now stays until the warm-up is done.
Downloads: Windows x64 (sttts-gui = GUI + CLI, sttts-say = CLI only). macOS (Apple Silicon) and Linux x64 builds of sttts-say are experimental: they are built and unit-tested in CI, but not yet verified on real hardware.
v0.1.0
Added
sttts-say: a command-line tool that synthesizes lines with Irodori-TTS without the GUI, for agents (Agent Skills) and video workflows.- Voices (
data/voices/NAME.wav+NAME.jsonwith caption / seed / sampling), takes with a reproducible record (--like), seed auditions, and promotion of a take to a reference voice (voice save). - Incremental rendering of JSONL scripts, with per-chunk timings for subtitles.
- Agent Skill in
skills/sttts-say/SKILL.md.
- Voices (
- Only one process uses the GPU at a time (sttts-gui and sttts-say exclude each other with a lock file).
- Release builds on GitHub Releases:
sttts-gui(GUI + CLI) and a CLI-onlysttts-sayarchive for Windows x64, with SHA-256 checksums. - UI in English, Japanese and Simplified Chinese. It follows the Windows display language and can be switched in ⚙ Settings; READMEs in all three languages.
HF_HUB_OFFLINE=1disables model downloads (only models already in the cache are used).- Windows version information (product name
sttts-gui, version fromCargo.toml) in both executables. - Privacy policy (
PRIVACY.md) and code signing policy (README). - Experimental
sttts-saybuilds for macOS (Apple Silicon) and Linux x64. They are built and unit-tested in CI but not yet verified on real hardware. Data goes to~/Library/Application Support/sttts-gui(macOS) or~/.local/share/sttts-gui/$XDG_DATA_HOME/sttts-gui(Linux). - CI on Windows, macOS and Linux.
Changed
sttts-engine: the mic, VAD and ASR are behind thelivefeature (on by default);sttts-sayis built without them.- After you finish an utterance and start the next one, the previous card shows "Transcribing…" instead of a second "Listening…".
Fixed
- An utterance too short to be recognized no longer leaves a card stuck in "Listening…"; it is removed.
- Gemini: when the server sends no final transcript or completion signal after an utterance, the text received so far is used 2.5 s later instead of waiting 20 s and failing with "transcription timed out". The following utterances are no longer held up behind it.
- When reading aloud starts while you are still talking (long utterances), the card's text keeps growing with the recognition instead of freezing at the point reading started.
- Reading aloud while you are still talking no longer stops for the rest of a long utterance when the recognizer revises text it has already read (e.g. Gemini adding spaces); it carries on from the same position.
- Expression: "pausing as it goes" (間を取りながら) is no longer added to almost every utterance. Only gaps of 320 ms or more between speech count as pauses (ordinary breaks between phrases and the silence before/after the utterance no longer do), and only longer utterances (1.5 s or more of speech) get it.
Downloads: Windows x64 (sttts-gui = GUI + CLI, sttts-say = CLI only). macOS (Apple Silicon) and Linux x64 builds of sttts-say are experimental: they are built and unit-tested in CI, but not yet verified on real hardware.