Nodes/Comfyui_Attome_S3/Attome S3 Load Audio
ComfyUI Node

Attome S3 Load Audio

Audio out of the bucket, as a proper ComfyUI AUDIO

By attome-ai·Created 8 months ago·Updated 8 months ago· 4
Attome S3 Load Audio
  • s3_config
  • audio
s3_keypath/to/audio.wav

Audio in ComfyUI isn't a file - it's a dict with a waveform tensor and a sample_rate. Attome S3 Load Audio is the node that gets you there from a bucket: it downloads a WAV (or MP3, FLAC, OGG - whatever the key points at) and decodes it into that standard AUDIO structure, ready to feed audio-conditioned workflows, audio-to-video pipelines, or any node that expects ComfyUI's audio format.

It's part of the Comfyui_Attome_S3 pack, and it's the mirror of the pack's save-audio node: one box renders a voiceover to S3, another box loads it back in a different workflow. That round-trip is the whole point of this pack.

How it works

Under the hood it's simple and a little inelegant: boto3 downloads the object, writes it to a temporary file, and calls torchaudio.load() on it. The result is a dict with waveform (with a batch dimension added, since that's what ComfyUI's audio nodes expect) and the real sample_rate read from the file. The temp file gets cleaned up afterward, so nothing litters your disk.

One quirk: if torchaudio isn't installed, it falls back to returning raw bytes with a made-up 44100 sample rate and a raw: true flag. Most downstream audio nodes won't know what to do with that, so treat that fallback as "install torchaudio," not a feature. And if s3_key is empty, you get a silent 1024-sample waveform at 44100 Hz instead of an error - the pack's standard "optional resource" behavior, useful but confusing if you forget why your audio is suddenly silent.

Inputs and outputs

  • s3_key (required) - the object path, e.g. voiceovers/intro.wav.
  • s3_config (optional) - from the Attome S3 Config node, or rely on the pack's env.txt defaults.
  • Output: audio - a single AUDIO.

Install

Same as every node in this pack - ComfyUI Manager (search "Comfyui_Attome_S3"), or:

cd ComfyUI/custom_nodes
git clone https://github.com/attome-ai/Comfyui_Attome_S3
cd Comfyui_Attome_S3
pip install -r requirements.txt

Restart afterward. This node genuinely needs torchaudio, which is in the requirements file - and here's the one real gotcha: torchaudio must match your torch version. If you're on a custom torch build (a new CUDA wheel, say) and installed torchaudio from a mismatched channel, you'll get an import error or a silent "could not load" at decode time. Match them, and it's fine. The other usual suspects apply too: Access Denied means the IAM user lacks s3:GetObject, and MinIO/R2 users need endpoint_url set or boto3 will go looking on AWS. Beyond that it's a quiet, dependable little node.

CategoryAttome/S3

Inputs (2)

NameTypeDefaultDescription
s3_keySTRINGpath/to/audio.wav
s3_configoptS3_CONFIG

Outputs (1)

NameTypeDescription
audioAUDIO