Nodes/ComfyUI-xiaozhuguang/小珠光音频加载器
ComfyUI Node

小珠光音频加载器

An audio loader that finally shows you the waveform before you commit

By xiaozhuguang·Created 2 months ago·Updated a day ago· 56
小珠光音频加载器
    • 音频
    音频
    起始时间(秒)0.0
    时长(秒)0.0
    音量1.00

    ComfyUI's core audio story has always been "here's a file, good luck." 小珠光音频加载器 (Xiaozhuguang Audio Loader) is the version that treats audio like a first-class citizen: it loads a file from your input/ folder, draws an actual waveform on the node, lets you trim the start and duration visually, and outputs a proper AUDIO tensor for whatever downstream node wants it.

    If you're building a workflow with the pack's video combine node (which accepts audio), its AudioDiT TTS nodes, or any ffmpeg-backed audio pipeline, this is the front end. The waveform display alone is worth it - you get to see that you loaded the right file instead of discovering two minutes later that you fed the wrong one to the encoder.

    How it works

    Under the hood it's FFmpeg all the way down. It probes the file for sample rate and duration, decodes the full waveform for the on-node display, then decodes the trimmed segment using your 起始时间(秒) (start time) and 时长(秒) (duration) settings. Volume is applied as a gain on the samples, clamped so you can't clip past full scale. FFmpeg comes from the pack's real dependency, imageio-ffmpeg (which bundles a static ffmpeg binary), with a fallback to a system ffmpeg if it's on PATH.

    The node is also just pleasant to use: drag-and-drop a file straight onto it, double-click to upload, and it reads from input/ (plus output/ and temp/ if you're loading something the pack's audio save node just wrote). The playback head is clickable and draggable, and the trim range is adjustable right on the waveform.

    The inputs that matter

    • 音频 (Audio) - the file dropdown, listing what's in input/.
    • 起始时间(秒) - skip into the file; defaults to 0.
    • 时长(秒) - trim length. Leave 0 for the whole file.
    • 音量 - volume gain from 0 to 3, default 1.

    Output is a single 音频 (AUDIO) port - a dict with waveform and sample_rate, which is the same shape ComfyUI's other audio nodes expect.

    One honest gotcha for English users: the widget labels are literally Chinese, even in an English UI - 音频, 起始时间(秒), 时长(秒), 音量. It's cosmetic, but don't panic when you see it; hover or switch the UI language if you need labels you can read.

    Install

    It's part of the big ComfyUI-xiaozhuguang pack - Manager (search "ComfyUI-xiaozhuguang" or "小珠光"), or:

    cd ComfyUI/custom_nodes/
    git clone https://github.com/xiaozhuguang/ComfyUI-xiaozhuguang.git
    

    Then restart. The one dependency that actually matters here is imageio-ffmpeg; if the pack's requirements didn't get installed, the node will fail to find ffmpeg and you'll see it in the console. pip install imageio-ffmpeg (or pip install -r requirements.txt inside the pack folder) fixes it.

    Gotchas

    If the audio comes back silent, check the trim settings first - a 时长(秒) that extends past the end of the file gets clamped, and a start time past the file's end snaps back to a hair before the end rather than erroring. And note the volume widget resets to 100% on reload by design (the pack explicitly stopped persisting it, to avoid stale volume settings sneaking into renders). Set volume as part of the run, not before saving the workflow.

    Categoryxiaozhuguang

    Inputs (4)

    NameTypeDefaultDescription
    音频COMBO0 options:
    起始时间(秒)FLOAT0.00–86400
    时长(秒)FLOAT0.00–86400
    音量FLOAT1.000–3

    Outputs (1)

    NameTypeDescription
    音频AUDIO