Nodes/Bjornulf_custom_nodes/๐Ÿ”Šโ–ถ Play Audio
ComfyUI Node

๐Ÿ”Šโ–ถ Play Audio

A ding when your workflow is finally done

By justUmenยทCreated 2 years agoยทUpdated about a year agoยท 545
๐Ÿ”Šโ–ถ Play Audio
  • anything
  • AUDIO
  • anything
โ—„audio_pathโ–บ

Some workflows take a while - a long video render, a big batch loop, a chain of API calls. You tab away to do something else, and then you're periodically alt-tabbing back to check if it's done yet. Play Audio exists to fix exactly that: drop it at the tail end of a slow branch and it plays a sound the moment that branch actually executes, so you get an audible signal instead of a polling habit.

How it works

It defaults to a bell - no setup required, just wire something into it and it'll chime when that wire fires. You can override the sound two ways: point it at a specific file with audio_path, or feed it an AUDIO-type input directly from another node in your graph (say, the output of a TTS node, if you want it to literally say something instead of dinging).

The clever part is the required anything input and its matching output: whatever you plug in comes straight back out unchanged. That means you don't have to choose between "monitor this branch" and "keep using its output" - tap the node onto an existing wire in the middle of your graph, and it passes the value through untouched while triggering the sound as a side effect. No dead-ending your pipeline just to get an alert.

One thing worth being upfront about, since it's not stated anywhere in the docs but follows from what the node does: this plays audio in your ComfyUI session, which is meaningful when you're sitting at an interactive UI waiting on a run. If you're triggering workflows purely through the API - the way a lot of comfy.icu automation works - there's no one at a browser tab to hear it, so treat this as a local, interactive-session convenience rather than something to build alerting logic around.

The inputs and outputs that matter

  • anything (required) - the pass-through trigger. Wire in whatever marks "this branch is done" - an image, a video path, a text string, doesn't matter what type.
  • AUDIO (optional) - feed it an actual audio signal from elsewhere in your graph to play that instead of the default bell.
  • audio_path (optional, string) - point it at a file on disk instead.
  • Output anything - the same value you passed in, untouched, so you can keep chaining your workflow after this node.

How to install it

ComfyUI Manager โ†’ search Bjornulf_custom_nodes โ†’ install โ†’ restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/justUmen/Bjornulf_custom_nodes
pip install -r Bjornulf_custom_nodes/requirements.txt

Audio playback in this pack leans on pydub, which is in the shared requirements.txt - install the full pack's dependencies even if you only care about this one node, since it ships as part of the same install.

Common issues & troubleshooting

Nothing plays, no error either. Check whether both AUDIO and audio_path are empty - that's fine, it should fall back to the default bell, but if the default file itself is missing after a partial install, silence with no error is what you'd see. Reinstalling via ComfyUI Manager (rather than a half-finished manual clone) is the fastest fix.

It plays but I don't hear anything when running via the API / on a headless server. That's the expected limit described above - this is a local, in-session audio cue, not a webhook or notification system. If you need alerting for API-driven runs, you'll want something outside this node (a webhook call, a status check) rather than relying on Play Audio to reach you.

I fed it text instead of AUDIO and it errored. AUDIO wants ComfyUI's actual audio type, not a string - if you have a file path instead, use audio_path, not the AUDIO socket.

Categoryaudio

Inputs (3)

NameTypeDefaultDescription
anything*โ€”
AUDIOoptAUDIOโ€”
audio_pathoptSTRINGโ€”

Outputs (1)

NameTypeDescription
anything*โ€”