Nodes/ComfyUI-QwenTTS/Voice Instruct (QwenTTS)
ComfyUI Node

Voice Instruct (QwenTTS)

A dropdown that writes your style instruction so you don't have to

By 1038lab·Created 7 months ago·Updated 7 months ago· 249
Voice Instruct (QwenTTS)
    • VOICE_INSTRUCT
    characterAuto
    styleAuto
    custom_instruct

    Voice style instructions are finicky. "Warm" as a one-word instruction does almost nothing; the Qwen3-TTS models respond to actual descriptions of pitch, speed, volume, clarity, accent, texture, and emotion. Voice Instruct (QwenTTS) is the pack's shortcut for that: pick a character and a style from dropdowns, and it assembles a properly-worded VOICE_INSTRUCT string for you.

    What it is

    This is a utility node, not a generator. It doesn't load any model and it doesn't make audio - it outputs a single STRING. Its whole job is producing the instruct text that you'd otherwise hand-type into the Custom Voice or Voice Design nodes.

    It pulls its options from the pack's own voice_instruct.json file. The character dropdown has 14 entries (Auto, Female, Male, Young Female, Young Male, Girl, Boy, Child, Teen, Adult, Senior Female, Senior Male, Narrator, Announcer), and style has 47 (Warm, Gentle, Calm, Cheerful, Friendly, Serious, Sad, Angry, Excited, Soft, Deep, Clear, Emotional, Dramatic, Whisper, …). Each one maps to a real multi-line instruction - for example, "Warm" expands to something like "pitch: Mid female/male-agnostic pitch with a gentle downward tilt at phrase ends… texture: Warm, velvety, smooth timbre… emotion: Reassuring and kind." That's the level of detail the model actually responds to.

    The inputs

    • character - a voice-character preset (14 choices).
    • style - a voice-style preset (47 choices).
    • custom_instruct - optional free text that, if filled in, overrides both presets entirely.

    Output is a single VOICE_INSTRUCT string. Character and style get combined (newline-separated) into one instruction you can feed straight into the instruct input of a Custom Voice or Voice Design node. Leave both on "Auto" and you get an empty string, which is harmless - treat Auto as "don't add this dimension."

    Install

    No models, no heavy deps beyond the pack itself. ComfyUI Manager (search ComfyUI-QwenTTS) or:

    cd ComfyUI/custom_nodes && git clone https://github.com/1038lab/ComfyUI-QwenTTS.git
    python3 -m pip install -r ComfyUI/custom_nodes/ComfyUI-QwenTTS/requirements.txt
    

    Then restart ComfyUI.

    Why you'd bother

    Because remembering 47 styles is silly, and because one-word style cues are why "Voice Design ignores my style" is such a common complaint. The presets give you the verbose, model-friendly phrasing without you writing a paragraph each time. It's also a nice A/B harness: wire the VOICE_INSTRUCT out to several Custom Voice nodes, compare takes, and keep the character/style combo you liked. For Chinese-language work, use the sibling 声音风格指引 (QwenTTS) node instead, which ships the same presets localized.

    Category🧪AILab/🎙️QwenTTS

    Inputs (3)

    NameTypeDefaultDescription
    characterCOMBOAutoVoice character preset (from presets/voice_instruct.json).
    styleCOMBOAutoVoice style preset (from presets/voice_instruct.json).
    custom_instructoptSTRINGCustom instruction. Overrides presets if provided.

    Outputs (1)

    NameTypeDescription
    VOICE_INSTRUCTSTRING