fix: ffmpeg-Preset auf veryfast, um CDN-Timeout beim Video-Upload zu vermeiden

Fehlerbild "Unexpected token '<' ... is not valid JSON" nach dem
ffmpeg-Fix: kein Absturz mehr, sondern vermutlich ein Timeout - das
CDN/Reverse-Proxy (Cloudflare) vor der Seite bricht selbst ab, wenn der
Origin-Request zu lange nicht antwortet, und liefert dafuer eine eigene
HTML-Fehlerseite statt der JSON-Antwort. "medium"-Preset fuer ein
57-MB-Rohvideo konnte laenger brauchen, als das CDN wartet. "veryfast"
tauscht nur Encodier-Geschwindigkeit gegen Kompressionseffizienz (nicht
gegen das per -crf gesteuerte Qualitaetsziel), reduziert die
Encodierzeit deutlich.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
This commit is contained in:
Nick SzaunigandClaude Sonnet 5 committed 2026-09-12 03:56:07 +02:00
1 parent 902f818c6e
commit 6742152626
1 file changed
+11 -1
+11 -1
View File
@@ -52,8 +52,18 @@ export async function transcodeVideoForWeb(buffer: Buffer): Promise<Buffer> {
"scale='min(1920,iw)':-2",
"-c:v",
"libx264",
// "veryfast" statt "medium": x264-Presets tauschen Encodier-GESCHWINDIGKEIT
// gegen Kompressionseffizienz, nicht gegen das Qualitaetsziel selbst (das
// steuert weiterhin allein -crf) — bei identischem CRF wird die Datei mit
// "veryfast" minimal groesser, aber typischerweise 3-5x schneller fertig.
// Noetig, weil ein Reverse-Proxy/CDN (hier: Cloudflare) vor einem zu
// lange antwortenden Origin-Request selbst abbricht und eine eigene
// HTML-Fehlerseite ausliefert -> im Client "Unexpected token '<' ...
// is not valid JSON", weil response.json() diese HTML-Seite nicht
// parsen kann. Mit "medium" konnte ein 57-MB-Rohvideo laenger brauchen,
// als das CDN auf eine Antwort wartet.
"-preset",
"medium",
"veryfast",
"-crf",
"26",
"-maxrate",