MiniMax H3 Speech Performance Direction / 演绎控制 (EXP/T8)
Emotion, pace, pitch — with the honest caveat that none of it is calibrated
- speech_plan
- speech_plan
- report_json
So you've got an H3 speech plan with the right words. Now you want it performed - a colder read for the villain line, a faster delivery in the montage, a whisper that sells the reveal. That's exactly what MiniMaxH3SpeechPerformanceT8 exists for. It takes a speech_plan and adds emotion, pace, pitch, energy and free-form nonverbal direction onto it, then hands you back a richer speech_plan for the rest of the chain. It's the "director's notes" layer, and the pack is refreshingly honest that it's also the least trustworthy layer.
How it works
Unlike a TTS engine with a real pitch-slider under the hood, H3 generates speech inside a joint audio-video diffusion pass. This node can't reach in and bend the vocal folds - it writes acting direction into the plan's prompt, the same way a film director writes "slower, colder" in the margin of a script. Every field becomes prose the model reads. That's why the output is a modified speech plan rather than audio: the performance only materializes once you feed that plan through the conditioning → sampler → decode chain.
The inputs that matter
segment_index- defaults to -1, which applies the direction to every segment in the plan. Set a specific index to direct one chunk while leaving the others alone. This is your main workflow tool for long-form: render once, then re-direct just the segment that missed.emotion(a free text string, default "neutral") andprompt_intensity(0–1) - the emotional color and how hard to push it.pace,pitch,energy- each a five-step combo:very_slow→very_fastfor pace,very_low→very_highfor pitch,restrained→intensefor energy. Natural is the middle.nonverbal_direction- free text for the stuff words can't carry: "inhale sharply before the line", "trail off at the end", "a breathy half-laugh". This is the one that genuinely unlocks a take.
Outputs: the patched speech_plan (straight into conditioning/studio) and a report_json describing what direction was applied where.
The honest caveat, straight from the author
The node's own description says these "model controls remain uncalibrated and are reported as such." Read that as: very_fast is not guaranteed to be twice as fast, and high pitch may shift tone more than pitch. Treat this as prompt-direction with a vocabulary, not automation. If you need exact timing, the pack has an ADR fit node for nailing sample counts; this node is for feel.
Installing and using it
Same pack, same one-time install: search "MiniMax H3 Audio T8" in ComfyUI Manager, or git clone https://github.com/T8mars/comfyui-minimax-h3-audio-T8 into custom_nodes and restart. No extra pip packages, no API keys - this is all local inference on your own H3 weights (which, remember, the pack won't download for you, and the H3 license is region-restricted). Because it's experimental, budget for a couple of dead takes while you learn what the pace/pitch words actually do on your voice profile - that's normal, and the report_json tells you exactly what direction got injected so you can tweak the wording rather than the whole plan.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| speech_plan | H3_T8_SPEECH_PLAN | — | |
| segment_index | INT | -1-1–9999 | -1 applies to all segments. |
| emotion | STRING | neutral | — |
| prompt_intensity | FLOAT | 0.500–1 | — |
| pace | COMBO | natural | 5 options: very_slow, slow, natural, fast, very_fast |
| pitch | COMBO | natural | 5 options: very_low, low, natural, high, very_high |
| energy | COMBO | natural | 5 options: restrained, low, natural, high, intense |
| nonverbal_direction | STRING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| speech_plan | H3_T8_SPEECH_PLAN | — |
| report_json | STRING | — |