← the studio
A MoreSalamander · StudioLabs production

my-AI-beats

A local music generator. A SongSpec becomes a full song — MusicGen renders each section, a CLAP gate scores each against its intended vibe, and ffmpeg stitches the survivors into one track. No cloud, no API keys.

A spec in, a song out — and the gate has ears.

What it is

Sectioned, continued, scored, stitched.

You author a SongSpec — sections, style, mix, optional vocals — validated by spec.py before a note renders (a structural failure is an authoring bug, never a model failure). Then the pipeline generates the song section by section and keeps only what actually sounds like what you asked for.

Watch it run

A model proposes each section; CLAP decides whether it's the right vibe.
my-AI-beats · live pipelineattempt 1
spec_load
section
gate ●
continuation
vocal
gate ○
stitch
gate ●
song.wav
CLAP
— /100 · need ≥ 75
Per section. The hidden gem ↝: each section is conditioned on the tail of the previous one, so the song flows. Blocking ●: CLAP scores audio against the section prompt; ffprobe verifies the master. Non-blocking ○: a failed Bark vocal is dropped — the instrumental ships.

The three moves

Explain · Synthesize · Verify — section by section.
01 · Explain

The SongSpec — sections, style, mix, energy arc — is validated by spec.py before a note renders. A structural failure is an authoring bug, caught before any model runs.

02 · Synthesize

MusicGen renders each section conditioned on the tail of the previous one — the hidden gem — so the song flows as one piece instead of a playlist of disconnected clips.

03 · Verify

A CLAP model scores each section against its prompt; duration must match the bar count; ffprobe verifies the master. Vocals are non-blocking — a bad take is dropped, never corrupts the song.

Best at — and the honest limit

A coherent track, kept honest by a model with ears.

First full render: Something Blue — 3:48, sectioned, continued, gated, stitched. Every kept section cleared CLAP; a wandering generation gets caught and re-rolled instead of shipped.

What it can't do: CLAP checks that a section matches its prompt's vibe — not that the song is good. It guarantees the music is on-brief, and is honest that "is this a great song" is a human ear's call.