S4: Untertitel aus der Mikrofonspur, plus vorgegebenes OBS-Layout
whisper.cpp laeuft ueber die Tonspur und liefert Tokens; daraus werden Woerter mit Zeitstempeln (Wortstuecke wie "Sav"+"ina" wieder zusammengesetzt) und daraus kurze Zeilen im ASS-Format mit wortweiser Hervorhebung. SRT und Transkript fallen nebenbei ab. An einem echten deutschen Clip geprueft. Drei Fehler kamen erst dabei heraus: Zeilen mit einem einzigen Wort bei zoegerndem Sprechen, ein Nachlauf, der in die naechste Zeile ragte (ASS stapelt gleichzeitige Zeilen uebereinander), und ein Uebertragsfehler im Zeitformat bei 59,999 s. Layout wird jetzt VORGEGEBEN statt nachgemessen: ein Vergleich zweier Aufnahmen zeigte, dass die Facecam von Stream zu Stream anders liegt. Das Profil "default" beschreibt die Vorgabe (Facecam 480x270 oben links, Chat ab x=1405, Gameplay-Band 890 breit mittig auf x=960), "bestand-2026-09" haelt den alten Zustand fuer altes Material fest. Dazu eine Ausrichtungsvorlage als Bild, die in OBS ueber die Szene gelegt wird, und docs/obs-layout.md. Befund am echten Clip: im Streambild sind bereits zwei Textebenen eingebrannt (Spieluntertitel und ein Live-Caption-Overlay). Beides ist im Layout-Dokument behandelt. 53 Tests gruen. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013VTGjd92LsDDWF3frd9FTB
This commit is contained in:
1 parent
0e020f3073
commit
974dfd075b
11 files changed
+824
-33
No files matched your search
+26
-2
@@ -38,8 +38,11 @@ gibt. Vorher ist sie nur Ballast.
|
||||
| Layout eingemessen | **fertig** — `config/layout.yaml`, vorgezogen aus S3 |
|
||||
| S1 Einrichtung + Auth + DB + IRC-Ingest | **fertig** — 20 Tests grün, Daemon läuft |
|
||||
| S2 OBS-Anbindung + Trigger | **Code fertig**, Abnahme braucht laufendes OBS |
|
||||
| S3 9:16-Render | **fertig** — Durchlauf verifiziert, 39 Tests grün |
|
||||
| S4–S6 | offen |
|
||||
| S3 9:16-Render | **fertig** — Durchlauf verifiziert |
|
||||
| S4 Untertitel | **fertig** — an echtem Clip verifiziert, 53 Tests grün |
|
||||
| S5 Onboarding + Sichtung | als Nächstes |
|
||||
| S6 Erstchatter-Begrüßung | offen |
|
||||
| OBS-Layout vorgegeben | **fertig** — [`obs-layout.md`](obs-layout.md) |
|
||||
|
||||
**S1 abgenommen am 2026-09-09.** Der Daemon läuft, hängt am Chat, die
|
||||
Einrichtung ist unter `http://localhost:4792/setup` erreichbar.
|
||||
@@ -197,6 +200,27 @@ mindestens 320 px. Ins Video kommt weiterhin die Mischung von Spur 1.
|
||||
Untertitel, und der Text wird auf dem Handy von der TikTok-Oberfläche nicht
|
||||
verdeckt.
|
||||
|
||||
**S4 abgenommen am 2026-09-09**, geprüft an einem echten 30-Sekunden-Clip mit
|
||||
deutscher Sprache. 41 Wörter in 37 s Rechenzeit auf der CPU, Transkript
|
||||
inhaltlich korrekt, Untertitel sitzen zeitlich und sind lesbar.
|
||||
|
||||
Drei Fehler kamen erst am echten Material heraus:
|
||||
|
||||
- **Ein-Wort-Zeilen.** Bei zögerndem Sprechen zerfiel der Text in Zeilen mit
|
||||
einem einzigen Wort („Dank" / „es," / „Savina,"). Die Obergrenze von 2,2 s je
|
||||
Zeile war zu eng; jetzt 3,2 s plus ein Nachverdichten, das allein stehende
|
||||
Wörter an den Nachbarn hängt. 17 Zeilen wurden zu 10.
|
||||
- **Überlappende Zeilen.** Der Nachlauf von 0,25 s ragte in die nächste Zeile.
|
||||
ASS stapelt gleichzeitig sichtbare Zeilen übereinander — das sieht kaputt
|
||||
aus. Das Ende wird jetzt am Beginn der Folgezeile abgeschnitten.
|
||||
- **Zeitformat.** Bei 59,999 s rundeten die Hundertstel auf 100 und der Übertrag
|
||||
lief nicht in die Minuten: `0:00:60.00` statt `0:01:00.00`. Gefunden durch
|
||||
einen Test, nicht durch Zusehen.
|
||||
|
||||
**Befund fürs Streamsetup:** Im Quellmaterial lagen bereits zwei Textebenen
|
||||
(Spieluntertitel und ein Live-Caption-Overlay mit Wort-Markierung). Beide sind
|
||||
fest eingebrannt. Behandelt in [`obs-layout.md`](obs-layout.md).
|
||||
|
||||
### S5 — Oberfläche: Onboarding und Sichtung · ~2 Tage
|
||||
|
||||
**Erststart-Assistent.** Die heutige Einrichtungsseite ist ein Formularblock —
|
||||
|
||||
Reference in new issue
Block a user