Audio Notify Image
The chime that fires when your pixels are finally real
- image
- IMAGE
Audio Notify Image is a passthrough node from ComfyUI-Audio-Notifier that takes an IMAGE, plays a sound, and hands the exact same image onward. It's for the moment that's usually the whole reason you're running a workflow: when the VAE has decoded the latent and you've got actual pixels to look at.
The natural home for it is right after VAE Decode and before your Save Image / Preview node. A latent is invisible and a model is just a file in memory, but an image is the payoff - so an IMAGE passthrough is the most satisfying milestone in the pack to hang a sound on. The wiring is just inserting it into the existing image wire:
VAE Decode → Audio Notify Image → Save Image
Because the image physically flows through the node, execution order is guaranteed: VAE Decode must finish before the node runs, and Save Image can't run until the node passes the image along. No parallel-branch races. That's the same in-line trick as the generic Audio Notify Passthrough, but typed - the input is a strict IMAGE and the output is a strict IMAGE, so the graph can't silently accept the wrong type.
Inputs and output
The image input is the data; every other input is shared pack-wide:
notification_enabled- mute the node without deleting it.delay_seconds- wait before playing.repeat- 1–100 plays.blocking_playback- off by default (sound runs in a background daemon thread); on to make the node wait for playback before passing the image on.enable_sound_path/sound_path- an absolute file path on the backend machine.enable_sound_name/sound_name- a file from the pack'ssounds/folder.fallback_to_system_beep- beep when nothing resolves.
One output: the unchanged IMAGE, ready for Save Image or anything else.
Use it right
The one thing to remember: this fires when the image is ready, which is usually what you want - but it doesn't mean the image is saved yet. If your Save Image node is downstream of this (as in the example above), the chime fires just before the file lands. If you specifically want to hear "the file is on disk," put the notifier after the save instead - a passthrough between Save and whatever follows, or a trigger hanging off the save's output. Since the pack has no save node of its own, keep that ordering in your head.
Install and gotchas
No dependencies, no models. Clone and restart the backend:
cd ComfyUI/custom_nodes
git clone https://github.com/uni-miao/ComfyUI-Audio-Notifier.git
Restart the ComfyUI backend process, not just the browser tab. The pack-wide gotchas apply here: the sounds/ folder ships empty, so add files (or use an absolute sound_path) and restart before the dropdown is useful; and audio always plays on the machine running the backend - if ComfyUI is on a server, that's where the ding comes out. No sound usually means volume on that box, or a missing ffplay for non-WAV files.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| repeat | INT | 11–100 | — |
| delay_seconds | FLOAT | 0.00–3600 | — |
| notification_enabled | BOOLEAN | true | — |
| blocking_playback | BOOLEAN | false | — |
| enable_sound_path | BOOLEAN | false | — |
| sound_path | STRING | — | |
| enable_sound_name | BOOLEAN | false | — |
| sound_name | COMBO | 2 options: , .gitkeep | |
| fallback_to_system_beep | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |