Nodes/comfyui-sg-nodes/Sound Player
ComfyUI Node

Sound Player

The 'Job's Done' Chime (And TTS Preview) Node

By sebagallo·Created 9 months ago·Updated 6 months ago· 0
Sound Player
  • passthrough
  • audio
  • PASSTHROUGH
volume50

Long generation running? Go make tea, and let the computer tell you when it's done. Sound Player plays an audio stream out loud the moment the node executes - a completion chime for a 40-minute video render, or an instant preview of a TTS voice without saving a single file.

The trick, and the thing that separates it from most "notify me" nodes: the audio actually plays in your browser, not on the ComfyUI server. The flow is worth understanding because it explains both the magic and the limits. ComfyUI's audio nodes (Load Audio, and the TTS nodes like Kokoro and F5-TTS in this ecosystem) hand you an AUDIO stream - a waveform tensor plus a sample rate. When this node executes, the server sends that waveform over ComfyUI's realtime message channel to the frontend, and a small bit of frontend JavaScript builds a WebAudio buffer and plays it out your speakers. The server never touches a sound card.

The inputs

  • passthrough - any type, passed straight through to PASSTHROUGH. Its real job is execution ordering: connect whatever must finish before the chime, and the sound fires after it.
  • audio - the AUDIO stream to play. Comes from a Load Audio node or any audio-generating node that outputs the standard AUDIO type.
  • volume - integer slider, 0–100. Default 50.

One output, PASSTHROUGH - the original passthrough value, unchanged.

The honest limits

Client-side playback means the sound only plays if a browser tab has ComfyUI open. Headless servers, remote boxes you access and close, or UI-less runs hear nothing - for those you'd want a webhook-based notification instead, and Call Remote URL from this pack covers that. Also, because the waveform is shipped over the message channel, a long audio clip gets sent in full to the browser - fine for a chime or a voice preview, wasteful for a 10-minute soundtrack (use it to preview, not to listen to whole mixes).

One more from the source: if the audio input isn't a proper AUDIO stream (missing the waveform or sample rate), the node just skips playback silently and passes passthrough through. So if you hear nothing, check that the upstream node is actually emitting an AUDIO-typed stream - the failure mode is a silent no-op, which is polite but confusing.

Install

Part of comfyui-sg-nodes by sebagallo. ComfyUI Manager → search comfyui-sg-nodes, or:

cd ComfyUI/custom_nodes
git clone https://github.com/sebagallo/comfyui-sg-nodes

Restart ComfyUI; it's under SGNodes/Utilities. No model downloads, no extra dependencies - audio comes from your existing audio nodes.

CategorySGNodes/Utilities

Inputs (3)

NameTypeDefaultDescription
passthroughCOMFY_MATCHTYPE_V3Any type. The value to be passed through.
audioAUDIOThe audio stream to play.
volumeINT500–100Integer slider for volume control (0-100).

Outputs (1)

NameTypeDescription
PASSTHROUGHCOMFY_MATCHTYPE_V3