Hallo zusammen,
nachdem ich lange auf der Suche nach einem simplen, aber flexiblen Player für M3U-Playlisten war, der nicht ständig abstürtzt, wenn die Liste ein paar Megabyte erreicht hat und nichts Passendes finden konnte, habe ich selbst angefangen, ein kleines Tool entwickelt: Den „M3U VOD Player“. Der Player zeigt übersichtlich Filme und Serien aus verschiedenen M3U-Playlisten an und ermöglicht direktes Abspielen über den MPV-Player – wahlweise lokal oder über eine praktische Fernsteuerung.
Das Projekt steckt zwar noch in einer frühen Phase und hat sicherlich hier und da noch kleine Schwächen, läuft aber bereits stabil genug, um im Alltag genutzt zu werden. Fertige Pakete für Windows und Linux stehen bereit, ebenso wie der offene Quellcode, falls ihr selbst Hand anlegen möchtet.
Im Anhang befindet sich nur der Quellcode.
Fertige Pakete für Linux und Windows hab ich hier:
In Linux muss der mpv Player vorhanden sein, beim Windows-Paket liegt er schon dabei.
Das Tool startet einen lokalen NodeJS Server auf Port: 3302
Heißt: Nach dem starten solltet Ihr das Webinterface über die Adresse:
Entwicklerbereich
nachdem ich lange auf der Suche nach einem simplen, aber flexiblen Player für M3U-Playlisten war, der nicht ständig abstürtzt, wenn die Liste ein paar Megabyte erreicht hat und nichts Passendes finden konnte, habe ich selbst angefangen, ein kleines Tool entwickelt: Den „M3U VOD Player“. Der Player zeigt übersichtlich Filme und Serien aus verschiedenen M3U-Playlisten an und ermöglicht direktes Abspielen über den MPV-Player – wahlweise lokal oder über eine praktische Fernsteuerung.
Das Projekt steckt zwar noch in einer frühen Phase und hat sicherlich hier und da noch kleine Schwächen, läuft aber bereits stabil genug, um im Alltag genutzt zu werden. Fertige Pakete für Windows und Linux stehen bereit, ebenso wie der offene Quellcode, falls ihr selbst Hand anlegen möchtet.
Du musst Regestriert sein, um das angehängte Bild zusehen.
Du musst Regestriert sein, um das angehängte Bild zusehen.
Im Anhang befindet sich nur der Quellcode.
Fertige Pakete für Linux und Windows hab ich hier:
Sie müssen registriert sein, um Links zu sehen.
In Linux muss der mpv Player vorhanden sein, beim Windows-Paket liegt er schon dabei.
Das Tool startet einen lokalen NodeJS Server auf Port: 3302
Heißt: Nach dem starten solltet Ihr das Webinterface über die Adresse:
Sie müssen registriert sein, um Links zu sehen.
erreichen könnenHowTo Kurzfassung:
- Wenn Du im Alltag Windows verwendest, nimmst Du das Paket: "PlaylistPlayer_0.x.x-win"
- Für Linux braucht man einen grafischen Desktop (KDE, Gnome, ...)
- Entpackst den ZIP Ordner
- Innerhalb der Entpackten Ordnerstruktur hast Du nun neben der .exe-Datei auch noch einen playlists-Ordner
- Kopiere vorhandene Playlisten (z.B. aus Portals oder eine Testline mit VoD) in den jeweiligen Unterordner (vod oder series)
- Öffne die PlaylistPlayer-win.exe
- Das Tool ist erstmal recht unspektakulär und zeigt nur ein schwarzes Fenster mit dem Hinweis: Server läuft auf Port 3302
- Windows fragt beim ersten Start, ob die Firewall einen Port für NodeJS öffnen darf (Erforderlich für Fernsteuerung, ohne Freigabe funktioniert es nur lokal)
- Nach dem starten solltest Du dann das Webinterface von dem Gerät, auf dem der PlaylistPlayer läuft unter der Adresse:
Sie müssen registriert sein, um Links zu sehen.erreichen können.
- Für die Fernsteuerung ist es dann die IP Adresse des Computers:
Sie müssen registriert sein, um Links zu sehen.
0.1.0 - Proof of concept
0.1.1 - Anpassungen für Windows Pakete
0.1.2 - Serien Watchlist und History + Erstes öffentliche Release
0.1.3 - Shuffle bei Filmlisten + Sortierung für Watchlist und History umgedreht, Limit bei Seriensuche erhöht + M3U8-Playlisterkennung
0.1.4 - Backend aufgeräumt und CSS Anpassungen
0.1.5 - Neue Kategorie: "Live" + Bugfixing
0.1.1 - Anpassungen für Windows Pakete
0.1.2 - Serien Watchlist und History + Erstes öffentliche Release
0.1.3 - Shuffle bei Filmlisten + Sortierung für Watchlist und History umgedreht, Limit bei Seriensuche erhöht + M3U8-Playlisterkennung
0.1.4 - Backend aufgeräumt und CSS Anpassungen
0.1.5 - Neue Kategorie: "Live" + Bugfixing
"Alle auswählen / keine auswählen" der Playlisten funktioniert in der 0.1.4 nicht- CSS für Smartphones braucht noch etwas "Liebe"
Socket-Verbindung zum MPV ist noch etwas instabilPlay/Pause, Stop und Fortschrittsanzeige sind gelegentlich nicht verfügbar
Serien VODs von Portals werden wohl mit UTF16 erstellt und machen beim einlesen Probleme.
Diese sollten zuvor nach UTF-8 konvertiert werden:
Diese sollten zuvor nach UTF-8 konvertiert werden:
Bash:
iconv -f UTF-16LE -t UTF-8 quelle_series_DE.m3u > quelle_series_DE_utf8.m3u
Entwicklerbereich
Die "src-Pakete" dürften für die meisten von Euch erstmal eher uninteressant sein und ist eher für folgende zwei Situationen gedacht:
...naja, nicht wirklich bauen.
Es ist ein einfaches NodeJS Projekt.
"nodejs" und "npm" müssen installiert sein.
- Misstrauen gegenüber fertige Pakete - man kann viel Blödsinn in einer .exe verstecken
- in der "src" ist der ganze Inhalt der .exe als Menschenlesbarer Code.
- Entwickler oder die, die es werden wollen
- hier gibt es viele fähige Leute, die Ideen oder Fixes beitragen könnten
...naja, nicht wirklich bauen.
Es ist ein einfaches NodeJS Projekt.
"nodejs" und "npm" müssen installiert sein.
Bash:
npm install
node server.js
Chrome-Addon
Achtung: Es ist nur eine "Spielerei" und das Addon ist nicht erforderlich.
Hier nutze ich nur die Fernsteuerungs-Funktion aus, um von einem anderen Computer Youtube-Links an mein Wohnzimmer-Computer zu senden.
da auf meinem HTPC nun ein Service läuft, der URLs annehmen und den MPV Player starten kann, hab ich nun an meinem Schreibtisch-PC ein kleines Chrome-Addon, das mir Links, unter anderem aus Mediatheken oder Youtube auf dem Fernseher-PC sendet.
Eine Liste unterstützter Webseiten findet sich hier:
Achtung: Es ist nur eine "Spielerei" und das Addon ist nicht erforderlich.
Hier nutze ich nur die Fernsteuerungs-Funktion aus, um von einem anderen Computer Youtube-Links an mein Wohnzimmer-Computer zu senden.
da auf meinem HTPC nun ein Service läuft, der URLs annehmen und den MPV Player starten kann, hab ich nun an meinem Schreibtisch-PC ein kleines Chrome-Addon, das mir Links, unter anderem aus Mediatheken oder Youtube auf dem Fernseher-PC sendet.
- Die Dateien manifest.json und background.js in einen Ordner legen
- IP Adresse des Hosts in beiden Dateien anpassen
- Navigiere zu den Erweiterungen: chrome://extensions
- Entwicklermodus öffnen
- Entpackte Erweiterung laden
Eine Liste unterstützter Webseiten findet sich hier:
Sie müssen registriert sein, um Links zu sehen.
JSON:
{
"manifest_version": 3,
"name": "Link an MPV senden",
"version": "1.0",
"permissions": ["contextMenus", "activeTab"],
"host_permissions": ["http://192.168.0.101:3302/"],
"background": {
"service_worker": "background.js"
}
}
Javascript:
chrome.runtime.onInstalled.addListener(() => {
chrome.contextMenus.create({
id: "sendLinkToMPV",
title: "Link mit MPV abspielen",
contexts: ["link"]
});
});
chrome.contextMenus.onClicked.addListener((info, tab) => {
if (info.menuItemId === "sendLinkToMPV") {
fetch("http://192.168.0.101:3302/api/play", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({ url: info.linkUrl })
})
.then(response => {
if (response.ok) {
console.log("Link erfolgreich an MPV gesendet.");
} else {
console.error("Fehler beim Senden des Links an MPV.");
}
})
.catch(error => {
console.error("Netzwerkfehler:", error);
});
}
});
Anhänge
Du musst angemeldet sein, um die Anhangsliste zu sehen.
Zuletzt bearbeitet: