Eigene Videoauslieferung mit Untertiteln

Videos eines Fach-Versandhändlers ohne YouTube ausliefern: in mehreren Qualitätsstufen, mit eigenem Player, automatischen Untertiteln und Einblendungen zu passenden Produkten.

Auf einen Blick

Branche
Fach-Versandhändler mit großem Sortiment
Zeitraum
seit September 2026
Unsere Rolle
Konzeption und Entwicklung

534

Videos mit Ton automatisch ausgewertet

38 ×

schneller als Echtzeit: 36,5 Stunden Ton in 58 Minuten

4

Qualitätsstufen von 360p bis 1080p

Ausgangslage

Ein Fach-Versandhändler liefert seine Anleitungs- und Produktvideos bisher in einer einzigen Qualität als MP4- und WebM-Datei aus. Gesucht war eine Auslieferung, die jedem Gerät und jeder Verbindung die passende Qualität liefert.

Ziel

Jedes Video in der passenden Qualität für jede Verbindung, ein eigener Player ohne fremde Empfehlungen, Untertitel und Kapitel für den gesamten Bestand und Einblendungen, die zum passenden Artikel führen – gepflegt von der Redaktion, ohne Entwickler.

Lösung

Beim Import wandelt ein Worker jedes Video mit ffmpeg in einem Durchgang in bis zu vier HLS-Qualitätsstufen um – nie höher aufgelöst als das Original – und erzeugt Vorschaubilder und eine Ausweichdatei. Ausgeliefert werden statische Dateien über einen gewöhnlichen Webserver; im Shop spielt video.js die Videos ab.

Untertitel, Kapitel und Transkripte erzeugt faster-whisper auf einer Grafikkarte. In einer Redaktionsoberfläche mit Symfony und htmx prüft und korrigiert das Team die Fassungen, setzt Kapitel und legt Einblendungen zu Artikeln, Kategorien und Ratgebern an.

Aufbau der VideoauslieferungEin Worker wandelt hochgeladene Videos mit ffmpeg in HLS-Qualitätsstufen um und legt sie als statische Dateien ab, die ein Webserver an den video.js-Player im Shop ausliefert. Die Spracherkennung erzeugt aus dem Ton Untertitel und Kapitel, die die Redaktion prüft und freigibt.UploadOriginalvideoWorkerffmpeg · HLS-StufenStatische DateienHLS · MP4 · UntertitelWebserverCaddySpracherkennungfaster-whisper · GPURedaktionSymfony · htmxShopvideo.js-Player
Aufbau der Videoauslieferung: einmal umwandeln, als statische Dateien ausliefern, Untertitel per Spracherkennung.

Ergebnis

Der gesamte Bestand ist automatisch ausgewertet: alle 534 Videos mit Ton, zusammen 36,5 Stunden, in 58 Minuten – 38-mal schneller als Echtzeit. 113 dieser Videos enthalten keine Sprache; die Spracherkennung hat sie als solche erkannt. Bei den übrigen 421 entstand ein Transkript.

Die selbst gehostete Videoauslieferung läuft seit Anfang Oktober 2026 produktiv; das Redaktions-Backend ist noch nicht live.

Stack

  • Symfony 8.1
  • PHP 8.4+
  • htmx
  • video.js 10
  • ffmpeg (HLS)
  • faster-whisper
  • Caddy

Mehr zum Thema

  • Videos selbst hosten oder Vimeo, YouTube & Co.?

    Kosten von YouTube, Vimeo, Bunny Stream, Cloudflare Stream und eigenem Server in drei Größen, dazu gemessen: Speicher je Minute, Gewicht und Datenschutz von sieben Einbettungen und ein Lasttest auf zwei Cloud-Servern.

Weitere Case Studies

Passt das zu Ihrem Vorhaben?

Beschreiben Sie kurz, worum es geht. Wir melden uns mit einer ehrlichen Einschätzung, ob und wie wir helfen können.

Projekt anfragen