Stand 2026-09-15. Der Discord-Server ist dazugekommen, der Rest ist unveraendert: S2 wartet weiter auf ein laufendes OBS. - Neuer Abschnitt "Der Discord-Server steht": was da ist, und dass die drei Webhooks fuer Broadcaster, Recap und Clipper bereitliegen. Wer diese Werkzeuge baut, muss nur noch posten. - Neuer Abschnitt "Discord: was gemessen ist", nach dem Vorbild der Windows-Fallen. Vier Dinge, die nicht in der Doku stehen, in der man zuerst sucht: das Limit von zwei Umbenennungen je zehn Minuten, die Rangfolge-Regel hinter dem irrefuehrenden "Missing Permissions", die Schwelle fuer Onboarding und die Namensnormalisierung. - Zwei Handgriffe fuer Abdu ergaenzt: sich selbst die Rolle geben, und den Einladungslink verteilen. An Letzterem haengt, ob der Server ueberhaupt jemanden bekommt. - Ehrlich dazugeschrieben, was offen ist: der Knopf haengt am Daemon, und der Bot ist nie unter Last gelaufen. - Der Hinweis auf die zwei Remotes, damit sie nicht auseinanderlaufen. - 93 -> 162 Tests. offene-punkte.md bekommt einen Discord-Abschnitt, die Roadmap den Hinweis, dass die Discord-Seite von M3 schon steht. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
6.0 KiB
6.0 KiB
Offene Punkte
Stand 2026-09-09. Sortiert nach Dringlichkeit, nicht nach Aufwand. Erledigtes wandert raus, nicht ins Archiv — die Historie steht in Git.
Blockiert, bis jemand am Stream-PC sitzt
- S2 abnehmen. Der obs-websocket-Client ist gebaut und getestet, soweit
es ohne OBS geht: Anmeldeverfahren, Pfadübersetzung, Warten auf die
fertige Datei. Ungeprüft ist das tatsächliche Gespräch mit einem
laufenden OBS. Bis dahin ist
!clipnicht bewiesen. - Strecke IRC → Datenbank im Livebetrieb. Die Teile sind einzeln getestet, die Verdrahtung wird erst beim ersten echten Stream sichtbar.
- Layout umstellen nach
obs-layout.mdund danachcalibratelaufen lassen.
Bekannte Lücke im Betrieb
- Aufräumen im Arbeitsordner. Jede Rohdatei landet unter
work/<clipId>/und bleibt dort liegen. Bei fünf Clips pro Stream und mehreren hundert MB je Datei läuft das Volume in wenigen Wochen voll. Gebraucht wird eine Aufbewahrungsregel — Vorschlag: Rohdateien der letzten 30 Clips behalten, ältere löschen, sobaldstatus = 'rendered'. Das ist der Punkt, der als Erstes weh tun wird. - Was passiert, wenn der Rechner mitten im Rendern ausgeht? Clips bleiben
auf
status = 'raw'stehen und werden nach Neustart nicht wieder eingereiht.
Untertitel verbessern
Der Durchlauf am echten Clip war brauchbar, aber nicht gut. Was auffiel:
- Größeres Modell testen.
ggml-smallmachte aus „Danke" ein „Dank es" und aus „Sabrina" ein „Savina".mediumist etwa dreimal so langsam — bei 30-Sekunden-Clips nach dem Stream ist das egal. Vergleich an demselben Clip fahren und entscheiden. - Wörter mit niedriger Wahrscheinlichkeit prüfen. Whisper liefert je
Token ein
p. Bei den Fehlgriffen lag es unter 0,15, bei korrekten Wörtern über 0,9. Entweder weglassen oder gedimmt anzeigen. - Schrift. DejaVu Sans ist im Image vorhanden, aber unauffällig. Auf Shorts trägt eine fettere, rundere Schrift (Montserrat ExtraBold, Inter Black). Braucht eine Schriftdatei im Image und eine Lizenzprüfung.
- Nur das aktuelle Wort hervorheben statt fortlaufend einzufärben. Der heutige Karaoke-Effekt lässt gesprochene Wörter gefärbt stehen; der Stil, der auf TikTok funktioniert, hebt genau ein Wort hervor. Braucht mehrere Dialogzeilen je Zeile statt einer.
- Position prüfen. 340 px Abstand nach unten ist geschätzt, nicht gemessen. An einem echten Handy gegen die TikTok-, Reels- und Shorts-Oberfläche halten.
- Seitliche Ränder gegengeprüft, aber nur rechnerisch gegen eine
gemessene mittlere Zeichenbreite. Bei einer anderen Schrift (siehe
Punkt oben) muss
CHAR_WIDTH_RATIOinsubtitles.tsneu eingemessen werden — sonst bricht die Zeile wieder an der falschen Stelle. - Nur transkribieren, wenn Abdu spricht. Bei getrennten Tonspuren reicht ein Pegelfilter auf der Mikrofonspur, damit aus Stille kein erfundener Text wird.
Streamsetup
- Live-Captions verschieben. Sie liegen im Gameplay-Band und sind fest
eingebrannt. Zwei Vorschläge stehen in
obs-layout.md. Welche OBS-Quelle sie überhaupt zeichnet, sagtabdulive sources— das war vorher unbekannt. - Spieluntertitel abschalten.
- Bessere Bildquelle für die Facecam — Plugin
Source RecordoderAitum Vertical. Damit entfällt die 2,25-fache Vergrößerung. Lohnt sich erst, wenn regelmäßig Shorts entstehen.
Auslieferung
- Code-Signing. Das Paket ist nicht signiert, SmartScreen warnt bei jeder Installation vor einem unbekannten Herausgeber. Ein OV-Zertifikat kostet rund 200 EUR im Jahr, ein EV-Zertifikat mehr und braucht Hardware. Solange nur Abdu installiert, reicht ein Klick auf "Trotzdem ausfuehren" - sobald jemand Drittes das Paket bekommt, nicht mehr.
- CI einmal wirklich laufen lassen.
.gitea/workflows/release.ymlist geschrieben, der Runner (ubuntu-latest) steht — ausgefuehrt wurde sie aber noch nie. Beim ersten Tag zusehen, ob sie durchlaeuft. - Hardware-Encoding. Der mitgelieferte ffmpeg kann QSV, AMF und NVENC
(
--enable-libvpl,--enable-amf,--enable-ffnvcodec) - aus WSL2 heraus ging das nicht.clipper.ffmpeg.encodersteht weiter auflibx264. Auf Abdus Rechner messen, obh264_qsvetwas bringt.
Discord
- Den Bot unter Last sehen. Gleichzeitige Klicks auf den Rollen-Knopf sind nie vorgekommen, ebenso wenig eine Laufzeit über Tage. Die Gateway-Verbindung kann fortsetzen und wiederverbinden, aber beides ist nur gegen einen nachgebauten Server geprüft.
- Onboarding einschalten, sobald der Server groß genug ist. Discord verlangt sieben Vorgabekanäle mit fünf beschreibbaren, wir haben fünf und drei. Die Frage liegt fertig auf dem Server, nur ausgeschaltet. Dann könnte der Knopf entfallen und mit ihm die Gateway-Verbindung.
- Twitch-Konto unter Integrationen verbinden, damit Subs automatisch eine Rolle bekommen.
- Stammgast automatisch vergeben. Bisher von Hand. Die Daten dafür liegen längst in der Datenbank, es fehlt die Brücke zwischen Twitch-Konto und Discord-Konto.
Nach dem MVP
- Spitzen-Erkennung scharf schalten. Sie läuft mit und schreibt jeden
Kandidaten samt Punktzahl in
events. Sobald ein paar Streams protokolliert sind: an echten Daten kalibrieren, dannarmed: true. - Automatischer Upload zu TikTok und YouTube.
- EventSub für Follows, Subs, Raids — bisher reicht IRC plus Polling.
- Follower-Prüfung bei
!clip, falls die Abklingzeiten nicht reichen. - Die übrigen acht Werkzeuge, siehe
04-roadmap.md.
Kleinigkeiten
- Die Fortschrittsanzeige schreibt
\r-Zeilen; im Protokoll der Aufgabe sieht das unschoen aus. Beim Umleiten in eine Datei besser unterdruecken.