Was macht Clipper?
Lade ein Video hoch, und Claude findet die stärksten Momente und erstellt daraus kurze Clips mit Untertiteln, bereit zum Posten.
Alles läuft auf diesem Computer. Es wird nichts hochgeladen. Der Skill befindet sich in ~/.claude/skills/clipper/; seine Werkzeuge sind
scripts/transcribe.py und scripts/make_clips.py, ausgeführt mit dem eigenen Python des Skills: ~/.claude/skills/clipper/.venv/bin/python.
0. Installation prüfen (bei jedem Durchlauf)
test -x ~/.claude/skills/clipper/.venv/bin/python && command -v ffmpeg
Wenn etwas davon fehlt, teile dem Nutzer dies in einem Satz mit und führe das Installationsskript aus dem geklonten Repository aus (bash install.sh im Ordner clipper-skill). Wenn du den Ordner nicht finden kannst, klone ihn erneut:
git clone https://github.com/corbinsylk/clipper-skill && cd clipper-skill && bash install.sh.
1. Video erhalten
Der Nutzer zieht die Datei per Drag & Drop hinein oder gibt einen Pfad an. Wenn er beides nicht angibt, frage in einem Satz danach. Beide Skripte verwenden den Arbeitsordner <Video-Name>-clips/ neben dem Video, es sei denn, du übergibst einen anderen. Mögliche Einstellungen des Nutzers (ansonsten die Standardwerte verwenden, nie fragen):
| Einstellung | Standard |
|---|---|
| Anzahl der Clips | 3 bis 5, so viele wie wirklich stark sind |
| Cliplänge | 20 bis 60 Sekunden (Ziel: 30 bis 45) |
| Untertitelfarben | gebrochenes Weiß #F5F1EA, das gerade gesprochene Wort in Lehm #B03926 |
| Untertitel | an |
2. Transkribieren
~/.claude/skills/clipper/.venv/bin/python ~/.claude/skills/clipper/scripts/transcribe.py "<video>"
Es gibt zuerst den Arbeitsordner aus. Beim ersten Durchlauf wird das Spracherkennungsmodell einmal heruntergeladen (ca. 500 MB für small); ein 2-minütiges Video dauert etwa eine Minute, ein einstündiges mehrere Minuten. Bei Videolängen über etwa 10 Minuten führe den Befehl als Hintergrundbefehl aus (in Claude Code: das Bash-Tool run_in_background) und teile dem Nutzer mit, dass es arbeitet. Bei starkem Akzent oder schlechter Audioqualität füge --model medium hinzu. Eine Warnung über einen HF-Token oder ein Geschwindigkeitstipp beim ersten Start ist harmlos.
3. Momente auswählen (das ist deine Aufgabe, nicht die eines Skripts)
Lies <Arbeitsordner>/transcript.md vollständig. Wähle die 3 bis 5 stärksten Momente aus. Ein starker Moment:
- Beginnt mit einem Haken im ersten Satz. Eine kühne Behauptung, eine überraschende Zahl, eine Frage, ein Fehler, der Beginn einer Geschichte. Beginne niemals mit „also“, „und“, „ähm“, „wie ich schon sagte“ oder einem Satz, der vorherigen Kontext benötigt.
- Steht für sich allein. Jemand, der das gesamte Video nie gesehen hat, versteht ihn. Kein „das“, „dieses Ding“ oder „wie erwähnt“, das auf etwas außerhalb des Clips verweist.
- Zahlt sich aus. Er endet mit der Antwort, dem Pointen, dem Ergebnis oder der Lektion: ein abgeschlossener Gedanke, niemals mitten im Satz.
- Hat Energie. Meinungen, Details, Zahlen, Emotionen, eine Wendung. Überspringe Begrüßungen, Sponsoren-Lesungen, organisatorische Dinge und langsame Einleitungen.
- Wiederholt keine andere Auswahl. Jeder Clip macht einen anderen Punkt, und die Clips überschneiden sich zeitlich nie. Ein kurzes Video ergibt weniger Clips: unter ca. 5 Minuten sind 1 bis 3 Clips normal; dehne oder überschneide dich nie, um eine Zahl zu erreichen.
Bewerte jeden mit 1 bis 10 (Haken, Eigenständigkeit, Auszahlung, Energie zusammen). Behalte nur die mit einer Bewertung von 7 oder mehr; wenn weniger als 3 diese erreichen, behalte die besten 3 und sage, dass sie schwächer sind. Schreibe dann <Arbeitsordner>/moments.json:
[
{"titel": "Kurzer Titel für die Datei", "start": 63.2, "end": 101.8, "bewertung": 9,
"haken": "der erste Satz des Clips, Wort für Wort",
"warum": "ein Satz: warum dieser Moment funktioniert",
"caption": "eine fertige Post-Caption: eine Hakenzeile, dann 2-3 kurze Zeilen, dann eine Frage oder ein Call-to-Action"}
]
start und end sind Sekunden vom Beginn des Videos (Transkriptzeiten sind Minuten:Sekunden, also 01:03.2 = 63.2).
<Arbeitsordner>/words.json enthält jedes Wort mit seinem genauen Start (s) und Ende (e): lies es, um die Grenzen zu setzen. Setze start auf das s des ersten Worts des Hakens und end auf das e des letzten Worts der Auszahlung. Das Skript behält die Wörter von start bis end (0,05 s Toleranz) und greift nie auf das Wort davor oder danach zu. Um ein Wort wie „Also“ wegzulassen, setze start auf das s des nächsten Worts.
4. Clips erstellen
~/.claude/skills/clipper/.venv/bin/python ~/.claude/skills/clipper/scripts/make_clips.py "<video>"
Füge --text-color "#FFFFFF" --active-color "#FFD400" für andere Untertitelfarben hinzu, oder --no-captions. Es dauert etwa eine Minute pro Clip.
Jeder Clip: auf Wortgrenzen geschnitten, auf 1080x1920 neu gerahmt (ein breites Video wird um das Gesicht des Sprechers beschnitten; jede Strecke von einer Sekunde oder länger ohne Gesicht, wie eine Grafik, ein Bildschirm oder B-Roll, wird als Ganzes auf einem unscharfen Hintergrund gezeigt, anstatt abgeschnitten zu werden; ein vertikales Video wird ganz gelassen), Untertitel drei Wörter auf einmal mit Hervorhebung des gesprochenen Wortes, Ton auf -14 LUFS normalisiert.
5. Prüfen vor der Übergabe
Öffne jedes clips/NN-*.jpg: jedes zeigt einen Streifen von 8 Bildern über den gesamten Clip. Betrachte sie alle:
- Das Gesicht ist im Bild und die Untertitel sind lesbar, unter dem Kinn, auf jedem Sprechbild.
- Das Video hat bereits eingebrannte Untertitel (du siehst zwei Wortgruppen): erstelle alle Clips mit
--no-captionsneu. - Das Skript gibt „face in X/Y checks“ pro Clip aus. Wenn X 0 ist, gibt es kein Gesicht zum Rahmensetzen (eine Bildschirmaufnahme, Folien): Der Clip ist zentriert, also sag das im Bericht. Bilder ohne Gesicht sind bei einem bearbeiteten Video zu erwarten; sie sind die Schnitte, die als Ganzes gezeigt werden.
- Wenn ein Clip mitten im Wort oder mitten im Gedanken beginnt oder endet, korrigiere
start/endin moments.json und erstelle nur diesen Clip mit--only Nneu.
6. Bericht
Eine kurze Liste: Datei, Länge, Bewertung und Grund für jeden Clip, plus seine Post-Caption. Verweise sie auf clips/scores.md (alles in einer Datei) und den Ordner clips/. Biete einen nächsten Schritt an: andere Momente, andere Untertitelfarben oder längere/kürzere Clips.