Communitygithub.com

scorewright

Komponiere und produziere eine originale Filmmusik für ein Video – analysiere das Video, wähle eine musikalische Identität (Genre, Tonart/Modus, BPM, Instrumente, Leitmotiv), erstelle eine score.json, rendere echte Instrumente (FluidSynth + GeneralUser GS Samples, Audio-als-Code-Synths, Sounddesign), mische sie unter der Erzählung (Ducking + Sprachsenke, X LU unter der Stimme) und liefere Stems, MIDI, Vorschauen und Qualitätskontrolle aus. Verwende für „Vertone dieses Video“, „Komponiere Musik für“, „Hintergrundmusik für meinen Kurzfilm“, „scorewright“, „Mach einen Soundtrack“.

Was ist scorewright?

Scorewright ist ein Skill für KI-Agenten (z. B. Claude Code, Cursor, Codex), der es ihnen ermöglicht, für ein beliebiges Video eine vollständige Original-Filmmusik zu komponieren und zu produzieren. Der Skill analysiert das Video (Schnitte, Sprachregionen, zeitlich abgestimmte Wörter), erstellt eine musikalische Identität (Genre, Tonart, BPM, Instrumente, Leitmotiv) und schreibt eine strukturierte `score.json`-Datei. Die Wiedergabe erfolgt über FluidSynth mit dem GeneralUser GS SoundFont für realistische Instrumente sowie über Audio-als-Code-Synths und Sounddesign-Elemente. Der Skill unterstützt sowohl kontinuierliche Erzähl-Beds als auch filmische Scores mit melodischen Abschnitten, die in Sprachpausen vorkommen. Der gesamte Workflow umfasst Analyse, Spotten, Schreiben der Partitur, Rendern, Qualitätskontrolle (QC) mit Spektrogramm und Metrik-Prüfungen sowie die Ausgabe von Stereo-Mix, Stems, MIDI und Vorschau-Dateien. Bekannte Einschränkungen sind die Echtzeitnähe von GeneralUser GS im Vergleich zu professionellen Sample-Bibliotheken und die Geschwindigkeit der Audio-als-Code-Synthese.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/jayaprakash-pixel/scorewright/tree/HEAD

In Ihrer bevorzugten KI fragen

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

Dokumentation

Scorewright – Claude komponiert, die Werkzeuge rendern

Regel Null: Claude trifft jede kreative Entscheidung in score.json und notiert den Grund (direction, Cue why). Das Skript hat keinen Standard-Stil, kein Standard-BPM, keine Standard-Tonart oder -Progression. Verwende niemals die letzte Partitur als Vorlage; beginne stets mit dem Video.

PY = ein Python 3.10+ mit installierter requirements.txt. SW = <dieser Ordner>/scripts/scorewright.py. Führe vor dem ersten Rendern auf einem Rechner PY SW doctor aus. Wenn MISSING ausgegeben wird, folge der README.md > Installation, stoppe dann und informiere den Benutzer.

Arbeitsablauf (SCHNELLSTART)

#SchrittBefehl / AktionErledigt, wenn …
0ÜberprüfungPY SW doctor„ready“ ausgegeben wird
1FaktenPY SW analyze <video> <work> --words <words.json> (oder --voice)facts.json (Dauer, Schnitte, Sprachregionen, zeitlich abgestimmte Wörter) + contact.jpg
2AnschauenLese contact.jpg (Kachel i = t i*step) und die zeitlich abgestimmten Wörter; lies das Skript/Storyboard, falls vorhandenDu kannst Botschaft, Zuschauergefühl, emotionalen Bogen benennen
3SpottenSchreibe eine Spottabelle: Cue in/out, Trefferpunkte (Wortzeitpunkte, Enthüllungen, Wendungen), wo Stille besser ist, Emotion pro Abschnitt (dominant + sekundär + Intensität)Jeder Cue-Start/Treffer ist eine gemessene Zeit
4RichtungWähle Identität mit Begründung: Genre-Mischung, Tonart/Modus, BPM pro Cue, Palette, Leitmotiv (+ wie es sich transformiert), dynamischer Bogen. Verwende references/craft.mdIn direction geschrieben
5PartiturSchreibe score.json (references/score-format.md, Beispiel examples/bed_demo.json). Beginne jeden Cue AUF seinem Trefferpunkt; verwende s:<sek> um Noten auf Wörter zu setzen; PY SW fit <times> nur um ein Tempo innerhalb eines Cues zu testenGültiges JSON
6RendernPY SW render score.json <out>Stems, full, no_percussion, composition.mid, Vorschauen, SCORE_NOTES.md, qc.json, Spektrogramm.png
7QualitätskontrolleLese qc.json + spektrogramm.png; korrigiere und rendere erneut (neuer Ausgabeordner pro Version)Alle checks wahr; jeder Treffer rise_db >= 3; keine unbeabsichtigten Stille
8AnhörenDer Benutzer hört preview_with_voice.mp3. Claude kann nicht hören: sag das, berichte die Zahlen, frage, was geändert werden sollBenutzer genehmigt
9LiefernÜbergebe full_soundtrack.wav (bereits X LU unter der Rohstimme, bei 0 dB eingefügt) oder die Stems an den Editor des Benutzers–

ERSTE ENTSCHEIDUNG: Bed oder Score

  • Erklärvideo / erzähltes Video (Sprache fast durchgehend) = BED. Keine Melodie, kein Leitmotiv, keine Melodie unter Sprache. Verwende Puls, Textur, langsame Harmonien, nur Subbass. Energiewechsel an Abschnittsgrenzen; 2–3 Treffer/Ausblendungen bei echten Enthüllungen; Identität kommt von Klangfarbe/Rhythmus, nicht von einer Melodie. Eine kurze Melodie nur dort, wo KEINE Sprache ist (Intro vor dem ersten Wort, letzte 1–2 s nach dem letzten Wort).
  • Film / Dokumentation mit echten sprachfreien Abschnitten = SCORE. Leitmotiv und Melodie leben in diesen Lücken.
  • Eine Melodie unter einer Erklärung ist eine zweite Stimme: Der Zuschauer muss wählen, und die Erklärung verliert.

TUN

  • Stille, Zurückhaltung und Kontrast sind Werkzeuge. Nicht jedes Video braucht überall Musik.
  • Ein Leitmotiv pro Kernidee; entwickle es (umkehren, augmentieren, reharmonisieren, einen Ton ändern) an Wendepunkten der Geschichte.
  • Reduziere die Dichte unter dichter Erklärung; lass Musik in Sprachpausen und bei rein visuellen Momenten sprechen.
  • Engine-Wahl pro Spur: gm für akustische Authentizität (Klavier, Streicher, Blechbläser, Holzbläser, Chor, Schlagwerk), aac für Synthesizer / sounddesignartige Klänge (langsam: ~10× gm; verwende für wenige, spärliche Spuren; optional), sfx für Impakte/Swells/Sub-Drops an Trefferpunkten.
  • Bed bed_lu_under_voice 11 (energetisch) bis 12.6 (ruhig), gemessen in Sprachregionen - das Skript setzt es exakt.
  • Neue Version = neuer Ausgabeordner; überschreibe niemals eine genehmigte Wiedergabe.

NICHT TUN

  • Keine Schwirr-/Woosh-/Blättergeräusche. riser/swell sind tonale Swells, verwende sie sparsam.
  • Keine kopierten Melodien, erkennbaren Themen oder Referenz-Track-Arrangements.
  • Kein gleiches BPM/Tonart/Progression für jedes Video; keine Lautstärke als Ersatz für Emotion.
  • Keine SFX ohne visuellen oder erzählerischen Grund; keine SFX lauter als die Erzählung.

Bekannte Grenzen (getestet)

  • GM SoundFont Orchester = gute Demo, nicht Spitfire/Kontakt-Realismus. Soloklavier, Pads, Zupfer, Pizzicato und Synthesizer halten am besten stand.
  • Ein Tempo pro Cue (Tempowechsel = neuer Cue). composition.mid verwendet absolute Zeit mit dem Tempo des ersten Cues.
  • Audio-als-Code-Rendering ist langsam (reines AAC-76-s-Score: etwa 8 min auf einem Ryzen 5 5600H; gemischter Score: etwa 50 s).
  • Claude kann nicht hören; QC-Zahlen + Spektrogramm + Benutzerohren sind die Schleife.

Verwandte Skills