Hey… lend me your ear?
55 whispered lines, best heard with headphones. Direction and distance are added through audio post-processing.
Open video in a new tabRelease
Choose how a Japanese line is delivered: its emotion and intensity, a change of feeling halfway through, a laugh or sigh, a whisper, or a specific pronunciation—all with a reference voice you provide.
55 whispered lines, best heard with headphones. Direction and distance are added through audio post-processing.
Open video in a new tabEmotion, intensity, laughter, whispering, and pronunciation, with side-by-side comparisons of the same lines.
Open video in a new tab3D audio uses TH Köln’s KU100 near-field HRIRs, applied through convolution to the ASMR and feature-tour audio. HRIR data license: CC BY-SA 3.0.
Iroha-TTS-V1 is an emotional speech synthesis model for Japanese character dialogue, adapted from Fish Audio S2-Pro. This version includes model weights and runnable inference code. Once you have repository access and download the files, you can run it on one NVIDIA GPU without an inference service from us.
Seven controls share the same weights:
| Control | How to use it | |
|---|---|---|
| 01 | Whole-line emotion | joy, anger, sadness, or surprise |
| 02 | Emotion intensity | Four presets or a float within the supported range; experimental |
| 03 | Mid-line emotion changes | [happy]やっと会えた。[sad]でも、もうお別れだね。 in one generation |
| 04 | Voice cloning | A short reference recording and its transcript |
| 05 | Laughter, sighs, crying | Place [laugh], [sigh], or [cry] in the text |
| 06 | Whispering | [whisper]ここだけの話だよ。 |
| 07 | Kana pronunciation | 水神[みずかみ] for names or ambiguous readings |
The weights and code are hosted at IrohaStudio/Iroha-TTS. As of October 31, 2026, anonymous access to the model repository and online Space is restricted. Downloads require the relevant Hugging Face access. You can listen to the comparison below and all 20 audio samples on this site without signing in.
Japanese TTS can already read text quite naturally. In character dialogue, audio drama and voice agents, the time-consuming part is often getting the delivery you want.
The same line might need to sound happy, begin with a sigh, turn from delight to disappointment, be whispered close to the listener, or pronounce a character’s name exactly as written in the script. This can take repeated sampling or manually joining separate recordings.
Iroha makes these choices part of the input. A text tag or an API parameter asks for a delivery without requiring you to construct its acoustic details by hand.
We focused on controllable expression in Japanese dialogue. This work does not establish better performance across every language or speech task.
Japanese samples with the same text and reference voice. These are selected examples, not a measure of success rate.
[happy] あっ、つい話し込んじゃってたわね。
Oh, I got carried away chatting.
The audio could not load. Use the link below to open the audio file.
Explore all 20 samples and the implementationWe use automatic evaluation and a Japanese listening study. The automatic results come from the October 29, 2026 technical report; listener scores are the October 30 snapshot.
The panel contains 6 speakers × 20 evaluation texts × 4 emotions, or 480 outputs per system. Request IDs, texts, requested emotions and reference audio are matched. EmoRuler, our adapted emotion classifier, measures emotion accuracy, with the public emotion2vec+ model as a cross-check. CER uses Qwen3-ASR, speaker similarity uses WavLM + ECAPA, and UTMOS predicts audio quality.
| System | Emotion accuracy (emotion2vec+) |
Emotion accuracy (EmoRuler) |
CER | Speaker similarity | UTMOS |
|---|---|---|---|---|---|
| Iroha-TTS-V1 | 82.1% | 89.0% | 5.6% | 0.645 | 3.58 |
| Original Fish S2-Pro | 17.9% | 6.0% | 5.6% | 0.685 | 3.51 |
| Fish Audio Drama 3 | 32.1% | 21.2% | 7.0% | 0.628 | 3.26 |
| IndexTTS-2.5 (emotion vector 0.8) | 40.2% | 30.6% | 6.9% | 0.612 | 2.26 |
| Irodori-TTS v4-Large (text description) | 30.8% | 20.6% | 6.0% | 0.649 | 3.03 |
This development panel was reused for model selection; it is not an independent test set. Four of its six voices appeared in EmoRuler training, and the overlap audit remains limited. Each system uses one selected configuration; backends, interfaces and training budgets differ. Without emotion tags, Iroha scores 5.0% CER, 0.685 speaker similarity and 3.63 UTMOS.
A strictly paired comparison isolates the weight adaptation: the same inference engine, inputs, reference encodings and random seeds, with only the weights changed.
On these matched requests, better adherence to emotion tags did not come with a higher character error rate.
We selected 15 groups × 5 emotions = 75 lines. Each listener heard all 75 lines.
| Model | Naturalness ↑ | Emotion match ↑ | Voice similarity ↑ | Overall score ↑ | Win share ↑ |
|---|---|---|---|---|---|
| Ours | 3.84 | 4.20 | 3.52 | 3.85 | 31.7% |
| Fish Audio Drama 3 | 3.97 | 3.64 | 3.45 | 3.69 | 23.2% |
| Irodori-TTS v4 large · Text description | 3.61 | 3.95 | 3.32 | 3.63 | 28.1% |
| Fish S2 Pro Original | 3.75 | 2.93 | 3.72 | 3.47 | 12.1% |
| IndexTTS-2.5 | 2.35 | 3.49 | 2.81 | 2.88 | 4.9% |
All three dimensions use human ratings on a five-point scale (MOS). The overall score is their unweighted mean. Win share compares the five models for each listener–line pair, splitting credit equally when models tie for first.
Ours’ pairwise win rates, based on the overall score, with ties counted as half a win:
| Comparison | Ours win rate ↑ |
|---|---|
| vs. Fish S2 Pro Original | 69.3% |
| vs. Fish Audio Drama 3 | 58.0% |
| vs. Irodori-TTS v4 large · Text description | 58.7% |
| vs. IndexTTS-2.5 | 82.7% |
Environment: Linux, Python 3.12 and an NVIDIA GPU. We recommend at least 28 GB of free VRAM. The first run downloads roughly 11 GB for the Fish S2-Pro base.
python3.12 -m venv .venv && source .venv/bin/activate
pip install -U huggingface_hub
hf auth login # Use an account with access to the model repository
hf download IrohaStudio/Iroha-TTS --local-dir Iroha-TTS
cd Iroha-TTS && pip install -r requirements.txt
python infer.py \
--text "やっと会えたね!ずっと待ってたんだよ。" \
--emotion joy --intensity -0.015 --seed 7 \
--ref my_voice.wav --ref-text "参考音声の書き起こし" \
--out joy.wav
Replace my_voice.wav and its transcript with your recording and an accurate transcript. The output is a 44.1 kHz WAV. Change --seed for another delivery.
The repository includes AGENT_GUIDE.md for coding agents, covering parameter combinations, batch calls and troubleshooting.
Release scope: model weights and inference code are included; training data and the training pipeline are not. The weights use the Fish Audio Research License (Copyright © 39 AI, INC.). Research and non-commercial use must follow its terms; commercial use requires a separate license from Fish Audio at business@fish.audio. Our new inference code (emotts/ and infer.py) is also available under MIT. Refer to the repository’s license files for the full terms.
The technical notes cover implementation and evaluation in more detail.
If you make something with Iroha or run into a problem, write to ake.speechai@gmail.com.
Technical notesData and training, audio demos, evaluation conditions, and attempts that didn’t work.