ComfyUI Node

Audio Notify

The 'ding' node that plays on your GPU box, not your laptop

By uni-miao·Created 4 months ago·Updated 4 months ago· 0
Audio Notify
      repeat1
      delay_seconds0.0
      notification_enabledtrue
      blocking_playbackfalse
      enable_sound_pathfalse
      sound_path
      enable_sound_namefalse
      sound_name
      fallback_to_system_beeptrue

      Audio Notify is the plainest node in the ComfyUI-Audio-Notifier pack: no data in, no data out, one job - play a sound when the scheduler reaches it. It's the quick-test node of the pack, and it's genuinely useful for the situation the pack exists for: you started a long local render, you stepped away, and you want to hear when something happened instead of staring at a progress bar.

      You'll find it at Add Node → Audio Notifier → Audio Notify, or search "Audio Notify". It's an output-style node - ComfyUI flags it as an endpoint even though it returns nothing, so it sits at the tail of a graph doing nothing but making noise.

      How it works

      When execution reaches the node it calls notify(), which resolves a sound source and plays it. Two details are worth knowing before you rely on it:

      • Playback is non-blocking by default. The sound fires on a background daemon thread, so a long clip won't stall the rest of the graph. Flip blocking_playback to True and the node waits for the sound to finish before execution moves on.
      • It re-runs every prompt. The node's IS_CHANGED returns the current nanosecond timestamp, which is exactly why it keeps playing on every queue rather than getting cached away by ComfyUI's change detection.

      Sound resolution follows a strict priority. If enable_sound_path is on and sound_path points at a real file, that wins. Otherwise, if enable_sound_name is on, it looks for sound_name inside the pack's sounds/ folder. If neither resolves, fallback_to_system_beep (on by default) gives you a platform beep instead of silence. How that beep is produced depends on your OS: Windows uses winsound for .wav (then ffplay, then os.startfile), macOS uses afplay, Linux tries ffplay then paplay/aplay.

      The inputs that actually matter

      The node has no data input - only configuration. From the schema, the ones you'll touch:

      • notification_enabled - master on/off. Turn this off to mute a node without deleting it.
      • delay_seconds - wait before playing. Handy if you want the chime a few seconds after the milestone.
      • repeat - play count (1–100). Useful when a single ding gets lost under a fan-heavy GPU.
      • enable_sound_path / sound_path - point at any absolute file on the backend machine, e.g. C:\Windows\Media\Windows Notify System Generic.wav on Windows.
      • enable_sound_name / sound_name - pick a file from the sounds/ folder. Note the dropdown only lists what's in that folder when ComfyUI started.

      The trap: when it actually fires

      Because this node has no upstream dependency, ComfyUI may execute it at the very start of a prompt - right when the queue begins, not when the workflow finishes. If you drop it into a graph and hear it instantly, that's why. The README is blunt about it: it does not mean the whole workflow completed. For a "that's done" chime you want a passthrough or trigger variant wired after the node you care about (see Audio Notify Latent Trigger or Audio Notify Text Trigger), so the sound waits for real data.

      Installing it

      The pack has zero third-party Python dependencies - requirements.txt is a placeholder - so there are no models to download. Git clone into your custom nodes and restart the backend:

      cd ComfyUI/custom_nodes
      git clone https://github.com/uni-miao/ComfyUI-Audio-Notifier.git
      

      Then restart ComfyUI. If you use the Windows launcher (including Chinese all-in-one packs like 秋叶), install under that launcher's actual ComfyUI directory and restart the backend process, not just the browser tab. ZIP installs work too - just make sure you don't end up with a nested ComfyUI-Audio-Notifier/ComfyUI-Audio-Notifier/ folder.

      Troubleshooting

      No sound at all is the classic complaint, and it's usually one of three things:

      • Volume is on the backend machine. This is a backend node pack - audio plays on the box running ComfyUI, not necessarily on the browser you're looking at. If ComfyUI runs on a server or another PC, that's where the noise comes out.
      • The sounds/ folder is empty out of the box. The repo ships only a .gitkeep, so the sound_name dropdown has nothing useful until you drop files in and restart. Use sound_path with an absolute path, or try a .wav first - it's the most reliable across platforms.
      • mp3/m4a silence. Non-WAV files depend on ffplay on some platforms; install FFmpeg/ffplay if your workflow needs them.

      If you hear a system beep but no sound file, the path didn't resolve and the fallback caught it - check enable_sound_path/sound_name against an existing file.

      CategoryAudio Notifier

      Inputs (9)

      NameTypeDefaultDescription
      repeatINT11–100
      delay_secondsFLOAT0.00–3600
      notification_enabledBOOLEANtrue
      blocking_playbackBOOLEANfalse
      enable_sound_pathBOOLEANfalse
      sound_pathSTRING
      enable_sound_nameBOOLEANfalse
      sound_nameCOMBO2 options: , .gitkeep
      fallback_to_system_beepBOOLEANtrue

      Outputs (0)

      No outputs