Note · budding
How Suno clips relate to each other
- Stage
- budding
- Links
- 1 out, 1 in
Every clip Suno generates carries metadata about where it came from. Building suno-web meant working out that structure from an archive of about 19,000 clips.
A clip can point at other clips in nine ways:
cover_clip_id: it is a cover of that clipedited_clip_id: it is an editartist_clip_id: it borrows that clip’s voicestem_from_id: it is a stem separated from itstyles_lyrics_clip_id: it reuses the style and lyricsmashup_clip_ids: a list of clips it combineshistory: the chain of extensions, each with the time it continues fromconcat_history: the parts joined to make a full songpersona.root_clip_id: the clip a persona was made from
The kind of generation is in metadata.task, which takes about 25 values.
For a single “parent” I take the first of cover, edit, artist, stem and styles that is set. Walking up is guarded against cycles. Walking down needs a budget: one family in my archive has 426 children.
Other things the data taught me:
- A persona’s name is inside the
personaobject. The top-levelpersona_namefield is not where it lives. - Suno returns two clips per generation with the same title and the same
created_atto the millisecond, so a list has to group them or everything appears twice. - There are no word timings. Lyrics can only scroll in proportion to playback position; real synchronisation would need forced alignment against the audio.
Links to
Projects
- suno-web A library browser for a local archive of Suno music.
Linked from
Projects
- suno-web A library browser for a local archive of Suno music.
Related by meaning
- suno-web Code
- jupiter-os Project
- What HACS and hassfest reject Note