Communitygithub.com

OliviaPp8/minara-video-skills

Generiert Hintergrundmusik und synchronisierte Soundeffekte für Minara-Videos basierend auf dem Sekunden-Skript. Übersetzt jede Szene in ein Cue-Sheet und rendert BGM + SFX lokal (numpy-Synthese, kein externer Dienst), mit optionaler Ducking-Unterdrückung unter dem Voiceover.

Was ist minara-video-skills?

Dieses Skill generiert automatisch Hintergrundmusik (BGM) und bildsynchrone Soundeffekte für Minara-Videos, basierend auf einem detaillierten Sekunden-Skript. Es analysiert die Stimmung jeder Szene und die sichtbaren Aktionen (Taps, Tippen, Erfolge, Benachrichtigungen, Übergänge) und erstellt daraus ein Cue-Sheet (`cues.json`). Die Audio-Synthese erfolgt vollständig lokal mit numpy, ohne externe Dienste, und ist deterministisch – gleiche Cues und Seeds erzeugen immer das gleiche Audio. Das Skill unterstützt verschiedene Energiestufen (von 'silent' bis 'climax') und eine Vielzahl von Soundeffekten (z.B. Tap, Typing, Success). Es kann optional ein Ducking anwenden, um die Musik unter einem Voiceover abzusenken. Dieses Tool eignet sich ideal für Entwickler und Video-Ersteller, die Minara-Anleitungs- oder Produktvideos mit einer professionellen, aber ressourcenschonenden Audiospur versehen möchten, und ist auf allen Plattformen nutzbar, die Python und die Minara-Toolchain unterstützen.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/OliviaPp8/minara-video-skills/tree/HEAD/skills/minara-music

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

/minara-music — Musik + Soundeffekte aus dem Skript generieren

Wandle das Sekunden-Skript des Videos in ein Musik-Cue-Sheet (cues.json) um und synthetisiere dann BGM und bildsynchronisierte Soundeffekte lokal. Die Synthese erfolgt rein mit numpy und die Ausgabe ist deterministisch (gleiche Cues + Seed erzeugen immer das gleiche Audio). Es werden keine externen Dienste aufgerufen und es entstehen keine Kosten.

Quelle: Der Scoring-Ansatz aus dem Minara V2 Launch-Film, generalisiert in ein wiederverwendbares Skript; examples/v2-launch.json ist das Cue-Sheet dieses Films.

Workflow (in dieser Reihenfolge)

  1. Skript lesen: Das Sekunden-Skript aus dem Minara-Video (oder dem Storyboard / Voiceover-Timing-Blatt) holen. Wenn das Skript Spalten für "Sound-Atmosphäre" oder "Musik" hat, diesen folgen; wenn nicht, die Stimmung des Bildes beurteilen.
  2. Cue-Sheet schreiben: Im audio-src/cues.json des Projekts folgendes notieren:
    • duration (= finale Videolänge), bpm (Standard 120), key (Standard A minor; für helle/feierliche Stücke kann C major verwendet werden), seed.
    • sections: Das Skript in Musikabschnitte unterteilen, einen energy-Wert pro Abschnitt auswählen und mit note das passende Bild beschreiben (zur einfachen Querverweisung).
    • sfx: Jede sichtbare Aktion im Skript (Tap, Tippen, Auftrag erledigt, Pop-up-Benachrichtigung, Übergang, Schloss-Landung) bekommt einen Soundeffekt, zeitlich auf die Sekunde im Skript abgestimmt.
  3. Dem Operator das Blatt zuerst zeigen; noch nicht rendern: In Markdown-Tabellen "Zeitraum / Energie / passendes Bild" und "SFX-Zeit / Typ / passende Aktion" auflisten und auf OK warten bevor gerendert wird. Der Operator bearbeitet das Blatt, nicht den Code.
  4. Rendern:
    python3 ~/.claude/skills/minara-music/scripts/make_music.py <projekt>/audio-src/cues.json -o <projekt>/assets [--vo <projekt>/assets/vo.wav]
    
  5. Selbstkontrolle: Das Skript gibt jeden Abschnitt aus; dann die Lautstärke pro Abschnitt messen, um zu bestätigen, dass der Höhepunkt am lautesten ist, Breakdown/Outro deutlich abfallen und das Ducking funktioniert. Bei Hörproblemen (zu voll, ein Soundeffekt stiehlt die Aufmerksamkeit) level / gain anpassen und erneut rendern; jeder Render-Vorgang dauert ein paar Sekunden.
  6. Ausliefern: Den Pfad zu bgm.wav (oder bgm-duck.wav) angeben und open -R verwenden, um preview-mix.wav hervorzuheben, damit zugehört werden kann. In HyperFrames als Audiospur hinzufügen, mit dem Voiceover auf einer separaten Spur.

Ausgabe

DateiInhalt
bgm.wavMusik + Soundeffekte, 48 kHz Stereo, -1 dBFS Peak, 0,4 s Einblendung am Anfang und 3,2 s Ausblendung am Ende
bgm-duck.wavWird generiert, wenn es ein Voiceover gibt: Musik wird um duck_db (Standard -8 dB) abgesenkt, wo Sprache vorkommt; Soundeffekte werden nicht abgesenkt
preview-mix.wavWird generiert, wenn es ein Voiceover gibt: Musik + Voiceover gemischt, nur zum Anhören, nicht für das finale Video

Energiestufen (energy section types)

energySoundVerwendung für
silentKeine MusikPausen, die absolute Stille benötigen
introTiefer Drone + weiches PadOpening, Logo, Datenkonvergenz
lightPad + leichtes Arpeggio + spärlicher BeatMobile Interaktionen, leichte Feature-Demos
buildFügt Bass und einen Kick auf jedem Beat hinzu, automatischer Riser am Ende des AbschnittsAllmählicher Aufbau, der zu einem Schlüsselmoment führt
fullVolles Schlagzeug + Clap + Bass + ArpeggioDurchgehende Präsentation von Kernfunktionen (Backtesting, Go-Live, Automatisierung)
breakdownEntfernt Drums und Bass, lässt nur Pad und ein weiches Arpeggio; der Kick kehrt im letzten Takt zurückSzenenwechsel, Abschnitte über Sicherheit/Datenschutz, die "durchatmen" müssen
climaxAm vollsten: volles Schlagzeug + Lead-Melodie + Crash am Abschnittsbeginn; fügt automatisch einen Riser hinzu, wenn der vorherige Abschnitt nicht build istProduktname / Launch-Claim erscheint
outroLöst sich auf dem Tonika-Akkord + Markenglocke auf und blendet mit dem gesamten Mix ausEndkarte, CTA

Jeder Abschnitt kann "level": 0.5–1.3 annehmen, um seine Lautstärke fein abzustimmen. Akkorde folgen globalen Akkordfolgen (moll i–VI–III–VII, dur I–V–vi–IV), sodass sie nicht über Abschnittsgrenzen hinweg brechen.

Soundeffekt-Typen (sfx)

TypSoundTypische AktionOptionale Parameter
tapKurzer KlickButton-Tap, Auswahlgain
typingDurchgehende TippgeräuscheTippen in ein Eingabefeldchars, cps (Zeichen/Sekunde, passend zur Bildschirmtippgeschwindigkeit)
successZwei aufsteigende GlockentöneAuftrag erledigt, Strategie läuftgain
notifyDreiton-AlarmPop-up-Benachrichtigung oder Erinnerunggain
bellEinzelner GlockentonAvatar/Logo erscheintnote (MIDI, Standard 81)
blipsKurze, aufsteigende TöneBacktest-Fortschritt, Daten ladencount, step (Sekunden), note
sparkleSchimmernde Körner + rauschiger AtemPartikel konvergieren, Openingdur
riserAufsteigendes RauschenManuell hinzugefügter Übergangsaufbaudur
whooshRückwärtssweepFenster schließen, Push/Pull-Übergangdur
thudTiefer EinschlagtonSchloss, Bestätigung, schwere Landunggain
crashBeckenExtra Akzentgain

Jeder Soundeffekt kann gain annehmen, um seine Lautstärke anzupassen.

Regeln

  • Soundeffekte folgen nur sichtbaren Aktionen: Wenn es keine passende Aktion auf dem Bildschirm gibt, wird kein Soundeffekt hinzugefügt – das gleiche Prinzip wie "füge keinen Text hinzu, ohne Grund".
  • Timings aus dem Skript kopieren; nicht schätzen: Der SFX-t verwendet die tatsächlichen Sekunden aus dem Sekunden-Skript / der Animations-Zeitleiste; cps für Tippen verwendet die Tippgeschwindigkeit in der Animation.
  • Wenn sich Länge oder Reihenfolge des Skripts ändern, zuerst cues.json aktualisieren und neu rendern; das Audio nicht manuell strecken.
  • Keine externen KI-Musikdienste oder aus dem Web heruntergeladene Tracks verwenden; wenn kommerziell lizenzierte Musik benötigt wird, stellt der Operator die Datei bereit.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

OliviaPp8/minara-video-skills

Create Minara product guide/tutorial videos from screen recordings supplied by the operator. Use for /minara-guide-video, “给录屏加字幕配音”, retiming a new recording cut, building a timeline approval player, or correcting caption/product meaning. Drives caption-recording from source analysis through pre-render approval, final verification, and local delivery. Not for synthetic HyperFrames marketing videos.

OliviaPp8/minara-video-skills

Make Minara use case / beginner tutorial videos (mobile App or desktop), rebuilding the product UI in HyperFrames code and walking through the real user path step by step. Unlike minara-video (marketing demo, UI redesign allowed), this skill requires a faithful UI: copy, layout, components, and interaction paths all follow the product frontend code and screen recordings. Triggers: "use case 视频", "教程视频", "操作演示", "新手教程", "按 App 界面做一个视频"; also makes covers for these videos ("封面", "cover", "缩略图").

OliviaPp8/minara-video-skills

Write Minara video scripts before any animation work — launch / promo films, single-scene supplements, use case tutorials. Turns a brief, product screenshots, frontend code, Figma frames or a feature note into an English-only script doc built around a keyframe sheet; each keyframe has a still image (rendered from UI code, exported from Figma, or AIGC-generated from screenshots), a picture description, the voiceover line, on-screen text (花字) with style, timing and duration, and the BGM style / sound cues. Also covers what each scene must land, user flow + UI copy, voiceover word budget and open questions, in a calm, neutral, natural voice. Then hands off to minara-video, minara-usecase-video and minara-music. Use for /minara-videoscript, "写视频脚本", "视频脚本", "分镜脚本", "关键帧", "关键帧脚本", "花字", "补充脚本", "旁白稿", "video script", "voiceover script", "keyframes".

OliviaPp8/minara-video-skills

The operator's standard workflow for making Minara marketing / launch / demo videos. Built on the hyperframes skill, with a stricter process - confirm style → high-level storyboard → copy → build each scene separately → confirm a per-second script → iterate on a local test page → render only once the user is satisfied.

Verwandte Skills