{"schema_version":"1","site":"https://decosa.ai","id":"music-video-starring-you","num":"171","name":"Music video starring you","tool_name":"Make a music video starring you","short":"Music video starring you","blurb":"Record a 15-second consent clip (a selfie reading a sentence that ends in three fresh words), add your track and a line of direction, and get 8 to 12 shots of you cut on the beat: the beat grid and sections of the song, a shot list per section you can edit, a re-roll on any shot, a 16:9 and a 9:16 export and a Spotify Canvas loop. Your face comes only from your consent clip: there is no photo upload, and adults only. Every frame says AI video and the end card credits the music to you. Moving shots run on MiniMax H3 when a render GPU is attached; otherwise the shots are a storyboard of drawn stills with camera moves.","status":"preview","labels":{"industry":["music","creative-media"],"job":["generate"],"input":["files","voice"],"deploy":["hosted","selfhost"],"status":"preview","output":["media"],"data":["pii"],"hardware":"gpu-96","licence":"permissive"},"industries":["music","creative-media"],"runs_in":["hosted","selfhost"],"part_of":["studio-music"],"built_from":["live-asr","studio-render","content-credentials"],"models":"MiniMax H3 (reference mode, Turbo v4) · FLUX.2 klein 4B (storyboard) · Qwen3.8-27B (shot list, checks) · Qwen3-ASR-1.7B (consent read-back)","where":"Hosted (moving shots when a render GPU is attached); self-host on a 96 GB card with your own H3 licence","hardware":"1x 96 GB card for MiniMax H3 shots (fp8, about 50 GB); the storyboard runs on FLUX.2 klein (about 6 GB) and the edit on CPU","final_artifact":"A music video in 16:9 and 9:16 and a Spotify Canvas loop, labelled AI video, crediting the music to you, with a content credential in each file.","self_host_first":false,"verification":{"receipt_coverage":"partial","summary":"Consent clip checked (words heard, one live face, an adult); frame safety and likeness checks; cuts measured on the beat; C2PA in every export","manual_qa":{"hosted":{"date":"2026-09-29","result":"pass","p50_ms":88220,"p95_ms":104700,"runs":3,"receipts_per_run":5,"cost_per_run_usd":0.0291},"selfhost":null,"known_limits":["Moving shots need a render GPU, which is off until launch: the hosted demo makes a storyboard (drawn stills with camera moves).","No lip-sync to the vocal.","Likeness is checked by the text model on each frame; ArcFace numbers are internal QC only.","The adult check is a vision estimate from the consent frames, not an ID check.","Moving H3 shots aren't ready: blind testers rejected them (faces lost or someone else's); the likeness gate keeps about half and still lets some wrong faces through.","The likeness check is a yes/no from the text model on each picture; it caught 1 unlike picture in the couple test after the fix, and missed one before it (only the first partner was checked).","Measured with synthetic sample performers and one sample song."],"nightly_covers":null},"nightly":"https://api.decosa.ai/verify/status"},"eval_summary":{"metrics":[{"name":"Planned cuts found on the beat in the exports","value":"27 / 27","unit":null,"n":27,"split":"synthetic","note":"3 storyboard renders of the sample song; median 5.7 ms, max 16.3 ms from the beat grid (half a frame at 30 fps is 16.7 ms)."},{"name":"Storyboard frames flagged by the frame safety check","value":"0 / 30","unit":null,"n":30,"split":"synthetic","note":"Sample performers are synthetic adults; the check fails closed."},{"name":"Storyboard video done (p50)","value":"88.2 s","unit":null,"n":3,"split":"synthetic","note":"86-105 s (p50 88.2 s); first picture drawn after 12-20 s; shared GPU."},{"name":"Cost per storyboard video","value":"$0.029-0.034","unit":null,"n":3,"split":"synthetic","note":"Text model at list price plus GPU time at $1.32/h."},{"name":"MiniMax H3 time per moving shot","value":"57-65 s (one reference)","unit":null,"n":10,"split":"synthetic","note":"Sketch tier 864x480, fp8, one 96 GB card, peak 49.6-52 GiB; recorded in a GPU window on 29 Sep."},{"name":"MiniMax H3 cost per shot","value":"$0.022-0.029","unit":null,"n":27,"split":"synthetic","note":"GPU time at $1.32/h; 27 shots including 6 re-rolls."},{"name":"Face likeness to the consent clip (ArcFace cosine, storyboard / H3)","value":"0.52 / 0.36","unit":null,"n":null,"split":"synthetic","note":"Internal QC with a non-commercial model, not shipped. H3 shots were often wide or turned away (faces found in 15 of 80 sampled frames); frontal re-rolls reached 0.51."},{"name":"Moving shots that kept the face (likeness gate)","value":"5 / 10","unit":null,"n":10,"split":"synthetic","note":"One middle frame per moving shot checked against each person's reference; the rest fell back to the still. Some wrong faces still pass."},{"name":"Blind artist: posts it / would pay (storyboard; moving)","value":"yes, $20; no, $0","unit":null,"n":1,"split":"synthetic","note":"An Opus sub-agent as an independent artist: the storyboard as a teaser and Canvas, not as the music video; the moving shots lost her face too often. Before the likeness gate on moving shots."}],"dataset":"Synthetic sample performers (consent clips made from designed faces and voices; no real person), one sample song made with MiniMax-Music3, 3 storyboard renders per mode, and 27 MiniMax H3 shots (10 artist, 11 couple, 6 re-rolls) rendered in a GPU window on 29 Sep 2026.","held_out":false,"caveats":["Synthetic performers and one song; real selfies and real tracks are not measured.","Beat offsets are against the detected beat grid, not a human one.","Visual quality is not scored; some H3 sketch shots show artefacts (gold squiggles in one look, a banding glitch).","ArcFace (buffalo_l) is non-commercial and used only as internal QC.","The same builder wrote the pipeline and the eval."],"date":"2026-09-29","doc_url":"https://decosa.ai/metrics/evals/music-video-starring-you"},"stack":{"summary":"An independent artist records a 15-second selfie reading a sentence that ends in three fresh words, adds a track and a line of direction, and gets 8 to 12 shots of themselves planned per section of the song: edit or re-roll any shot, then export 16:9, 9:16 and a Spotify Canvas loop, cut on the beat. The face comes only from the consent clip: there is no photo upload, and adults only. Every frame says AI video and the end card credits the music to the artist.","tagline":"Record a 15-second consent clip, add your track, and get a music video of you cut on the beat, in 16:9, 9:16 and a Canvas loop.","deployment":"hosted-or-self-host","regulatory_note":"Not legal advice; written 29 Sep 2026. Consent: a live consent clip with three fresh words, one moving face and an adult check (fails closed) goes into the consent ledger for the purpose music_video only, with the performer's own revocation link, which deletes their references and videos. There is no photo upload anywhere in the tool, so it can't be pointed at someone else's face. Children: Studio keeps children out of every video: a minor can't be enrolled for this purpose (tested), and memories that describe a child are refused. Disclosure: every frame carries a visible AI video label and every export a C2PA credential; EU AI Act (Regulation (EU) 2024/1689) Art. 50(2) asks providers to mark generated video in a machine-readable way from 2 Aug 2026 (EUR-Lex link under Tools). Use each platform's own AI-content toggle as well. Music: you confirm you have the rights to the track, and the end card credits it; the statement is not verified.","components":[{"id":"asr","role":"Consent read-back: hears whether the clip says the sentence and its three fresh words","name":"Qwen3-ASR-1.7B (language pack speech service)","hf_repo":"Qwen/Qwen3-ASR-1.7B","license":"Apache-2.0","params":"1.7B","quant":"BF16","vram_gb":null,"memory_gb_estimate":null,"engine":"decosa language pack speech service (services/lang)","receipt_coverage":"partial","in_hosted_demo":null,"tiers":["standard","best"],"alternative_to":null},{"id":"faces","role":"Face detection only (boxes): exactly one face, present and moving through the clip; its three sharpest frames become the only face references","name":"Ultra-Light-Fast-Generic-Face-Detector-1MB (version-RFB-320)","hf_repo":null,"license":"MIT","params":null,"quant":"FP32 ONNX (bundled)","vram_gb":0,"memory_gb_estimate":null,"engine":"onnxruntime on CPU","receipt_coverage":"none","in_hosted_demo":null,"tiers":["standard","best"],"alternative_to":null},{"id":"llm","role":"Adult check on the consent frames (vision), the shot list per song section, and the frame safety and likeness checks","name":"Qwen3.8-27B (NVFP4)","hf_repo":"nvidia/Qwen3.8-27B-NVFP4","license":"Apache-2.0","params":"27.8B","quant":"NVFP4 (MLP NVFP4, GDN/attention FP8) + FP8 KV cache; MTP head, 3 draft tokens","vram_gb":20,"memory_gb_estimate":null,"engine":"vLLM 0.29.0, thinking off; treatment at temperature 0.3 (one retry at 0), checks at 0","receipt_coverage":"strong","in_hosted_demo":true,"tiers":["standard","best"],"alternative_to":null},{"id":"analyzer","role":"Beat grid, bars and sections of the song (CPU; the music-video studio's analyzer): cuts land on bar downbeats","name":"decosa-mvideo-analyze (services/mvideo)","hf_repo":null,"license":"AGPL-3.0-or-later (decosa-api)","params":null,"quant":null,"vram_gb":0,"memory_gb_estimate":null,"engine":"Python 3.12, librosa 1.0.0 (ISC), numpy, scipy; 8-16 threads","receipt_coverage":"none","in_hosted_demo":null,"tiers":["standard","best"],"alternative_to":null},{"id":"stills","role":"Storyboard: one still per shot drawn from the consent-clip references, then a camera move (push, pan, drift)","name":"FLUX.2 klein 4B","hf_repo":"black-forest-labs/FLUX.2-klein-4B","license":"Apache-2.0","params":"4B","quant":"fp8_e4m3fn transformer, Qwen3-4B NVFP4 text encoder","vram_gb":6,"memory_gb_estimate":null,"engine":"ComfyUI v0.34.0-36-g30bdda1e, core Flux2 nodes (ReferenceLatent), through the studio queue","receipt_coverage":"partial","in_hosted_demo":true,"tiers":["standard"],"alternative_to":null},{"id":"h3","role":"Moving shots: MiniMax H3 reference mode with the performer's consent-clip frames, Turbo v4 LoRA, sketch tier 864x480","name":"MiniMax-H3 (reference mode, Turbo v4)","hf_repo":"MiniMaxAI/MiniMax-H3","license":"MiniMax H3 licence: our commercial licence covers hosted renders (official 28 Sep 2026, US customers included); to self-host you need your own licence (the public community licence excludes the US, EU, UK and Korea)","params":"33.1B (transformer) + 33.4B (text encoder)","quant":"fp8 rowwise transformer; the text encoder (fp8, 37 GiB) runs first and is unloaded","vram_gb":52,"memory_gb_estimate":null,"engine":"diffusers ModularPipeline (MiniMax-H3 blocks), SDPA, no compile; one warm worker","receipt_coverage":"partial","in_hosted_demo":false,"tiers":["best"],"alternative_to":null},{"id":"edit","role":"The edit (CPU): shots cut on the bar downbeats at 30 fps, the AI video label on every frame, an end card crediting the music, exports in 16:9, 9:16 and a Spotify Canvas loop; cut timing measured back from the pixels; C2PA per file","name":"decosa-api starring module + FFmpeg + c2pa-python","hf_repo":null,"license":"AGPL-3.0-or-later","params":null,"quant":null,"vram_gb":0,"memory_gb_estimate":null,"engine":"FFmpeg (libx264), c2pa-python","receipt_coverage":"partial","in_hosted_demo":null,"tiers":["standard","best"],"alternative_to":null}],"tiers":[{"id":"standard","label":"Standard · the hosted demo, a storyboard cut on the beat","summary":"A drawn still per shot from your consent clip, with a camera move, cut on the beat: a planning cut and a keepsake, not yet a moving video.","components":["asr","faces","llm","analyzer","stills","edit"],"hardware":"One card with about 6 GB free for the stills, the text model (about 20 GB, or remote), CPU for the edit","quality_evidence":[{"metric":"Planned cuts found on the beat (3 renders)","value":"27 / 27; median 5.7 ms, max 16.3 ms","source":"decosa-api docs/evals/music-video-starring-you.md, 2026-09-29"},{"metric":"Frames flagged by the frame safety check","value":"0 / 30","source":"decosa-api docs/evals/music-video-starring-you.md, 2026-09-29"},{"metric":"Visual quality","value":"not scored; drawn stills with camera moves","source":null}],"latency_note":"measured on our server: done in a minute or two","in_hosted_demo":true,"receipt_coverage":"partial","receipt_note":null,"hosting":null},{"id":"best","label":"Best · moving shots on MiniMax H3, one 96 GB card","summary":"The same shot list with each shot moving, from your consent-clip references. Not ready: blind testers rejected the moving shots, and the likeness gate keeps about half. Hosted once a render GPU is attached; self-host with your own H3 licence.","components":["asr","faces","llm","analyzer","h3","edit"],"hardware":"1x RTX PRO 6000 96 GB with about 60 GB free (fp8 H3, peak 49.6-52 GiB measured)","quality_evidence":[{"metric":"Time per moving shot (sketch 864x480)","value":"57-65 s with one reference","source":"decosa-api docs/evals/music-video-starring-you.md, 2026-09-29"},{"metric":"Face likeness to the consent clip (ArcFace, internal QC)","value":"0.36 (frontal re-rolls 0.51)","source":"decosa-api docs/evals/music-video-starring-you.md, 2026-09-29; faces often small or turned"},{"metric":"Blind testers who would pay for moving shots","value":"0 of 2 (both would for the storyboard)","source":"decosa-api docs/evals/music-video-starring-you.md, 2026-09-29"}],"latency_note":"measured in a GPU window on 29 Sep 2026","in_hosted_demo":false,"receipt_coverage":"partial","receipt_note":"Render receipts signed by the box; not a community-provider model.","hosting":null}],"alternates":[],"services":[{"name":"decosa-api","port":8445,"image":"${DECOSA_REGISTRY}/decosa-api:<tag>","purpose":"GET /studio/starring/info; POST /studio/projects/{pid}/performers/challenge, /performers/clip, /tracks, /videos; GET /studio/videos/{vid}; POST /studio/videos/{vid}/shots (edit or re-roll), /move (MiniMax H3 shots), /share, /unshare; POST /studio/starring/revoke. Needs FFmpeg and c2pa-python in the image."},{"name":"decosa-lang (speech)","port":8492,"image":null,"purpose":"Qwen3-ASR hears the consent sentence."},{"name":"comfyui","port":8188,"image":null,"purpose":"FLUX.2 klein storyboard stills for the studio worker, one job at a time."},{"name":"H3 render worker","port":null,"image":null,"purpose":"MiniMax H3 reference-mode shots on a 96 GB card; off until a render GPU is attached (the tool then makes a storyboard)."},{"name":"vLLM","port":8114,"image":"vllm/vllm-openai@sha256:c2914767605584b6d8f45686b82de173ecc99e781897aa3d0a66dacd72c51ae1","purpose":"Qwen3.8-27B NVFP4, behind our gateway (hosted) or called directly (self-host)."}],"tools":[{"name":"FFmpeg","url":"https://ffmpeg.org","license":"LGPL-2.1+ / GPL for some builds","purpose":"Cuts, camera moves, labels, the end card, and measuring the cuts back from the pixels."},{"name":"c2pa-python","url":"https://github.com/contentauth/c2pa-python","license":"MIT OR Apache-2.0","purpose":"The C2PA content credential on every export."},{"name":"ComfyUI","url":"https://github.com/comfyanonymous/ComfyUI","license":"GPL-3.0","purpose":"Runs the FLUX.2 klein storyboard graph for the studio worker."},{"name":"EU AI Act, Regulation (EU) 2024/1689 (Art. 50)","url":"https://eur-lex.europa.eu/eli/reg/2024/1689/oj","license":"EU law (EUR-Lex)","purpose":"Primary source for the machine-readable marking duty the C2PA credential answers."}],"hardware":[{"tier":"1x RTX PRO 6000 Blackwell 96 GB, shared","fits":true,"notes":"Measured on our server 2026-09-29: storyboard stills on GPU0 beside other services; MiniMax H3 shots in a GPU window with the speech and translation servers paused (peak 49.6-52 GiB); the text model on GPU1."},{"tier":"1x 24-32 GB card","fits":null,"notes":"Not tested. The storyboard path (FLUX.2 klein, about 6 GB) should fit with a remote text model; MiniMax H3 does not."}],"latency":[{"lane":"First picture drawn (shown once every picture is checked)","typical_ms":12100,"source":"measured on our server 2026-09-29: 12-20 s over 3 runs"},{"lane":"Storyboard video done (10 shots, 40 s)","typical_ms":88220,"source":"measured on our server 2026-09-29: 86-105 s (p50 88.2 s)"},{"lane":"One MiniMax H3 moving shot (sketch tier)","typical_ms":61000,"source":"measured on our server 2026-09-29 in a GPU window: 57-65 s with one reference"}],"benchmark":null,"notes":["Moving MiniMax H3 shots need a render GPU, which is switched on at launch; until then each shot is a drawn still with a camera move, cut on the beat.","No lip-sync to the vocal yet."]},"buyer_facts":[{"label":"Data retention","value":"The consent clip, face references, track and videos stay in your private Studio project until you delete it or the performer takes consent back with their own link (which deletes their references and videos). The consent entry expires after one year. Logs hold ids, counts and hashes."},{"label":"What leaves the box","value":"On the hosted route, speech, the text model and renders run on Decosa's hosted service. Self-hosted, nothing leaves your machine."},{"label":"Whose face","value":"Only your face, from your own live consent clip, adults only. There is no photo upload anywhere, so it can't be pointed at someone else."},{"label":"Cost per video","value":"A few cents per storyboard video in the eval; a moving MiniMax H3 shot costs a few cents of GPU time."},{"label":"Typical time","value":"Every picture is checked before you see it, so the shots appear together with the storyboard video, a minute or two after you start (measured); each moving H3 shot takes about a minute more."},{"label":"Outputs","value":"MP4s in 16:9 and 9:16 and a Spotify Canvas loop, with an AI video label on every frame, an end card crediting the music and a C2PA credential; private share links you can turn off."}],"hosted_now":{"needs":["qwen3.8-27b","studio-renders"],"off":["studio-renders"],"live_by_default":false,"live_status":"https://api.decosa.ai/status"},"data_handling":{"page":"/data#music-video-starring-you","self_host":{"level":"confidential","leaves":"nothing","summary":"Runs on your machine; nothing is sent to Decosa or a third party by default."},"hosted":{"level":"operator-processed","demo_only":false,"summary":"TLS to Decosa's server, then decrypted and processed by Decosa's API server, with the open models run by NEAR AI through OpenRouter, with Reka AI as the only fallback under Decosa's account.","gpus":"operator-contracted","third_parties":[],"retention":"The consent clip, face references, track and videos stay in your private Studio project until you delete it or the performer takes consent back with their own link (which deletes their references and videos). The consent entry expires after one year. Logs hold ids, counts and hashes.","used_for_training":false,"encrypted_while_processed":false},"sealed_tier":{"applies":false,"note":"The sealed tier (raw chat only, never use-case pipelines) is paused at launch (/docs/sealed-tier)."},"external_calls":[]},"console":{"href":"/apps/music-video-starring-you","input":"starring","lanes":[{"id":"beats","title":"Beats and sections","kind":"list"},{"id":"shots","title":"Shot list","kind":"list"},{"id":"exports","title":"Exports","kind":"list"}],"samples":[{"n":1,"id":"artist","title":"Artist","deep_link":"/apps/music-video-starring-you?sample=1&autorun=0"}],"deep_link_params":{"sample":"1-based index into samples, or a sample id","autorun":"1 = start the run once the sample is loaded; 0 (default) = only preselect","reduce-motion":"1 = turn off animations"}},"api":{"base":"https://api.decosa.ai","contract":"/api/contract.json","contract_markdown":"/api/contract.md","reference":"/docs/api","keys":"/account/keys"},"prompts":{"hosted":"/prompts/music-video-starring-you-hosted.md","selfhost":"/prompts/music-video-starring-you-selfhost.md","assemble":"/prompts/music-video-starring-you-assemble.md","mac":null},"rehearsal":{"bundle":"/samples/music-video-starring-you.zip","bundle_url":"https://decosa.ai/samples/music-video-starring-you.zip","folder":"/samples/music-video-starring-you/","expected":"/samples/music-video-starring-you/expected.json","files":["/samples/music-video-starring-you/expected.json"],"bytes":1342,"checks":["moving H3 shots are refused while no render GPU is attached","the video finishes","the shot list has 10 shots","all 9 planned cuts are found on the beat in the file","no cut appears that wasn't planned","the worst cut is within 17 ms of the beat","no frame is flagged by the safety check","the 16:9 export carries a C2PA credential","the credits say the video is AI","every model call has a signed receipt"],"licence":"No local inputs. The sample performers are synthetic (designed faces and voices, no real person); the sample song was made with MiniMax-Music3 through music-gen-cleared and carries its licence certificate.","about":"A synthetic sample performer (an adult, consent clip on the server) and a sample song made with MiniMax-Music3. Asking for moving H3 shots while no render GPU is attached must be refused; the storyboard must finish with 10 shots, every planned cut found on the beat in the file, no frame flagged, and a C2PA credential on every export. About 1.5-2 minutes on a shared GPU.","run":{"containers":"docker compose exec api python scripts/rehearse.py music-video-starring-you","checkout":"python scripts/rehearse.py music-video-starring-you --bundle music-video-starring-you.zip --base-url http://127.0.0.1:8445","mac":".venv/bin/python scripts/rehearse.py music-video-starring-you"},"guidance":"Set up with a coding agent (we recommend Claude Code with Claude Opus 5.5; any capable coding agent works) on mock data only, run the rehearsal until every check passes, then run your own data locally yourself. Never give the agent real data during setup."},"hardware_fit":{"check":"/self-host/hardware?use=music-video-starring-you","data":"/api/hardware.json","tiers":[{"id":"standard","gpu_gb":68.7,"basis":"estimate","unknown":[]},{"id":"best","gpu_gb":52,"basis":"measured","unknown":[]}],"mac":null},"links":{"page":"/apps/music-video-starring-you","json":"/use-cases/music-video-starring-you.json","metrics":"/metrics/music-video-starring-you","console":"/apps/music-video-starring-you","console_sample":"/apps/music-video-starring-you?sample=1&autorun=0","stack":"/apps/music-video-starring-you#stack","try_live":"/apps/music-video-starring-you#live","watch":"/apps/music-video-starring-you#watch","build":"/apps/music-video-starring-you#build","self_host":"/apps/music-video-starring-you#self-host","prompts":{"hosted":"/prompts/music-video-starring-you-hosted.md","selfhost":"/prompts/music-video-starring-you-selfhost.md","assemble":"/prompts/music-video-starring-you-assemble.md","mac":null}}}