FL FishSpeech VQ Decode
Turn codebook tokens back into sound
- fs_model
- vq_codes
- audio
VQ Decode is the other half of the pack's audio-nerd round trip. Where VQ Encode turns audio into discrete codebook tokens, this node turns tokens back into audio using the same DAC codec. On its own it does nothing you'd reach for daily - the TTS node already decodes internally when it generates speech. But paired with VQ Encode it's the diagnostic tool for "what does this codec actually hear," and it's the way to bring any VQ codes you've been poking at back into audible form.
How it works
It takes the FS_VQ_CODES input, sends the indices through the codec's from_indices reconstruction, and gets back a waveform tensor at the codec's native 44.1kHz. The node converts that to the standard ComfyUI AUDIO dict, so from there it behaves like any other audio output - preview it, save it, feed it into whatever else in your graph wants an AUDIO. The TTS node does the same decode internally after generation; this node just exposes that step so you can drive it yourself.
Inputs and output
- fs_model (required) - the
FS_MODELoutput from the Model Loader, which supplies the codec. - vq_codes (required) - the
FS_VQ_CODESoutput from VQ Encode (or codes you've assembled elsewhere). - Output: audio (
AUDIO) - wire to Preview Audio to listen or Save Audio / Save AudioMP3 to write a file.
When you'd actually use it
Three honest use cases. First, round-trip testing: VQ Encode β VQ Decode on a clip, and if what comes back sounds wrong, your reference audio or codec state is the problem, not the model. Second, as the landing zone if you start experimenting with manipulating codes between the two nodes - that's the reason the pack exposes the representation at all. Third, just to understand the pipeline: seeing how far audio compresses into codes and comes back out is genuinely educational about how this whole family of models works.
Installing
Pack install as usual: search "FL FishSpeech" in ComfyUI Manager, install, restart - or git clone https://github.com/filliptm/ComfyUI-FL-FishSpeech.git into custom_nodes/ and pip install -r requirements.txt. Both of the once-per-machine gotchas apply here too: the fish-speech repo must live at ComfyUI/fish-speech/, and the gated openaudio-s1-mini model needs a huggingface-cli login plus accepted access before the first Model Loader run pulls its ~8GB.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| fs_model | FS_MODEL | β | |
| vq_codes | FS_VQ_CODES | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | β |