bark generate fine (3)
The last stage before you can hear anything
- fine_model
- coarse_codebooks
- fine_history
- codebooks
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,fineset tolargeorsmall. - 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
fineoutput ofload_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.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| fine_model | BarkFineModel | β | |
| coarse_codebooks | EncodecCodeBooks | β | |
| temperature | FLOAT | 0.500.01β2 | β |
| fine_historyopt | EncodecCodeBooks | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| codebooks | EncodecCodeBooks | β |