LLPlayer: WPF-Player mit Whisper-ASR und Doppeluntertiteln für Sprachlernende
The media player for language learning, with dual subtitles, AI-generated subtitles, real-time translation, and more!
Auf einen Blick
- Was ist das?
- LLPlayer kombiniert einen Video-Player mit Whisper-Untertitelgenerierung, Echtzeitübersetzung und Wortnachschlagen. Das Projekt läuft ausschließlich unter Windows, ist als Beta gekennzeichnet und richtet sich an Lernende, die bereit sind, Modelle und Engines selbst zu konfigurieren.
- Für wen ist es gedacht?
- Wer unter Windows lernt und Whisper-Modelle sowie Übersetzungs-Backends selbst einrichten will, findet in LLPlayer einen Player, der Untertitel nicht als Zusatz, sondern als Kernfunktion behandelt. Wer macOS oder Linux nutzt, ist hier falsch.
- Darf ich es kommerziell nutzen?
- Ja, unter Bedingungen. GPL-3.0 ist eine Copyleft-Lizenz: Wenn Sie Software weitergeben, die sie enthält, müssen Sie deren Quellcode unter derselben Lizenz veröffentlichen. Wer sie nur intern betreibt, ohne sie weiterzugeben, löst diese Pflicht nicht aus.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 5 Tagen.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich C#, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
Doppeluntertitel statt Menüleiste: das Problem, das LLPlayer löst
Herkömmliche Player behandeln Untertitel als Zusatz. Man lädt eine Datei, wählt eine Spur, fertig. Für Sprachlernende reicht das nicht, weil sie zwei Spuren gleichzeitig brauchen: die Zielsprache zum Hören und Lesen, die Muttersprache zum Abgleich. LLPlayer setzt genau dort an. Der README beschreibt das Kernversprechen als Doppeluntertitel, bei denen beide Spuren gleichzeitig dargestellt werden, und zwar sowohl Text- als auch Bitmap-Untertitel. Das ist keine Kleinigkeit, denn Bitmap-Untertitel (etwa von Blu-rays) lassen sich nicht einfach als Text kopieren. LLPlayer wandelt sie per OCR in Echtzeit um, laut README auf Basis von Tesseract OCR und Microsoft OCR.
Die Zielgruppe ist eng umrissen. Wer eine Fremdsprache über Videos lernt, mit japanischen oder koreanischen Sendungen arbeitet und dabei Werkzeuge wie Yomitan oder 10ten nutzt, bekommt hier einen Player, der Wortnachschlagen und Browsersuche direkt aus dem Untertiteltext heraus erlaubt. Wer einfach nur Filme schauen will, braucht das nicht.
Wie die Untertitelpipeline aufgebaut ist
Der Datenfluss lässt sich aus dem README rekonstruieren. Audio oder ein vorhandener Bitmap-Untertitelstream geht in die ASR- bzw. OCR-Stufe, das Ergebnis landet als Text im Untertitelbereich, und von dort führt ein weiterer Schritt in die Übersetzung. Für ASR nennt das Projekt zwei Engines: whisper.cpp und faster-whisper, beide auf Basis von OpenAI Whisper. Der Unterschied im Betrieb ist dokumentiert: Bei whisper.cpp lädt man Modelle vorab über die Einstellungen, wobei Modelle mit der Endung En nur für Englisch geeignet sind. Bei faster-whisper lädt die Engine das gewählte Modell beim ersten Lauf selbst herunter, eine Vorabauswahl entfällt.
Für die Übersetzung listet das README mehrere Engines, darunter Google, DeepL, Ollama, LM Studio und OpenAI. Die Quelle wird automatisch erkannt, die Zielsprache setzt man manuell. Standard ist GoogleV1. Bemerkenswert ist die kontextbewusste Übersetzung: Statt einzelne Untertitelzeilen isoliert zu übersetzen, kann ein LLM den Kontext der umliegenden Zeilen einbeziehen. Das ist der technisch interessanteste Teil, denn Untertitel sind selten vollständige Sätze, und zeilenweises Übersetzen produziert genau deshalb oft Unsinn.
Einrichtung: Modelle, Engines, Tastenkürzel
Die Installation beginnt mit dem Herunterladen eines Builds von der Release-Seite und dem Start von LLPlayer.exe. Voraussetzung ist die .NET Desktop Runtime 10 sowie die Microsoft Visual C++ Redistributable ab Version 2022. Das README ist an dieser Stelle ungewöhnlich deutlich: Fehlt die Redistributable, startet die Anwendung zwar, stürzt aber ab, sobald ASR oder OCR aktiviert wird. Für Nvidia-Nutzer mit RTX-GPU empfiehlt das Projekt das CUDA Toolkit, weil der CUDA-Treiber die Untertitelgenerierung beschleunigt.
Die Einstellungen öffnet man mit CTRL+., alternativ über das Zahnrad auf der Suchleiste. Whisper-Modelle für whisper.cpp lädt man im Abschnitt Subtitles > ASR. Die Audiosprache lässt sich manuell setzen, standardmäßig wird sie automatisch erkannt. Die Zielsprache für Übersetzungen steht im Abschnitt Subtitles > Translate. Auf der Suchleiste sitzen zwei CC-Schaltflächen: links der primäre Untertitel für die Lernsprache, rechts der sekundäre für die Muttersprache. Externe Untertitel lädt man per Drag and Drop oder über das Kontextmenü. Online-Videos fügt man mit CTRL+V ein. F1 öffnet ein eingebautes CheatSheet, das alle Tastatur- und Maussteuerungen erklärt.
Die Beta-Kennzeichnung ist keine Formalie
Das README nennt den Status selbst Beta und schreibt, die Anwendung sei noch nicht von genügend Nutzern getestet und möglicherweise instabil. Noch wichtiger für die Praxis: Während der 0.X.X-Versionen sind Breaking Changes ausdrücklich vorgesehen, und die Konfigurationsdateien sind bei Updates möglicherweise nicht abwärtskompatibel. Wer LLPlayer produktiv in einen Lernworkflow einbaut, muss damit rechnen, dass Einstellungen nach einem Update neu gesetzt werden müssen.
Hinzu kommt die Plattformbindung. Als WPF-Anwendung läuft LLPlayer ausschließlich unter Windows 10 x64 ab Version 1903 und Windows 11 x64. Das ist keine Einschränkung, die sich wegkonfigurieren lässt. Wer auf macOS oder Linux arbeitet, kann das Projekt nicht nutzen, unabhängig davon, wie gut die Untertitelfunktionen passen würden. Das ist der härteste Ausschlussgrund im gesamten Profil.
Wo LLPlayer das falsche Werkzeug ist
Die ASR-Stufe ist rechenintensiv. Das README weist selbst darauf hin, dass größere Whisper-Modelle höhere Last erzeugen, und dass CUDA die Generierung beschleunigt. Auf einem Rechner ohne geeignete GPU wird die Echtzeitgenerierung entsprechend langsamer ausfallen. Wer Untertitel live während der Wiedergabe erwartet, sollte das vor dem Umstieg mit dem eigenen Modell und der eigenen Hardware prüfen, denn das Material nennt keine konkreten Latenzwerte.
Ein zweiter Fall: Wer bereits eine vollständige Untertiteldatei in der Zielsprache besitzt und nur abspielen will, für den ist der ASR- und OCR-Apparat überflüssig. Der Player funktioniert dann, aber der Aufwand für Modelldownloads und Engine-Konfiguration bringt keinen Gegenwert. Und wer Untertitel als reine Barrierefreiheitsfunktion nutzt, nicht als Lernwerkzeug, ist mit einem etablierten Player besser bedient, weil dort weniger bewegliche Teile zu konfigurieren sind.
Was MPV-basierte Player anders machen
Der naheliegende Vergleich sind MPV-basierte Player mit Skript-Erweiterungen. Dort ist der Player selbst ein schlanker Kern, und Funktionen wie Untertitelübersetzung oder ASR kommen über externe Skripte und Wrapper hinzu. Der Ansatz ist modular: Man kombiniert, was man braucht, und tauscht einzelne Bausteine aus.
LLPlayer geht den umgekehrten Weg. Die Untertitelfunktionen sind in die Anwendung selbst eingebaut, mit eigener Einstellungsoberfläche, eigenen Modell-Downloads und einer integrierten ASR- und OCR-Pipeline. Das senkt die Einstiegshürde, weil man keine Skripte zusammenstellen muss, und es ermöglicht die kontextbewusste LLM-Übersetzung als Teil des Players statt als nachgelagertes Werkzeug. Der Preis ist Bindung: Man bekommt die Funktionen nur in dieser Anwendung, unter Windows, in einer Beta mit wechselnden Konfigurationsformaten. Ein MPV-Setup mit Skripten lässt sich dagegen auf mehreren Plattformen nachbauen, erfordert aber mehr Eigenarbeit.
Wartung, Lizenz und was vor dem Einsatz zu klären ist
LLPlayer steht unter GPL-3.0. Wer die Anwendung nur nutzt, ist davon kaum betroffen. Wer sie weitergeben oder eigene Builds verbreiten will, muss die Bedingungen der GPL-3.0 einhalten, insbesondere die Quelloffenlegung abgeleiteter Werke. Das ist eine allgemeine Einordnung und keine Rechtsberatung; für den eigenen Fall sollte man die Lizenz selbst lesen.
Der Wartungsaufwand liegt weniger im Player als in seinem Umfeld. Whisper-Modelle müssen heruntergeladen und bei Bedarf aktualisiert werden. Übersetzungsengines wie DeepL oder OpenAI benötigen eigene Zugangsdaten und unterliegen deren Bedingungen. yt-dlp, das für Online-Videos zuständig ist, wird separat gepflegt und muss aktuell gehalten werden, damit die Extraktion funktioniert. Dazu kommt die bereits erwähnte Instabilität der Konfigurationsdateien während der 0.X.X-Phase. Das Projekt ist aktiv: Der letzte Push liegt bei Juli 2026, die letzte Version v0.3.0 bei April 2026, davor v0.2.2 im Mai 2025. Zwischen den Releases liegen also längere Abstände. Wer LLPlayer einsetzen will, sollte zuerst die Redistributable prüfen, dann ein Whisper-Modell passend zur eigenen Hardware wählen und erst danach die Übersetzungsengine konfigurieren, weil die Standardeinstellung GoogleV1 ohne Zugangsdaten auskommt.
Redaktionelles Fazit
Wer unter Windows lernt und Whisper-Modelle sowie Übersetzungs-Backends selbst einrichten will, findet in LLPlayer einen Player, der Untertitel nicht als Zusatz, sondern als Kernfunktion behandelt. Wer macOS oder Linux nutzt, ist hier falsch. Vor dem Umstieg sollte man prüfen, ob die Microsoft Visual C++ Redistributable installiert ist, sonst startet die App zwar, stürzt aber beim Aktivieren von ASR oder OCR ab. Und wer die Konfigurationsdateien über Versionen hinweg weiterverwenden will, sollte die Beta-Warnung ernst nehmen: Breaking Changes sind während 0.X.X ausdrücklich vorgesehen.
Community-Notizen