Game trailer score: section markers for a Lyria 3 Pro brief

Score a game trailer by marking sections in the prompt, pinning lyria-3-pro on Sume's router and cutting picture to the result on a Timeline render.

5 min readSume
All posts

How do you get a trailer score with distinct sections from an AI music model? Mark them in the prompt. The Music 1.0 and Music Router docs say length and structure are steered in the prompt, with section markers like [0:00-0:30] Intro: ..., because the request has no seed, temperature, guidance or duration parameter. Pin lyria-3-pro if you want the Pro engine, or leave model off for sume/music-auto.

A trailer needs a quiet start, a rise, a hit and a tail. Put each as a timed section and cut your clips to the markers.

A sectioned prompt

Treat the markers as intent. The docs describe provider lyrics as model-reported metadata, not an audio measurement, so listen for where the sections landed before you lock the cut.

import os
import requests

prompt = (
    "[0:00-0:20] Intro: low drone and a distant war horn, 70 BPM, D minor. "
    "[0:20-0:50] Build: taiko hits and rising strings. "
    "[0:50-1:00] Hit and tail: full orchestra stab at 0:50, then silence. "
    "Cinematic, 2024 hyper-clean. A 1-minute track. Instrumental, no vocals."
)
r = requests.post(
    "https://api.sume.com/v1/music-router/generate",
    headers={"Authorization": "Bearer " + os.environ["SUME_API_KEY"], "Idempotency-Key": "trailer-001"},
    json={"model": "lyria-3-pro", "prompt": prompt, "mode": "async"},
    timeout=60,
)
print(r.status_code, r.json())

Cut picture to the music

After the job finishes, read the audio URL from result.artifacts[]. Then plan a Timeline 1.0 render. The plan route validates URLs and the pure compiler and returns duration_seconds, segment_count and estimated_cost_usd_micros without creating a job, reserving credits or downloading media. That is the cheap way to test a cut before you pay for it.

Plan fields from docs.sume.com Timeline 1.0, read 2026-10-04.
Plan fieldWhat it tells you
duration_secondsLength of the output
segment_countNumber of video slots
billable_minutesWhat the render bills
estimated_cost_usd_microsEstimated cost
filtergraph_summaryHow the compiler will build it

Slot starts and the spine

Each video[].start is an on-spine time and video[0].start must be 0. Declared starts are authoritative, so line them up with the section markers you wrote. The documented limits are 1 to 200 slots and an output up to 1800 seconds.

What can go wrong

The docs say video coverage may trail the spine by at most 0.5 seconds, and a plan cannot predict short-source pad or loop warnings. Read the refusals table in the Timeline docs before you automate.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume