Nodes/BizyAirPlus/Qwen3 TTS Text To Speech
ComfyUI Node

Qwen3 TTS Text To Speech

Give your videos a voice without a TTS stack

By siliconflow·Created 5 months ago·Updated about a month ago· 20
Qwen3 TTS Text To Speech
  • api_config
  • audio
  • request_id
  • urls
input
voicevivian
instructions
response_formatwav
languageAuto
max_tokens1024
speed1.0
skip_errorfalse

The video generation nodes in BizyAir get all the attention, but a silent video is only half a deliverable. This node is the audio half: Qwen3 TTS turns your text into spoken audio with a pickable timbre, emotion hints, and speed control - the qwen3tts-custom-voice/text-to-audio endpoint served from SiliconFlow's cloud. If your pipeline is "generate a video clip, add a narration, done," this is the node that lets you keep the whole thing inside one ComfyUI graph instead of juggling a separate TTS app.

How it works

Same cloud machinery as the rest of the pack: the text uploads to api.bizyair.ai, the TTS model generates audio remotely, and the result comes back as a native ComfyUI AUDIO output you can feed straight into audio/video combine or save nodes. No local model, no voice-cloning files, no GPU cost. You're paying per job on your BizyAir credits, and your text is processed on SiliconFlow's servers.

Inputs that matter

  • input - the text to speak. This is your script; multiline, so paste the whole narration.
  • voice - the timbre dropdown. Defaults to vivian, which is a decent neutral starting point, but the whole point of "custom voice" is that there are others to try - audition a couple before committing a script.
  • instructions - this is the underrated field: it's the emotion/intonation control. "Calm and measured," "excited product-launch energy," "whisper" - the model actually follows it.
  • response_format - defaults to wav. Fine for most workflows.
  • language - defaults to Auto, letting the model detect it from the text; set it explicitly if it keeps guessing wrong.
  • max_tokens - output length cap, default 1024, up to 4096. Long scripts need it raised.
  • speed - speaking rate, default 1.0, range 0.5–2.0. 0.9 reads as a touch more natural for narration than 1.0; your ears will tell you.
  • api_config / skip_error - the pack standard pair: per-request key/base override and placeholder-on-error.

Outputs: audio (an AUDIO tensor - wire it into an audio save node or a video's audio track), plus request_id and urls for support and direct file download.

Install and get going

Install via ComfyUI Manager (search "BizyAirPlus") or:

cd /path/to/ComfyUI/custom_nodes
git clone https://github.com/siliconflow/BizyAirPlus.git
cd BizyAirPlus
python -m pip install -r requirements.txt

Restart, register at bizyair.ai, set the key in Settings > BizyAirPlus > API Key (or BIZYAIR_API_KEY), and click the BizyAirPlus action-bar toggle to ON. Every BizyTRD node is gated on that switch.

Gotchas

Setup is the usual trio - missing key, toggle off, deps in the wrong Python (python -m pip show bizyair-cloudberry). The TTS-specific traps: first, if your audio comes back cut off, raise max_tokens - the default of 1024 is roughly "a paragraph or two," not a whole script. Second, speed interacts badly with long instructions-heavy text if you push both extremes; keep the instruction short and the speed in the 0.8–1.2 band for reliable results. And since this is billed, preview with a short line before committing the full script.

CategoryBizyAirModelServices/BizyTRD/Self-Hosted

Inputs (9)

NameTypeDefaultDescription
inputSTRINGText input
voiceCOMBOvivianTimbre
instructionsoptSTRINGIntonation emotion
response_formatoptCOMBOwavReturn format
languageoptCOMBOAutoLanguage
max_tokensoptINT10240–4096Maximum length of output
speedoptFLOAT1.00.5–2Talk Fast
api_configoptBIZYAIR_OPENAPI_CONFIG单次请求覆盖base_url和api_key
skip_erroroptBOOLEANfalse开启后遇到错误不中断工作流,输出对应类型的错误占位符

Outputs (3)

NameTypeDescription
audioAUDIO
request_idSTRING
urlsSTRING