Nodes/FL HeartMuLa/FL HeartMuLa Decode
ComfyUI Node

FL HeartMuLa Decode

Turning token soup into an actual song

By filliptm·Created 8 months ago·Updated 5 months ago· 131
FL HeartMuLa Decode
  • model
  • audio_tokens
  • audio

After the Sampler finishes its long grind, you have a tensor of audio tokens - mathematically a song, but not a sound you can hear. FL HeartMuLa Decode is the node that fixes that. It runs the tokens through HeartCodec, the neural audio codec that ships with the model, and hands you a normal ComfyUI AUDIO that you can preview, save, or pipe into the rest of your workflow.

How it works

HeartMuLa doesn't generate waveforms directly; it generates discrete audio codes that a codec turns back into sound. That's the same trick used across modern music and voice models - the language model handles the musical structure, and the codec handles the rendering. In this pack, Decode calls the codec's detokenize on the token frames from the Sampler, producing a waveform at 48 kHz, then wraps it in ComfyUI's standard AUDIO dict (waveform + sample_rate).

That means it's the fast node. Unlike the Sampler's thousands of sequential forward passes, decoding is a single pass over the tokens. You barely notice it running, which after watching the Sampler crawl feels like a small miracle.

It takes exactly two inputs: the loaded model (which contains the HeartCodec from the Model Loader) and the audio_tokens from the Sampler. One output: audio.

What to do with the output

Wire audio into whatever ComfyUI audio sink you like:

  • Preview Audio (VHS_PreviewAudio or similar) to listen immediately
  • Save Audio / VHS VHS_VideoCombine to write a file
  • Any audio-processing node you already use - it's a standard AUDIO, so the pack's output drops into the wider ecosystem without adapters

Community reports consistently rate the sound quality as genuinely good, and the 48 kHz output is clean - this is the part of the pipeline that just works.

Installation

Same pack as the rest:

cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI_FL-HeartMuLa.git
cd ComfyUI_FL-HeartMuLa
pip install -r requirements.txt

Or ComfyUI Manager → search "FL HeartMuLa" → Install → restart. First run needs the models (auto-downloaded to ComfyUI/models/heartmula/), but there's no extra setup beyond the base requirements.

Common issues

  • Silent audio output - if decoding fails, the node returns one second of silence instead of raising. It logs the real error to the console, so check there. Usually it's a shape mismatch from a stale model or mismatched tokens.
  • Click or pop at the start - a known artifact of the codec rather than a bug; trimming a few milliseconds fixes it in any editor.
  • No audio node found - you have a AUDIO but no sink wired. Drop in a Preview Audio node and it'll show up.

One caveat worth knowing: the node holds the model in memory, so if you're chaining many generations, the Decode stays resident while the Sampler's caches get flushed. That's by design - decode is cheap and rerunning it beats re-sampling.

CategoryFL HeartMuLa

Inputs (2)

NameTypeDefaultDescription
modelHEARTMULA_MODELLoaded HeartMuLa model (contains HeartCodec)
audio_tokensHEARTMULA_TOKENSAudio tokens from the Sampler node

Outputs (1)

NameTypeDescription
audioAUDIO