Nodes/TTS Audio Suite/⚙️ F5 TTS Engine
ComfyUI Node

⚙️ F5 TTS Engine

The fast, clean voice-clone workhorse

By diodiogod·Created 12 months ago·Updated 18 days ago· 1,098
⚙️ F5 TTS Engine
    • TTS_engine
    languageF5TTS_v1_Base
    deviceauto
    temperature0.8
    speed1.0
    target_rms0.10
    cross_fade_duration0.15
    nfe_step32
    cfg_strength2.0

    F5-TTS is the other pillar of this suite alongside ChatterBox, and it's the one to reach for when you want clean, natural voice cloning without a lot of drama. It's a flow-matching TTS - same family of math as flow-matching image models - that clones a voice from a reference clip plus its transcript and reads your text in that voice. Relatively light (~1.2GB per language model), fast, multilingual, and it has a trick the others don't: targeted speech editing. This node is the config node; it outputs a TTS_ENGINE you plug into 🎤 TTS Text or 📺 TTS SRT.

    If ChatterBox is the expressive one, F5 is the reliable one. When you just want a faithful, low-fuss clone that doesn't glitch, this is a good first pick.

    How it works

    Flow-matching TTS learns a smooth path from noise to a mel-spectrogram conditioned on your text and the reference voice, then a vocoder turns that into audio. The number of steps along that path (nfe_step) trades speed for quality. Because it's flow-matching rather than autoregressive, it tends to be steadier than ChatterBox on longer segments and cleaner between words.

    The reference audio and its transcript don't live on this node - you supply those on the TTS Text side, ideally through a 🎭 Character Voices node, which is important because F5 clones best when it has both the audio and an accurate transcript of it.

    The inputs and outputs that matter

    The language dropdown here is really a model picker - F5TTS_v1_Base (default) is the current English/base model, and there are per-language variants (F5-DE, F5-ES, F5-FR, F5-JP, F5-IT, F5-TH, F5-PT-BR, F5-Polish, F5-Hindi-Small) plus the older F5TTS_Base and E2TTS_Base. Pick the one matching your target language.

    The knobs worth knowing:

    • speed (0.5–2, default 1) - F5 has genuine speed control, which most engines don't. Slow it to 0.9 for a more deliberate read; this is one of the more useful dials here.
    • nfe_step (1–71, default 32) - flow-matching steps. 32 is a good balance. More steps = marginally cleaner but slower; dropping to ~16 speeds things up if you're iterating.
    • cfg_strength (0–10, default 2) - how strongly it follows the conditioning. 2 is the sweet spot; higher can over-sharpen.
    • temperature (0.1–2, default 0.8) - randomness, leave near default.

    target_rms (loudness normalization target) and cross_fade_duration (how chunk boundaries blend, default 0.15s) are cleanup parameters you rarely touch. device stays auto.

    Output is a single TTS_engine. Wire it into TTS Text or TTS SRT.

    Installing it

    It's part of TTS Audio Suite. Easiest: ComfyUI Manager → search TTS Audio Suite → install → restart, which runs the pack's install.py and handles the dependency conflicts (NumPy, librosa, the touchy s3tokenizer) plus Python 3.13. Manual route: cd ComfyUI/custom_nodes && git clone https://github.com/diodiogod/TTS-Audio-Suite.git, then python install.py from the folder with your ComfyUI venv active - run the script, don't just pip-install requirements. Linux: sudo apt-get install portaudio19-dev libsamplerate0-dev first. The F5 model (~1.2GB) auto-downloads on first generation into ComfyUI/models/TTS/F5-TTS/.

    Common issues

    • Clone sounds off because the transcript is wrong. F5 leans hard on the reference transcript. If your reference_text doesn't match what the reference audio actually says, cloning degrades. Use 🎭 Character Voices and get the transcript right.
    • Mispronunciation on non-English or odd words. F5 can stumble on special characters and accented text. The pack ships a 📝 Phoneme Text Normalizer node specifically to clean up pronunciation for languages like Polish, German, and French - worth adding if your language variant is fighting you.
    • Wrong language model. The language dropdown is a model choice, not a runtime toggle. Reading German text with F5TTS_v1_Base (English) will sound wrong; select F5-DE.
    • First run is slow while the ~1.2GB model downloads - normal, not a hang.
    CategoryTTS Audio Suite/⚙️ Engines

    Inputs (8)

    NameTypeDefaultDescription
    languageCOMBOF5TTS_v1_BaseF5-TTS model variant to use. F5TTS_Base is the standard model, F5TTS_v1_Base is improved version, E2TTS_Base is enhanced variant. Note: This was previously called 'model' in individual nodes.
    deviceCOMBOautoDevice to run F5-TTS model on: • auto: Automatically select best available (MPS on Apple Silicon, CUDA on NVIDIA, XPU on Intel, CPU fallback) • cuda: NVIDIA GPU (requires CUDA-capable GPU) • xpu: Intel GPU (requires Intel PyTorch XPU) • cpu: CPU-only processing (slower) • mps: Apple Metal Performance Shaders (Apple Silicon Macs only)
    temperatureFLOAT0.80.1–2Controls randomness in F5-TTS generation. Higher values = more creative/varied speech, lower values = more consistent/predictable speech.
    speedFLOAT1.00.5–2F5-TTS native speech speed control. 1.0 = normal speed, 0.5 = half speed (slower), 2.0 = double speed (faster).
    target_rmsFLOAT0.100.01–1Target audio volume level (Root Mean Square). Controls output loudness normalization. Higher values = louder audio output.
    cross_fade_durationFLOAT0.150–1Duration in seconds for smooth audio transitions between F5-TTS segments. Prevents audio clicks/pops by blending segment boundaries.
    nfe_stepINT321–71Neural Function Evaluation steps for F5-TTS inference. Higher values = better quality but slower generation. 32 is a good balance. Values above 71 may cause ODE solver issues.
    cfg_strengthFLOAT2.00–10Speech generation control. Lower values (1.0-1.5) = more natural, conversational delivery. Higher values (3.0-5.0) = crisper, more articulated speech with stronger emphasis. Default 2.0 balances naturalness and clarity.

    Outputs (1)

    NameTypeDescription
    TTS_engineTTS_ENGINE