Eine aufgezeichnete Demo in einen bearbeitbaren Take migrieren
Du verwandelst eine FERTIGE Videodatei in einen vosso Take: ein Dokument, dessen Zooms, Trims, Geschwindigkeit und Ebenen Daten sind, mit Versionshistorie gehostet und im Studio bearbeitbar. Was die Datei durch ihre Fremdheit verliert, ist eine Ehrlichkeit, die du tragen musst: Sie hat KEINE Cursor-Spur, also kann nichts automatisch gezoomt werden, und der Digest sieht wenig – deine Augen sind das Kontaktblatt, und jeder Zoom wird per Auge gesetzt.
Zwei Wege:
- Der menschliche Weg: Ziehe die Datei auf https://vos.so/studio – sie wird als Browser-Recorder-Form abgelegt und öffnet sich direkt im Take-Editor. Wenn ein Mensch anwesend ist, ist dies der kürzeste Weg; gib ihm den Link.
- Der Agenten-Weg (dieses Skill): Baue das Take-Verzeichnis selbst und führe die normale Pipeline aus. Unten ist der vollständige Ablauf bewiesen.
1. Die Quelle untersuchen
ffprobe -v quiet -print_format json -show_streams -show_format demo.mp4
Merke: Breite, Höhe, Dauer, fps, ob ein Audiostream existiert. Ein Loom/Screen Studio-Export ist typischerweise 1080p H.264 mit der Kamera-Blase und allen Edits EINGEBRANNT – sie migrieren als Pixel, nicht als Ebenen. Sage das bei der Übergabe: Die Migration macht die Datei ab hier bearbeitbar, sie entfernt keine alten Edits.
2. Das Take-Verzeichnis erstellen
mkdir take
ffmpeg -i demo.mp4 -c:v libvpx-vp9 -crf 34 -b:v 0 -row-mt 1 \
-c:a libopus take/recording.webm # -c:a weglassen, wenn kein Audiostream
Dann schreibe take/meta.json aus der Untersuchung (jedes Feld erforderlich;
Zeiten in ms; producer: "migrated" kennzeichnet die Herkunft):
{
"producer": "migrated",
"dpr": 1, "zoom": 1,
"t0": 0,
"durationMs": 36766,
"width": 1920, "height": 1080,
"fps": 30,
"hasAudio": false
}
t0 kann jede beliebige Epoche in ms sein; width/height sind die Videopixel
(es gab keinen Browser-Viewport). Setze hasAudio nur auf true, wenn das Webm
tatsächlich die Tonspur enthält.
3. Planen – und ehrlich sehen
vos plan take --fresh # baut doc.json; cursorKept false, zoomAuto 0
vos frames take --times 0,10%,25%,50%,75%,90%,100% # das Kontaktblatt IST deine Augen
vos digest take # läuft, aber erwarte wenig: Kopf/Schwanz und nur
# harte Szenenschnitte – keine Klicks, keine Tippen, keine Verweildauern
Kein Auto-Zoom ist möglich und keiner sollte vorgetäuscht werden. Lies die Standbilder, finde die 2–4 wichtigen Momente und schreibe manuelle Spans per Auge:
# doc.json - jeder Span, den du hinzufügst, trägt "source": "manual"
# zoom: [{ "id": "m1", "in": 10.5, "out": 14.0, "level": 1.6,
# "cx": 0.52, "cy": 0.35, "source": "manual" }]
# segments: schneide tote Anfänge/Enden ab; speed: nur wo das Material wirklich stillsteht
Setze export.resolution auf DAS MATERIAL (eine 1080p-Quelle ist 1080p –
Migration fügt keine Pixel hinzu). vos validate take muss bestehen;
Stichprobe mit vos render take check.webm --range a..b --draft.
4. Pushen – die alte Demo wird ein lebendiges Dokument
vos push take --folder <projekt> --label "migriert von <quelle>" \
--note "<was es zeigt; dass alte Edits eingebrannt sind; was du neu geschnitten hast>"
Ende in der Schleife: Die Watch-Seite spielt es ab, das Studio bearbeitet
jeden geschriebenen Span plus alles, was die Datei nie hatte (Hintergründe,
Textebenen, Geschwindigkeit), und vos pull holt menschliche Edits zurück.
Die Botschaft gehört in die Übergabe, in einem Satz: Dies ist die letzte
Demo, die du blind schneidest – nimm die nächste mit vos record auf, und
die Kamera plant sich selbst.
Ehrliche Grenzen (sprich sie aus, übermale sie nie)
- Keine Cursor-Spur ⇒ kein Auto-Zoom, keine Klick-Effekte, keine Tipp-Zooms und kein Framing-Lint – jeder Zoom ist deiner, per Auge, und du sagst es.
- Alte Edits, Kamerabläufe und Untertitel sind eingebrannte Pixel.
- Die Migration kodiert einmalig neu (VP9); eine schlecht komprimierte Quelle bleibt schlecht komprimiert – Migration stellt keine Qualität wieder her.
- Eine spezifikationsgemäße Lieferleiter (Store-Stills, Poster) funktioniert
mit dem migrierten Take genauso wie mit einem nativen – das
launch-kit-Skill übernimmt, wenn die Anfrage eine Veröffentlichung ist.