Preview Audio (CRT)
Actually hear the audio in your ComfyUI graph
- audio
- AUDIO
Video models with audio - LTX 2.3, WAN's audio variants, the whole audio-conditioned generation wave - produce sound in the form of an AUDIO tensor, and until you've run one you don't realize how annoying it is to check the result. Preview Audio (CRT) is the dead-simple node that renders that tensor into a playable preview in ComfyUI. It's an output node: you wire an AUDIO in, it plays, you listen, you decide.
The inputs
preview_on_finish-ONorOFF, defaultON. Controls whether the preview plays as soon as the run finishes; flip toOFFif you're running long batches and don't want audio spam on every item.audio- theAUDIOtensor from your audio-capable sampler or loader. Optional because of the next input.loaded_file- a path to an audio file (like a.wavon disk), which it reads withsoundfilewhen noaudiotensor is wired in. This is the "preview something from disk without generating" path.trim_start/trim_end- seconds trimmed off the beginning/end of the clip before preview. Handy when you only care about a section or want to check the tail of a long generation.volume- 0 to 3, default 1. Amplifies before playback for quiet generations.
Output is the AUDIO tensor, passed through so you can chain a preview inline with a save node and listen and keep the audio flowing.
How it works
Under the hood it writes the waveform to ComfyUI's temp directory (with a random prefix so concurrent runs don't collide) and registers it as a preview the frontend can play. The trimming is sample-accurate, applied at the sample-rate level, not by decimation. It leans on soundfile, which is already present in ComfyUI's embedded Python - so unlike some of the pack's audio nodes, this one has no extra dependency to fight with.
Where you'd reach for it
Any workflow that generates or processes audio: after an audio VAE decode in LTX 2.3, at the end of a WAN audio pass, or after CRT's own audio effects chain (compressor, EQ, mono-to-stereo) when you want to hear before you save. Because it's an output node, it also plays nicely as the final "preview and pass-through" step in an audio pipeline.
Gotchas
- It's a previewer, not a player with a timeline. Fine for a quick listen; if you need scrubbing or waveform analysis, save the file and use a real audio editor.
trim_endcounts from the end. It's "cut the last N seconds," not "end at N seconds." Easy to misread at 2am.- No
audioand noloaded_filemeans an error - the node needs one source of truth. Wire one or the other.
Install CRT-Nodes via ComfyUI Manager (CRT-Nodes) or git clone https://github.com/plugcrypt/CRT-Nodes.git into custom_nodes, install requirements.txt, restart.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| preview_on_finish | COMBO | ON | 2 options: ON, OFF |
| audioopt | AUDIO | — | |
| trim_startopt | FLOAT | 0.000–999999 | — |
| trim_endopt | FLOAT | 0.000–999999 | — |
| loaded_fileopt | STRING | — | |
| volumeopt | FLOAT | 1.000–3 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| AUDIO | AUDIO | — |