VRGDG_QueueTriggerFromAudio
A queue trigger that marches the graph through audio-scene sets
- signal
- signal_opt
The music video workflow's dirty secret is that "one click, fully automated" is a lie built from a lot of queue engineering. VRGDG_QueueTriggerFromAudio is one of the nodes that makes the automation real: it's an output node whose whole job is to advance the render queue through the audio-derived scene groups - and it does it on a schedule that matches how your audio was split into scenes.
This is the "some assembly required" part of the pack, and it's where a lot of the fiddling happens. It doesn't call any API, doesn't need a key, doesn't touch the audio file itself - it's a state machine over the queue, shaped by numbers you feed it.
How it works
It's an output node (is_output_node: true), so it sits at the end of a chain and its execution is what the queue advances. The inputs are the knobs:
signal- any input that forces the node to evaluate. Wire something from your pipeline here so the trigger only runs when the graph has produced a result.mode- a boolean (default true) that switches between the two scheduling behaviors: loop through all scene sets, or stop after the configured run.total_sets- how many scene groups exist in the whole song. This is the outer loop bound.groups_in_last_set- how many scenes are in the final group, from 0 to 16. The node uses this to handle the trailing set correctly (a song's last batch is usually smaller than a full group).index- the current position; the node computes the next state from it.
Output: signal_opt, the signal input passed through, so you can chain the trigger into more nodes.
In the workflow it's driven by the audio-splitting data: the transcription step counts lyric segments and groups them into scene sets, and this node walks those sets one queue-run at a time, telling the graph "render the next group now."
Why it exists
ComfyUI's queue doesn't loop natively - each run executes the graph once and stops. To render a 30-scene music video you either press "Queue" thirty times or you build loop logic. This node is the pack's loop logic, and the "FromAudio" in the name is the honest part: the loop bounds come from how the audio was segmented, not from magic.
Gotchas
The numbers matter and nothing validates them against the actual audio. If total_sets doesn't match your song's real group count, the trigger will either stop early or overrun into empty sets. Keep mode, total_sets, and index consistent - people burn a render session on exactly this mismatch.
Installing it
With the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/vrgamegirl19/comfyui-vrgamedevgirl
restart, or ComfyUI Manager → search vrgamedev. The pack's librosa dependency (from requirements.txt) is what the audio-splitting side uses, so don't skip it.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| signal | * | — | |
| mode | BOOLEAN | true | — |
| total_sets | INT | 1 | — |
| groups_in_last_set | INT | 160–16 | — |
| index | INT | 0 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| signal_opt | * | — |