Nodes/Audio nodes/bark generate fine (3)
ComfyUI Node

bark generate fine (3)

The last stage before you can hear anything

By gitmyloΒ·Created 2 years agoΒ·Updated about a year agoΒ· 12
bark generate fine (3)
  • fine_model
  • coarse_codebooks
  • fine_history
  • codebooks
β—„temperature0.50β–Ί

The third and final stage of Bark, and the one that turns rough audio skeletons into something you'd actually play out loud. bark_generate_fine takes the two coarse codebooks from bark_generate_coarse and fills in the remaining six EnCodec codebooks - the detail layers that carry timbre, breathiness, and the crispness that makes speech sound like speech instead of a robot gargling.

How it works

EnCodec codebooks are hierarchical: codebook 0 and 1 carry the coarse shape, codebooks 2 through 7 add progressively finer detail. The fine model takes the 2 codebooks it's given and predicts the missing 6, one codebook at a time, over a sliding 1024-token buffer (padding as needed for short inputs). Because it predicts all 6 detail levels per position, it's the most compute-hungry stage of the three - and, notably, the only one whose defaults are tuned greedier than the others.

The inputs that matter

  • fine_model - from bark_loader, fine set to large or small.
  • coarse_codebooks - the output of bark_generate_coarse.
  • temperature (default 0.5) - notice it's lower than the semantic/coarse stages' 0.7. The fine model works better with less randomness; it's filling in detail, not making creative choices. Crank it up and you get noise and crackle; keep it in the 0.3–0.6 range.
  • fine_history (optional) - the fine output of load_speaker_npz, or a previous run's fine codebooks. This is the final voice-cloning hook: with history wired in, the fine stage matches the speaker's timbre rather than Bark's stock voice.

Output is codebooks - now a full 8-row EnCodec codebook array. This is what you feed into encodec_decode to get the actual AUDIO waveform, which then goes to a preview/save node. It's also one of the three arrays a save_speaker_npz workflow needs if you're building your own speaker file.

Install & troubleshooting

Everything else in the pack comes along with gitmylo/ComfyUI-audio-nodes:

cd ComfyUI/custom_nodes
git clone https://github.com/gitmylo/ComfyUI-audio-nodes

(Or ComfyUI Manager β†’ search "Audio nodes" β†’ install β†’ restart.) The fine weights download to models/bark/ on first use.

Where this stage bites: VRAM, and it's not subtle. The fine stage alone can eat the whole card on longer generations. If you're fine-tuning a 10+ second clip and hit OOM, your levers are small fine model + half in bark_loader, and shorter text. A subtler trap: the fine stage will happily run on garbage - feed it wrong-shaped coarse codebooks and you'll get a burst of harsh noise instead of an error, which sends people down a "why is my audio broken" rabbit hole that's really "your coarse stage output was corrupted upstream." If the audio is staticky beyond recovery, suspect the coarse/semantic stages first, not the fine node.

CategoryπŸ”‰ AudioNodes/bark

Inputs (4)

NameTypeDefaultDescription
fine_modelBarkFineModelβ€”
coarse_codebooksEncodecCodeBooksβ€”
temperatureFLOAT0.500.01–2β€”
fine_historyoptEncodecCodeBooksβ€”

Outputs (1)

NameTypeDescription
codebooksEncodecCodeBooksβ€”