VRGDG_LoadAudioSplit_HUMO
The plainest HUMO scene splitter in the family
- audio
- meta
- total_duration
- audio_1
- audio_2
- audio_3
- audio_4
- audio_5
- audio_6
- audio_7
- audio_8
- audio_9
- audio_10
- audio_11
- audio_12
- audio_13
- audio_14
- audio_15
- audio_16
- audio_17
- audio_18
- audio_19
- audio_20
- audio_21
- audio_22
- audio_23
- audio_24
- audio_25
- audio_26
- audio_27
- audio_28
- audio_29
- audio_30
- audio_31
- audio_32
- audio_33
- audio_34
- audio_35
- audio_36
- audio_37
- audio_38
- audio_39
- audio_40
- audio_41
- audio_42
- audio_43
- audio_44
- audio_45
- audio_46
- audio_47
- audio_48
- audio_49
- audio_50
If you want to feed an audio track into HUMO and don't care about lyrics, transcription, or fancy per-scene durations, this is the node. VRGDG_LoadAudioSplit_HUMO is the stripped-down member of the splitter family: give it an AUDIO input, say how many scenes you want, and it hands back up to 50 scene clips plus the metadata. No language dropdown, no Whisper step, no scene instructions. Just cuts.
For context: HUMO is ByteDance's human-centric video generation framework - it takes text, image, and audio inputs and produces video with synchronized audio-driven motion. That's the whole reason this pack has a family of audio splitters at all: each scene clip becomes the audio track that a HUMO workflow animates to. This node is the minimal version of that job.
What it does
Three inputs:
- audio (
AUDIO) - the loaded track. Unlike the dynamic splitter, this one takes an actual audio wire, so it composes cleanly with any audio loader (VRGDG_LoadAudioWithPathis the obvious pairing). - offset_seconds (
FLOAT, default 0) - skip the first N seconds before splitting. The classic use: trim a no-vocals intro that would otherwise produce a dead scene. - scene_count (
INT, 1–50, default 1) - how many clips to produce.
Outputs:
- meta (
DICT) - scene structure info; pipe it throughVRGDG_Json2Stringif a downstream step wants it as text. - total_duration (
FLOAT) - the sum of the scene clips. - audio_1 .. audio_50 (
AUDIO) - the scene clips themselves.
Note what's missing compared to the fancier splitters: no using_infinite_talk toggle (this one is HUMO-flavored by definition), no per-scene duration inputs, no transcription. The split is by offset + count, and the scenes come out evenly sized. That's a feature - it's the node you reach for when you just need the song cut into N usable chunks and want the lowest possible friction.
How to use it
Drop the audio in, set offset_seconds to skip any dead intro, set scene_count to your target, and wire audio_1 through audio_N into your HUMO scene-generation branch. The meta output is your friend for keeping the scenes organized - dump it to a text node once so you can see exactly what the splitter decided before you build a 50-branch graph on top of it.
Installing it
Part of the comfyui-vrgamedevgirl pack. ComfyUI Manager: search "vrgamedev", install, restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/vrgamegirl19/comfyui-vrgamedevgirl
then install the README's requirements (librosa does the audio work here):
pip install -r custom_nodes/comfyui-vrgamedevgirl/requirements.txt
If it's not working
The usual suspects: the audio input isn't loaded (you're feeding it nothing - check the loader upstream), or offset_seconds is pushing past the useful content so scenes come out silent or empty. And if you expected per-scene control and got a uniform grid, remember this is the minimal splitter - the per-scene durations live in VRGDG_LoadAudioSplitDynamic, and the transcription lives in the Transcribe variants. Different nodes, different jobs.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| offset_seconds | FLOAT | 0.00 | — |
| scene_count | INT | 11–50 | — |
Outputs (52)
| Name | Type | Description |
|---|---|---|
| meta | DICT | — |
| total_duration | FLOAT | — |
| audio_1 | AUDIO | — |
| audio_2 | AUDIO | — |
| audio_3 | AUDIO | — |
| audio_4 | AUDIO | — |
| audio_5 | AUDIO | — |
| audio_6 | AUDIO | — |
| audio_7 | AUDIO | — |
| audio_8 | AUDIO | — |
| audio_9 | AUDIO | — |
| audio_10 | AUDIO | — |
| audio_11 | AUDIO | — |
| audio_12 | AUDIO | — |
| audio_13 | AUDIO | — |
| audio_14 | AUDIO | — |
| audio_15 | AUDIO | — |
| audio_16 | AUDIO | — |
| audio_17 | AUDIO | — |
| audio_18 | AUDIO | — |
| audio_19 | AUDIO | — |
| audio_20 | AUDIO | — |
| audio_21 | AUDIO | — |
| audio_22 | AUDIO | — |
| audio_23 | AUDIO | — |
| audio_24 | AUDIO | — |
| audio_25 | AUDIO | — |
| audio_26 | AUDIO | — |
| audio_27 | AUDIO | — |
| audio_28 | AUDIO | — |
| audio_29 | AUDIO | — |
| audio_30 | AUDIO | — |
| audio_31 | AUDIO | — |
| audio_32 | AUDIO | — |
| audio_33 | AUDIO | — |
| audio_34 | AUDIO | — |
| audio_35 | AUDIO | — |
| audio_36 | AUDIO | — |
| audio_37 | AUDIO | — |
| audio_38 | AUDIO | — |
| audio_39 | AUDIO | — |
| audio_40 | AUDIO | — |
| audio_41 | AUDIO | — |
| audio_42 | AUDIO | — |
| audio_43 | AUDIO | — |
| audio_44 | AUDIO | — |
| audio_45 | AUDIO | — |
| audio_46 | AUDIO | — |
| audio_47 | AUDIO | — |
| audio_48 | AUDIO | — |
| audio_49 | AUDIO | — |
| audio_50 | AUDIO | — |