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)
| # | Schritt | Befehl / Aktion | Erledigt, wenn … |
|---|---|---|---|
| 0 | Überprüfung | PY SW doctor | „ready“ ausgegeben wird |
| 1 | Fakten | PY SW analyze <video> <work> --words <words.json> (oder --voice) | facts.json (Dauer, Schnitte, Sprachregionen, zeitlich abgestimmte Wörter) + contact.jpg |
| 2 | Anschauen | Lese contact.jpg (Kachel i = t i*step) und die zeitlich abgestimmten Wörter; lies das Skript/Storyboard, falls vorhanden | Du kannst Botschaft, Zuschauergefühl, emotionalen Bogen benennen |
| 3 | Spotten | Schreibe 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 |
| 4 | Richtung | Wähle Identität mit Begründung: Genre-Mischung, Tonart/Modus, BPM pro Cue, Palette, Leitmotiv (+ wie es sich transformiert), dynamischer Bogen. Verwende references/craft.md | In direction geschrieben |
| 5 | Partitur | Schreibe 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 testen | Gültiges JSON |
| 6 | Rendern | PY SW render score.json <out> | Stems, full, no_percussion, composition.mid, Vorschauen, SCORE_NOTES.md, qc.json, Spektrogramm.png |
| 7 | Qualitätskontrolle | Lese qc.json + spektrogramm.png; korrigiere und rendere erneut (neuer Ausgabeordner pro Version) | Alle checks wahr; jeder Treffer rise_db >= 3; keine unbeabsichtigten Stille |
| 8 | Anhören | Der Benutzer hört preview_with_voice.mp3. Claude kann nicht hören: sag das, berichte die Zahlen, frage, was geändert werden soll | Benutzer genehmigt |
| 9 | Liefern | Ü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:
gmfür akustische Authentizität (Klavier, Streicher, Blechbläser, Holzbläser, Chor, Schlagwerk),aacfür Synthesizer / sounddesignartige Klänge (langsam: ~10× gm; verwende für wenige, spärliche Spuren; optional),sfxfür Impakte/Swells/Sub-Drops an Trefferpunkten. - Bed
bed_lu_under_voice11 (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/swellsind 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.