Communitygithub.com

JustinChenzeting/Lecture-notes-to-videos

Verwandle Vorlesungsnotizen (getippte oder handschriftliche PDFs, Scans, Handyfotos, Markdown) in ein vertontes Vorlesungsvideo (MP4) mit sauberen wissenschaftlichen Folien, Schritt-für-Schritt-Animationen, einem natürlichen britischen Sprecher und prüfungsähnlichen Zwischenfragen.

Was ist Lecture-notes-to-videos?

Dieses Skill wandelt verschiedene Arten von Vorlesungsnotizen (getippt, handschriftlich, PDF, Bild, Markdown) automatisch in ein fertiges MP4-Video um, das wie eine professionelle Vorlesung wirkt. Es ist für Entwickler und Power-User konzipiert, die Lehrmaterialien schnell und wiederholt in Videoformat bringen müssen, ohne manuelle Skript- oder Schnittarbeit. Der Skill erstellt eine LaTeX-Beamer-Datei, die Folien, Diagramme und den Sprechertext enthält, und verwendet dann ein automatisiertes Pipeline-Skript (`lv.py`), um LaTeX in PNG-Folien zu kompilieren, Text-to-Speech mit einer britischen Stimme zu generieren und alles mit ffmpeg zu einem MP4 zusammenzufügen. Besondere Merkmale sind das Einfügen von prüfungsähnlichen Checkpoint-Fragen mit Countdown, die Verwendung von Overlays für schrittweise Animationen, die automatische Erkennung und Einbindung handschriftlicher Notizen sowie eine automatische Fehlerbehebung bei der Installation (Python, LaTeX, ffmpeg und Offline-Stimmen). Der Workflow ist vollständig automatisierbar: Ein Befehl installiert alle Abhängigkeiten, ein anderer initialisiert ein Projekt, ein dritter rendert das Video. Der Skill ist plattformunabhängig (macOS, Linux, Windows) und erfordert keine Administratorrechte. Die Ausgabe enthält automatisch Untertitel (SRT/VTT) und ermöglicht einfache Korrekturen durch erneutes Rendern nur geänderter Zeilen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add JustinChenzeting/Lecture-notes-to-videos

In Ihrer bevorzugten KI fragen

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

Dokumentation

Vorlesungsnotizen → vertonte Vorlesung als Video

Sie schreiben genau eine Datei: eine Beamer lecture.tex-Datei, die Folien, Diagramme und Vertonung enthält. Die gebündelten Skripte erledigen alles andere (Installation, LaTeX → PNG-Seiten → Text-to-Speech → ffmpeg → MP4). Der Aufwand entspricht etwa einer langen Antwort pro Vorlesung, und spätere Änderungen synthetisieren nur die geänderten Zeilen neu.

Schnellstart: Die gesamte Pipeline

Jeder Schritt ist ein Befehl: python3 <skill-verzeichnis>/scripts/lv.py <befehl>, wobei <skill-verzeichnis> der absolute Pfad des Ordners ist, der diese Datei enthält (unter Windows verwenden Sie py -3 statt python3). Im Folgenden steht lv als Abkürzung für den gesamten Befehl; schreiben Sie ihn jedes Mal vollständig aus, da Shell-Variablen zwischen Ihren Befehlen normalerweise nicht bestehen bleiben.

lv setup                           # 0. einmalige Installation; geben Sie ein 10-minütiges Timeout oder führen Sie es im Hintergrund aus
lv init PHYS101-L05                # 1. gibt das Arbeitsverzeichnis (WORK) aus und kopiert die Vorlage hinein
lv ingest notes.pdf --out WORK     #    beliebige Kombination von .pdf .png .jpg .heic .md .txt; mehrere Dateien sind in Ordnung
#                                       Notizen lesen (§1), planen (§2), WORK/lecture.tex schreiben (§3-4)
lv check WORK/lecture.tex          # 2. kompilieren + nummerierte Kontaktbögen + Layout-Warnungen, kein Audio
lv render WORK/lecture.tex         # 3. -> WORK/PHYS101-L05.mp4 (oder einen Ausgabepfad angeben)
  • Schritt 0 installiert alles (uv, eine private Python 3.12, TinyTeX nur wenn keine funktionierende LaTeX-Installation existiert, ffmpeg, Kokoro-Stimmen) in einem benutzerspezifischen Cache: etwa 3 Minuten bei schneller Verbindung, bis zu 10 bei langsamer, ohne Administratorrechte. Der Vorgang ist idempotent: Wenn er bereits abgeschlossen ist, ist er in Sekunden erledigt. Wird er unterbrochen, wird er beim erneuten Ausführen fortgesetzt. Teilen Sie dem Benutzer mit, dass es sich um eine einmalige Installation handelt. Er endet mit einer Zeile, die mit [setup] READY beginnt; jedes andere Ende ist ein Fehler mit einer Lösung in der Nachricht oder in Referenzen/fehlerbehebung.md. lv doctor zeigt an, was installiert ist, ohne etwas zu ändern. Die anderen Befehle führen das Setup auch aus, wenn es fehlt.
  • Führen Sie die Pipeline von Anfang bis Ende aus, ohne bei jedem Schritt um Bestätigung zu fragen. Halten Sie nur bei echten Hindernissen an: Notizen, die Sie nicht öffnen oder lesen können, einem Setup-Schritt, der ein Administratorkennwort erfordert, oder einer Anfrage, die in einer Weise mehrdeutig ist, die das Video verändert.
  • WORK standardmäßig ./lecture-videos/<name> (oder das konfigurierte work_root des Benutzers). Platzieren Sie das MP4 dort, wo der Benutzer es wünscht; andernfalls ist der Standard in WORK in Ordnung. Behalten Sie WORK: die .tex-Datei, das Transkript und der Audio-Cache machen spätere Änderungen günstig.

1. Lesen Sie die Notizen zuerst selbst

ingest schreibt WORK/source.txt (Seiten mit einer Textebene), WORK/manifest.tsv (wie jede Seite gelesen wurde), vollformatige Bilder von Seiten, die visuelle Überprüfung benötigen (WORK/pages/), und Übersichtsblätter (WORK/glance-*.jpg, je sechs Seiten).

  • Sehen Sie sich jedes Übersichtsblatt an. Diese erfassen Randnotizen, hervorgehobene Passagen und Abbildungen, die die Textextraktion übersieht, und das zu ungefähr den Tokenkosten einer ganzen Seite pro Blatt. Wenn ein Blatt Handschrift oder Anmerkungen auf einer getippten Seite zeigt, führen Sie es erneut mit --visual 3,7-9 aus, um diese Seiten in voller Größe zu erhalten.
  • Handschriftliche oder gescannte Seiten ([handschriftlich/gescannt], [bild]) müssen in voller Größe gelesen werden: Öffnen Sie jedes solche Bild und schreiben Sie WORK/transcript.md mit dem Inhalt in der richtigen Reihenfolge, Gleichungen in LaTeX und einer einzeiligen Beschreibung jeder Abbildung (Achsen, Beschriftungen, Schlüsselzahlen). Markieren Sie Unleserliches als [unleserlich], anstatt es zu erfinden. Handschriftliche Notizen sind oft die eigenen Vorlesungsmitschriften des Benutzers, behandeln Sie sie daher als primäre Quelle. Wenn Sie Bilder nicht anzeigen können, sagen Sie dies und bitten Sie um eine getippte Version, anstatt zu raten.
  • Getippte Seiten mit Abbildungen ([hat Abbildung]): Öffnen Sie das vollformatige Bild nur, wenn Sie einen Wert oder eine Beschriftung benötigen, die Sie auf dem Übersichtsblatt nicht lesen können.
  • Planen Sie von nun an nur auf der Grundlage von source.txt + transcript.md; lesen Sie keine Bilder erneut.
  • .docx-, .pptx- oder .key-Notizen: Exportieren Sie diese zuerst als PDF (z. B. mit LibreOffice soffice --headless --convert-to pdf), und lassen Sie dann das PDF einlesen.

Achten Sie beim Lesen auf Fehler oder Inkonsistenzen in den Notizen (Tippfehler bei Zahlen, vertauschte Beschriftungen). Verwenden Sie den korrekten Wert im Video und listen Sie jede Korrektur in Ihrem Abschlussbericht auf.

1b. Lücken aus zuverlässigen Quellen füllen

Notizen sind oft knapp: ein übersprungener Ableitungsschritt, ein Begriff, der verwendet wird, bevor er definiert ist, eine Abbildung ohne Erklärung. Wenn etwas einen Studenten verwirren würde und Sie Internetzugang haben, suchen Sie kurz (2-5 gezielte Suchanfragen, keine Literaturrecherche) nach einer klaren Erklärung auf dem richtigen Niveau: Universitätsvorlesungsnotizen und OCW, LibreTexts, Standardlehrbücher, Übersichtsartikel für Punkte auf Graduiertenniveau. Bevorzugen Sie Quellen, die mit der Notation der Notizen übereinstimmen; bei Konflikten folgen Sie den Notizen und erwähnen Sie den Unterschied. Halten Sie Ergänzungen kurz und dienstlich zum Inhalt der Notizen, richten Sie sie zuerst an Studenten im Grundstudium mit einer optionalen Anmerkung für das Hauptstudium, und listen Sie die verwendeten Quellen im Abschlussbericht auf. Fügen Sie keine Themen hinzu, die die Vorlesung nicht abdeckt.

2. Planen Sie, bevor Sie schreiben (im Kopf oder ein paar Zeilen)

  • Länge: Zielen Sie auf etwa 10 Minuten (9-11), es sei denn, der Benutzer gibt eine andere Länge an. Tiefe vor Breite: Wenn die Notizen mehr enthalten, als in 10 Minuten ohne Sprünge erklärt werden kann, behandeln Sie den Kern gründlich und teilen Sie dem Benutzer dann mit, was ausgelassen wurde, und bieten Sie einen zweiten Teil an. Planen Sie die Vertonung mit ≈ 155 Wörtern pro Minute der Ziellänge, minus 15 s pro Zwischenfrage (die Standardstimme spricht ~165 Wörter pro Minute; Zeilenpausen nutzen den Rest). Ein 10-Minuten-Video ≈ 1.350 Wörter + 4 Zwischenfragen (gemessen: 1.481 Wörter + 4 Zwischenfragen = 9,9 Min.).
  • Bogen: Titel → Motivation → Konzepte in der Reihenfolge der Notizen → durchgerechnete(s) Beispiel(e) → Zusammenfassung. Eine Idee pro Frame, 1-5 Overlay-Schritte pro Frame, insgesamt ~40-70 Seiten.
  • Logikkette: Listen Sie die Argumentationskette als nummerierte Schritte auf (was wird angenommen, was folgt daraus und warum). Jede Ableitung geht von ihrem Ausgangsprinzip bis zum Ergebnis, ohne übersprungene Schritte: jeder algebraische Umformung erhält eine eigene Zeile, jede Annahme wird dort genannt, wo sie verwendet wird, und jedes neue Symbol wird definiert, bevor es erscheint. Wenn die Notizen einen Sprung machen („es lässt sich zeigen, dass …“), füllen Sie die Lücke (§1b). Ein Student sollte nie fragen müssen „Wo kommt das her?“.
  • Visuelle Elemente tragen die Vorlesung: Planen Sie das Bild vor den Worten. Jeder Konzept-Frame benötigt eine Visualisierung: ein Diagramm, einen Graphen oder ein physikalisches Modell (Atome, ein Gitter, eine Tank-und-Rohr-Darstellung einer Massenbilanz, ein Hebel für die Hebelregel). Zeigen Sie, wofür die Symbole physikalisch stehen, nicht nur die Gleichungen. Zeichnen Sie jede Abbildung als originäres TikZ/pgfplots neu (fügen Sie niemals die Bilder des Handouts ein). Bauen Sie Diagramme Schritt für Schritt mit Overlays auf und verwenden Sie 3-6 kurze Animationen, wo Bewegung entscheidend ist (ein Abkühlungspfad, eine wandernde Konode, ein gleitender Kristallbaufehler). Muster: Referenzen/visuelles-kochbuch.md.

Wie man erklärt (das macht das Video sehenswert)

  • Sprechen Sie wie ein guter Tutor, nicht wie ein Lehrbuch. Alltägliche Formulierungen („also im Grunde“, „hier ist der Trick“, „stellen Sie es sich vor wie …“), kurze Sätze und Warum vor Was. Nehmen Sie die Verwirrung vorweg („das sieht zunächst rückwärts aus, und hier ist der Grund, warum es das nicht ist“).
  • Erklären Sie jede wichtige Gleichung zweimal:
    1. Mathematisch: wo sie herkommt, Schritt für Schritt, und was jeder Term bedeutet.
    2. Physikalisch / intuitiv: was sie im realen System bedeutet, mit einer Analogie oder einem Grenzfall („wenn c genau bei c′ liegt, ist die Legierung vollständig flüssig, und die Formel liefert genau das“). Zeigen Sie beides auf dem Bildschirm: die mathematischen Zeilen, dann eine einzeilige Notiz „physikalisch:“ oder ein Bild.
  • Führen Sie nach jeder Ableitung kurz einen Plausibilitätstest laut durch: Einheiten, ein Grenzfall oder eine Zahl aus dem Diagramm.
  • Zwischenfragen: 3-5 pro 10 Minuten, platziert direkt nach dem Konzept, das sie testen (§4).

3. Schreiben Sie WORK/lecture.tex

init hat bereits assets/template.tex in WORK/lecture.tex kopiert; es zeigt alle Konstrukte. Ersetzen Sie seine Beispielframes durch die Vorlesung. Wichtige Regeln:

  • \usepackage{lecturevideo} lädt das Thema (elfenbeinfarbenes Papier, dunkle Tinte, ein roter Akzent oder das eigene Branding des Benutzers, falls konfiguriert), die Palette (accent, ink, mute, blu, grn, gold), die Formatvorlagen für Abbildungen (pd-Achse, dot, lab, note, tie, atom, atomA, atomB) und die Vertonungsbefehle. Ändern Sie das Thema innerhalb der Vorlesung nicht.
  • Vertonung: \say<n>{...}, einer pro Overlay-Seite n, platziert am Anfang des Frames. \say<2-13>{...} vertont einen Animationsabschnitt. \wait<n>{2} hält eine Seite stumm. Jede Seite benötigt einen; der Renderer nennt jede Seite, die fehlt.
  • Gesprochener Text ist einfaches Deutsch: Zahlen und Symbole als Wörter („sechsundvierzig Prozent“, „T drei“, „siebenhundertsiebenundneunzig Grad“, „Alpha plus Beta“). Kein LaTeX und keine %, &, #, $ innerhalb von \say. Sagen Sie, worauf der Zuschauer achten soll („beobachten Sie den Punkt“, „beachten Sie die Konode“), dann warum es wichtig ist. Führen Sie den Folientext aus, anstatt ihn Wort für Wort vorzulesen.
  • Folien tragen eine echte Erklärung. Ein Zuschauer, der pausiert, zurückspult oder anhand des PDFs lernt, sollte in der Lage sein, allein mit den Folien mitzukommen. Platzieren Sie neben jeder Visualisierung 3-5 Aufzählungspunkte mit jeweils bis zu ~15 Wörtern (Schlüsselfakt, Bedingung, Konsequenz, physikalische Bedeutung). Zeigen Sie bei Ableitungen jeden Schritt als eigene Zeile mit einem kurzen Grund daneben („Massenbilanz für B“, „durch W teilen“), die beim Erreichen durch die Vertonung eingeblendet wird, und enden Sie mit einer Zeile „physikalisch:“ in der Akzentfarbe. Wenn eine Ableitung mehr als ~6 Zeilen benötigt, setzen Sie sie auf dem nächsten Frame fort (wiederholen Sie die letzte Zeile oben), anstatt zu stopfen.
  • Layout: Visualisierung auf einer Seite (etwa 55 %), Text auf der anderen (columns), oder die Visualisierung oben und 2-3 Zeilen darunter. Akademisch und aufgeräumt: eine Idee pro Frame, die Akzentfarbe nur für Hervorhebungen, Ergebnisse und Zustandsmarkierungen.
  • Abbildungsmakros, die #1 übernehmen, gehören in die Präambel (ein # im Frame-Rumpf bricht beamer).
  • Jedes LaTeX-Paket, das die Vorlesung benötigt (siunitx, chemfig, …), darf verwendet werden; wenn das private TinyTeX verwendet wird, werden fehlende Pakete beim ersten Kompilieren automatisch installiert.

4. Prüfungsähnliche Zwischenfragen

\examq[5]{Checkpoint: Hebelregel}
  {Fragenfolie}{gesprochene Frage}{Antwortfolie}{gesprochene Antwort}

Dies erzeugt 1 Fragenseite (vertont, dann „Sie haben 5 Sekunden.“), 5 stille Ein-Sekunden-Countdown-Seiten mit einem schrumpfenden Ring und 1 vertonte Antwortseite.

Schreiben Sie Fragen wie eine echte Prüfung über diese Vorlesung: konkrete gegebene Zahlen, eine klare Aufgabe, in ~30 s von jemandem zu beantworten, der dem Video gefolgt ist, mit einer kurzen durchgerechneten Antwort. Mischen Sie die Typen:

  • Berechnen: „Eine Legierung mit 35 Gew.-% B bei T₃ mit c′ = 20, c″ = 85: Welcher Anteil ist flüssig?“
  • Diagramm ablesen: „Eine Legierung mit 20 Gew.-% Ag befindet sich bei 900 °C. Welche Phasen und ungefähr welche Zusammensetzungen?“
  • Vorhersagen: „Eine Legierung mit 5 Gew.-% Ag wird langsam von 800 °C auf 500 °C abgekühlt. Was bildet sich und wo?“
  • Identifizieren / Klassifizieren: „Flüssig → α + β bei einer Temperatur: Um welche invariante Reaktion handelt es sich?“
  • Fehler erkennen: „Ein Student verwendet c″ − c über die Konode für den Feststoffanteil. Was ist falsch gelaufen?“

Vermeiden Sie vage Aufforderungen („Was ist eine Phase?“), nebensächliche Fakten, die nicht in den Notizen gelehrt wurden, und mehrteilige Fragen. Die Antwort muss den Gedankengang zeigen, nicht nur das Ergebnis. Nehmen Sie die Zahlen aus dem Diagramm oder der Gleichung, die das Video gerade gezeigt hat, sodass Frage, Abbildung und Antwort übereinstimmen. Fragen, die auf einem häufigen Missverständnis aufbauen, funktionieren gut („Eine Halbierung des Stiftabstands verdoppelt die Quellspannung: wahr oder falsch?“). Behalten Sie den 5-Sekunden-Countdown bei (die Folie sagt „Pausieren Sie, wenn Sie länger brauchen“); verwenden Sie \examq[8] nur, wenn der Benutzer längere Pausen wünscht.

5. Prüfen, dann rendern

lv check WORK/lecture.tex

Dies kompiliert, gibt Seiten, gesprochene Wörter, eine geschätzte Dauer und layout:-Warnungen aus (Inhalt zu hoch oder Zeilen zu breit, mit Quellzeilennummern) und schreibt nummerierte Kontaktbögen WORK/lecture_build/sheet-*.png. Sehen Sie sich die Bögen an, auf Überlappungen, abgeschnittene Beschriftungen, nicht auf der Kurve liegende Markierungen oder leere Frames; korrigieren Sie diese und führen Sie es erneut aus (günstig). Wenn Sie Bilder nicht anzeigen können, beheben Sie alle layout:-Warnungen und halten Sie die Abbildungen einfach. Wenn die Schätzung die Ziellänge um mehr als ~10 % verfehlt, kürzen oder erweitern Sie jetzt die Vertonung (nicht die Zwischenfragen). Dann:

lv render WORK/lecture.tex ["AUS/Vorlesungstitel.mp4"]

Sprecher: Microsoft Edge Neuralstimme en-GB-SoniaNeural (kostenlos, benötigt Internet) bei +10%, 720p. Offline oder wenn Edge fehlschlägt, fällt sie automatisch auf die gebündelte Kokoro-Stimme bf_emma zurück. Optionen: --tts edge|kokoro|say, --voice <id oder profil>, --rate, --height. Wenn der Benutzer eine Stimme benennt oder seine eigene wünscht (einschließlich einer geklonten Stimme), lesen Sie Referenzen/voices.md.

Untertitel gibt es kostenlos dazu. Jeder Render-Vorgang schreibt auch AUS.srt und AUS.vtt neben das MP4 und bettet eine auswählbare Untertitelspur ein, die aus dem \say-Text erstellt und aus dem synthetisierten Audio getaktet wird. Sie kosten also keine Tokens und bleiben nach Änderungen synchron. Transkribieren Sie das Video niemals manuell oder schreiben Sie Untertitel von Hand. Sie zeigen die Vertonung wie geschrieben (vor lexicon.tsv-Neuschreibungen). --no-subs schaltet sie aus.

Korrekturen der Aussprache werden in WORK/lexicon.tsv vorgenommen (geschrieben<TAB>gesprochen), angewendet nur auf das Audio. Das erneute Rendern nach einer Bearbeitung dauert Sekunden, da unveränderte Zeilen aus dem Audio-Cache kommen.

6. Berichten Sie

Geben Sie den Videopfad (und die .srt/.vtt-Untertitel) an, die Dauer, die Anzahl der Seiten und Zwischenfragen, alle Korrekturen an den Notizen, die zum Füllen von Lücken verwendeten Quellen, welche Abbildungen schematische Neuzeichnungen sind, und was ausgelassen wurde (bieten Sie einen zweiten Teil an). Behalten Sie WORK für Bearbeitungen.

Persönliche Einstellungen

Branding (Logo, Farben, ein Beamer-Thema einer Einrichtung), Standardstimme, Arbeits- und Ausgabeordner befinden sich außerhalb des Skills, im Konfigurationsordner des Benutzers, damit der Skill portabel bleibt: Referenzen/anpassung.md. Bearbeiten Sie niemals die eigenen Ressourcen des Skills für die Präferenzen eines einzelnen Benutzers.

Warum es so aufgebaut ist

  • Eine Quelldatei hält Folien und Vertonung synchron; LaTeX selbst schreibt die seitenkorrekte Vertonungskarte (.narr)

…

[gekürzt für die Übersetzung]

Verwandte Skills