Generated reference · ComfyUI workflow · Audio & music

Music Cue Composer

Contemplative music cues on ACE-Step 1.5 turbo (8-step distilled, native ComfyUI): tag-driven composition with explicit bpm/key/time-signature control.

Audio & music9nodesGPU A6000out audio~120sv1.0.0

On this page
9Graph nodes
9Node classes
16Inputs
1Models

Tags: 2026-sotaace-step-1.5audiocinematiccuemusicscore

Inputs (16)#

The typed parameter surface callers bind when they request this workflow. Enum options and numeric bounds are the values the workflow document declares.

promptstringrequired
Describe the musical cue intent
cue_purposeenumdefault character_theme
Narrative purpose of the cue
options: build_tensioncharacter_themechasetransitionvictoryambient_loop
moodenumdefault heroic
Emotional mood
options: upliftingmysterioussomberheroicaggressivecalm
instrumentationenumdefault hybrid_orchestral
Primary instrument family
options: hybrid_orchestralsynthwaveambient_texturespercussion_focusacoustic_ensemble
tempo_bpmintegerdefault 96min 60max 180
Target tempo in BPM
duration_secondsintegerdefault 20min 8max 90
Cue duration in seconds
audio_prompt_hintstringdefault
Optional prompt-side conditioning hint applied when provider supports advanced audio conditioning
reference_audio_urlstringdefault
Primary reference audio URL for melody/style conditioning when supported by backend
reference_audio_urlsarraydefault []
Optional ordered list of additional reference audio URLs for conditioning stacks
style_reference_idstringdefault
Optional provider-side style reference identifier
conditioning_strengthfloatdefault 0.65min 0max 2
Conditioning strength for reference-audio guidance
conditioning_modeenumdefault auto
Audio conditioning mode preference
options: autoreference-audiomelodystyle-transfervoice-clone
provider_capability_modeenumdefault auto
How strictly provider support for reference-audio conditioning is enforced
options: autorequireddisabled
seedintegerdefault -1
Random seed
lyricsstringdefault [inst]
Lyrics; [inst] for instrumental
keyscalestringdefault E minor
Key/scale, e.g. "E minor" or "C major" (invalid values fail loudly at the node)

ComfyUI node graph (9)#

The executable ComfyUI prompt graph: 9 nodes across 9 distinct node classes, wired by 11 data dependencies. Nodes tinted green come from a custom node pack this workflow declares; the rest are ComfyUI core / baked-community classes.

flowchart TD n0["1: CheckpointLoaderSimple"] n1["2: TextEncodeAceStepAudio1.5"] n2["3: ConditioningZeroOut"] n3["4: EmptyAceStep1.5LatentAudio"] n4["5: ModelSamplingAuraFlow"] n5["6: KSampler"] n6["7: VAEDecodeAudio"] n7["8: AudioLimiter"] n8["9: SaveAudioMP3"] n0 -->|clip| n1 n1 -->|conditioning| n2 n0 -->|model| n4 n4 -->|model| n5 n1 -->|positive| n5 n2 -->|negative| n5 n3 -->|latent_image| n5 n5 -->|samples| n6 n0 -->|vae| n6 n6 -->|audio| n7 n7 -->|audio| n8 classDef custom fill:#12b886,stroke:#0b6b4f,color:#04110c; class n7 custom;
Data-flow DAG — scroll to zoom, drag to pan.

Nodes (9)#

1CheckpointLoaderSimplecore
ckpt_name = ace_step_1.5_turbo_aio.safetensors
outputs: MODELCLIPVAE
2TextEncodeAceStepAudio1.5core
clip = ◂ node 1 · out[1]tags = {{constructed_prompt}} tmpllyrics = {{lyrics}} tmplseed = {{seed}} tmplbpm = {{tempo_bpm}} tmplduration = {{duration_seconds}} tmpltimesignature = 4language = enkeyscale = {{keyscale}} tmpl
outputs: CONDITIONING
3ConditioningZeroOutcore
conditioning = ◂ node 2 · out[0]
outputs: CONDITIONING
4EmptyAceStep1.5LatentAudiocore
seconds = {{duration_seconds}} tmplbatch_size = 1
outputs: LATENT
5ModelSamplingAuraFlowcore
model = ◂ node 1 · out[0]shift = 3.0
outputs: MODEL
6KSamplercore
model = ◂ node 5 · out[0]positive = ◂ node 2 · out[0]negative = ◂ node 3 · out[0]latent_image = ◂ node 4 · out[0]seed = {{seed}} tmplsteps = 8cfg = 1.0sampler_name = eulerscheduler = simpledenoise = 1.0
outputs: LATENT
7VAEDecodeAudiocore
samples = ◂ node 6 · out[0]vae = ◂ node 1 · out[2]
outputs: AUDIO
8AudioLimitercustom pack
audio = ◂ node 7 · out[0]ceiling_db = -1.0
outputs: AUDIO
9SaveAudioMP3core
audio = ◂ node 8 · out[0]filename_prefix = music_cue_composerquality = V0

Prompt construction#

template
{prompt}, cue purpose: {cue_purpose}, mood: {mood}, instrumentation: {instrumentation}, {tempo_bpm} BPM

Variables (5)#

prompt
{{prompt}} tmpl
cue_purpose
{{cue_purpose}} tmpl
mood
{{mood}} tmpl
instrumentation
{{instrumentation}} tmpl
tempo_bpm
{{tempo_bpm}} tmpl

Models & dependencies#

Custom node packs (1)#

The non-core ComfyUI node classes this graph requires; the RunPod worker image the workflow runs on must bake or install a pack that provides every one of them.

AudioLimiter

Models required (1)#

ace_step_1.5_turbo_aio.safetensors

Output contract#

What a successful run of this workflow returns.

type
audio
format
mp3
codec
pcm_s16le
channels
2
description
Music cue master render
audio_package
{"mixdown": {"artifact_id": "audio_mixdown", "path_template": "audio/{{job_id}}/mixdown/music-master.wav", "format": "wav", "sample_rate_hz": 48000, "bit_depth": 24, "channels": 2, "codec": "pcm_s24le"}, "stems": {"format": "wav", "sample_rate_hz": 48000, "bit_depth": 24, "channels": 2, "artifacts": [{"stem": "drums", "artifact_id": "stem_drums", "path_template": "audio/{{job_id}}/stems/drums.wav", "required": false}, {"stem": "bass", "artifact_id": "stem_bass", "path_template": "audio/{{job_id}}/stems/bass.wav", "required": false}, {"stem": "lead", "artifact_id": "stem_lead", "path_template": "audio/{{job_id}}/stems/lead.wav", "required": true}, {"stem": "other", "artifact_id": "stem_other", "path_template": "audio/{{job_id}}/stems/other.wav", "required": false}], "archive": {"artifact_id": "stems_archive", "path_template": "audio/{{job_id}}/stems/stems.zip", "format": "zip"}}, "multi_track": {"format": "wav", "sample_rate_hz": 48000, "bit_depth": 24, "channels": 2, "artifacts": [{"track": "dialogue", "artifact_id": "multitrack_dialogue", "path_template": "audio/{{job_id}}/multitrack/dialogue.wav", "required": false}, {"track": "sfx", "artifact_id": "multitrack_sfx", "path_template": "audio/{{job_id}}/multitrack/sfx.wav", "required": false}, {"track": "music", "artifact_id": "multitrack_music", "path_template": "audio/{{job_id}}/multitrack/music.wav", "required": true}], "archive": {"artifact_id": "multitrack_archive", "path_template": "audio/{{job_id}}/multitrack/multitrack.zip", "format": "zip"}}, "loudness": {"artifact_id": "loudness_report", "path_template": "audio/{{job_id}}/analysis/loudness-report.json", "format": "json", "standard": "spotify", "target_integrated_lufs": -14, "max_true_peak_dbtp": -1}, "compliance": {"artifact_id": "audio_compliance_report", "path_template": "audio/{{job_id}}/analysis/audio-compliance-report.json", "format": "json", "loudness_tolerance_lufs": 1.0, "true_peak_tolerance_dbtp": 0.3, "max_clipping_percent": 0.1, "enforce_format_normalization": true}, "cue_sheet": {"artifact_id": "cue_sheet", "path_template": "audio/{{job_id}}/metadata/cue-sheet.csv", "format": "csv", "include_timecode": true, "include_beat_markers": true, "include_sections": true}}

Taxonomy & routing#

How the control plane classifies this workflow — from the committed workflow-taxonomy-registry.json. It drives the consistency / control surface the agentic director can exercise over the workflow.

assetFamily
social-audio-hook-loop-pack
outputPackageProfile
audio-master-profile
controlModalities
camera-lockcolor-script-lockdepth-constraintidentity-adapterlatent-reusemodel-lockpalette-lockpose-constraintprompt-template-lockreference-ensemblesampler-scheduler-lockscene-lockseed-lockstyle-anchorstyle-locktemporal-lock +1 more
consistencyDimensions
motioncolor-script
notes
Auto-mapped from audio defaults