music-to-video

Generates beat-synced videos from music tracks using audio analysis and HTML compositions.

Updated Aug 25, 2026
One-click install
npx skills add https://github.com/Sergiotsk/Interstellar --skill music-to-video-sergiotsk
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: music-to-video
Source: https://github.com/Sergiotsk/Interstellar/tree/main/.agents/skills/music-to-video
Command: npx skills add https://github.com/Sergiotsk/Interstellar --skill music-to-video-sergiotsk

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires librosa, numpy, soundfile, ffmpeg, gsap, and includes scripts (resource) and references (resource) components.

What problem does it solve? Creating a video that is precisely synchronized to a music track normally requires manual beat-marking, timeline editing, and motion design work. This Skill automates that pipeline: it analyzes a music file once, cuts it into frames at real musical changes, plans per-frame visual treatments, and renders a final MP4 where every cut lands on the beat grid. ## Core Features & Use Cases - Deterministic beat analysis: A Python analyzer (librosa-based) produces a canonical audiomap.json with tempo, beat grid, drum classification, energy phases, rolls, silences, and key moments — no re-measuring by ear. - Structured multi-step workflow: Six gated steps (setup, analyze, skeleton, plan, build, assemble, render) with validation scripts and user approval checkpoints at the plan and render stages. - Template and motion-primitive catalogs: Per-frame groups are built from a local template catalog, free-composed motion primitives, or asset treatments (beat-cut, ken-burns, bg-under-text) for user-supplied images and videos. - Use Case: Give the Skill a high-energy music track and a mood brief; it generates the track analysis, plans a lyric video or kinetic promo, dispatches one sub-agent per frame to build HTML compositions, and renders a beat-synced MP4. ## Quick Start Use the music-to-video skill to turn my song file bgm.mp3 into a beat-synced kinetic promo video in landscape format.

Frequently Asked Questions about music-to-video

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I make a beat-synced video from a music file?▼

Provide a music file (or a video to extract audio from) and the Skill runs a six-step pipeline: analyze the track into audiomap.json, cut it into frames, plan visual treatments per frame, build each frame as an HTML composition, assemble index.html, and render the final MP4.

How to sync video cuts to music beats automatically?▼

The analyze-beatgrid.py script uses librosa to detect tempo, beat grids, onsets, drum hits, rolls, and energy phases, writing them to audiomap.json. Frame boundaries and cuts snap to these real audio anchors rather than being measured by ear.

Can I use my own images and videos in the generated video?▼

Yes. User-supplied media is staged into the project's assets directory with stage-assets.mjs and woven onto the same beat grid using asset treatments: beat_cut on rhythmic frames, ken_burns on calm frames, or bg_under_text behind typography.

Does beat detection work on calm or ambient music?▼

The beat grid is reliable only on genuinely rhythmic music. On calm tracks the analyzer's bpm is treated as an imposed metronome, and frames use phrase_flow pacing driven by phrases and energy envelopes instead of hard beat cuts.

What dependencies are required to run the audio analysis?▼

The analyzer requires Python 3 with librosa, numpy, and soundfile installed, plus ffmpeg on PATH for decoding audio. The build and assembly steps require Node.js and the hyperframes CLI.

What video formats and aspect ratios are supported?▼

Output is an MP4 rendered via the hyperframes CLI. Supported canvases are landscape 1920x1080 (default), portrait 1080x1920, and square 1080x1080, set once in the storyboard frontmatter.