VELVET VICE LTX — Audio Memory Checkpoint
A RAM/VRAM tripwire you can drop anywhere in the audio path
- audio
- audio
This is the kind of node you don't appreciate until you're mid-render, the card is full, and you have no idea where the memory went. VelvetViceLTXAudioMemoryCheckpoint logs a RAM/VRAM snapshot to your ComfyUI console and passes the audio through completely untouched. That's the entire job, and it's genuinely useful.
What it does
Audio goes in, audio comes out - identical, byte for byte. In between it calls the pack's memory-snapshot routine, which prints a line like:
[VELVET VICE] audio checkpoint | RAM 84.2% | 12.3 GiB RAM available | ComfyUI RSS 28.1 GiB | VRAM free 6.2/24.0 GiB
Because it's a pass-through, you can string several of them through one graph and label each. Drop one before the audio VAE encode, one after the audio sampler, one after the audio decode - and when the render OOMs, the console tells you exactly which stage ate it.
The inputs and outputs
Only two inputs: audio (the AUDIO tensor) and checkpoint_label - the string that appears in the log line, defaulting to "audio checkpoint". Name them meaningfully ("before audio sampler" is better than "audio checkpoint"). One output: audio, unchanged. Wire it inline wherever you want a reading.
Why this workflow has it
LTX-2/2.3 renders video and audio through one model, and the audio path is the part people forget to budget for. The Velvet Vice workflow already runs a background render-memory monitor (started by the Lazy Model Gate) that samples continuously - these checkpoint nodes are the manual, stage-precise version of that. On a 24 GB card with a 22B model, two VAEs, and a text encoder resident, the difference between "it fits" and "CUDA out of memory" can be a single decode, so knowing the numbers at each stage is how you tune.
Installing it
It ships in velvet-vice-ltx. Install VELVET VICE - LTX from ComfyUI Manager (Comfy Registry), restart, and hard-refresh with Ctrl+F5:
cd ComfyUI/custom_nodes
git clone https://github.com/Velvet-Vice/velvet-vice-ltx
The pack declares zero pip dependencies. This node in particular needs nothing beyond ComfyUI itself and a render that's actually consuming memory - it's pure diagnostics.
Gotchas
- It only logs when the node executes. If ComfyUI skips it during an interrupted render (the thing the pack's interrupt hook exists to clean up), you won't get a snapshot. That's expected, not a bug.
- It's not a profiler. One line per execution, not per second. If you want a continuous picture, the workflow's render monitor (via the memory policy on the Lazy Model Gate) is the tool; this is for pinning down a specific stage.
- The label is free text - the only way to tell snapshots apart is to make it unique per node.
For a beginner this is a "leave it in the workflow, it costs almost nothing" node. When you later chase an OOM, it's the breadcrumb trail that tells you which of the five decodes was the culprit.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| checkpoint_label | STRING | audio checkpoint | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |