Closed kobaje closed 4 years ago
Kannst du in der Senderliste neben einem Sender auf "View Now" klicken? Dann sollte sich ein Downloadfenster deines Browsers öffnen. Lade die Datei herunter und achte darauf, wie viel Daten übertragen werden. Bei z.B. Das Erste HD sollte 1 MB/s (8 MBit/s) als Downloadgeschwindigkeit angezeigt werden. Auf den ersten Blick vermute ich, dass es in Docker ohne Host Networking (--network host
) gestartet wurde 😊
Kannst du zudem den Debug Output (App mit Umgebungsvariable DEBUG="iptv-restream:*"
starten) posten? ✌️
Wenn ich view now anklicke bekomme ich "Cannot GET /://127.0.0.1:3000/live/87.141.215.251@232.0.20.35:10000". Selbst wenn ich die seltsame URL auf "127.0.0.1:3000/live/87.141.215.251@232.0.20.35:10000" bekomme ich nur "Warten auf 127.0.0.1...".
Ich habe Docker (Win 10) so "docker run -d --restart always -p 3000:3000 -e HOST="0.0.0.0" --name IPTV-ReStream nthumann/iptv-restream:latest" gestartet.
Wo finde ich das Debug Log? Habe Docker so "docker run -d --restart always -p 3000:3000 -e HOST="0.0.0.0" --name IPTV-ReStream nthumann/iptv-restream:latest DEBUG="iptv-restream:*"" gestartet.
Selbst wenn ich die seltsame URL auf "127.0.0.1:3000/live/87.141.215.251@232.0.20.35:10000" bekomme ich nur "Warten auf 127.0.0.1...".
Dieses Verhalten müsste korrekt sein, da dein Browser sich zwar mit dem Server verbindet, dieser aber keine Daten losschickt.
Ich habe Docker (Win 10) so "docker run -d --restart always -p 3000:3000 -e HOST="0.0.0.0" --name IPTV-ReStream nthumann/iptv-restream:latest" gestartet.
Docker unterstützt unter Windows und macOS leider kein Host Networking, sondern nur unter Linux. Deshalb kannst du IPTV-ReStream leider nur ohne Docker betreiben. Die Anleitung dazu findet du hier ✌️
Wo finde ich das Debug Log? Habe Docker so "docker run -d --restart always -p 3000:3000 -e HOST="0.0.0.0" --name IPTV-ReStream nthumann/iptv-restream:latest DEBUG="iptv-restream:*"" gestartet.
Damit die Umgebungsvariable DEBUG
richtig erkannt wird, musst du sie vor das Image im Befehl ziehen und mit -e
markieren: docker run [...] -e DEBUG="iptv-restream:*" nthumann/iptv-restream:latest. Dann kannst du die Logs mit
docker logs -f IPTV-ReStream` einsehen 😊 Aber wie gesagt: Unter Windows kannst du Docker hier leider nicht verwenden.
Ok, danke. Dachte mit der Portzuweisung ginge es. Wenn ich es als JS laufen lasse bekomme ich nach "view now": "receiver): Error (receiver): Error: bind EADDRNOTAVAIL 232.0.20.35:10000"
ich bekomme auch keine Station im Webfront angezeigt wenn ich mit VLC einen Stream abgreifen will. VLC zeigt mir:
Ihre Eingabe konnte nicht geöffnet werden: VLC kann die Medienadresse 'http://192.168.2.110:3000/live/87.141.215.251@232.0.20.35:10000' nicht öffnen. Für Details bitte im Fehlerprotokoll nachsehen.
In der Eingabeaufforderung in der ich das JS gestartet habe bekomme ich:
daserstehd zdfsd daserstesd zdfsd zdfhd zdfsd zdfsd zdfsd 127.0.0.1 - - [11/May/2020:09:25:04 +0000] "GET /live/station/ZDFSD HTTP/1.1" 302 58 "-" "VLC/3.0.8 LibVLC/3.0.8" 127.0.0.1 - - [11/May/2020:09:25:04 +0000] "GET /live/87.141.215.251@232.0.10.234:10000 HTTP/1.1" 500 73 "-" "VLC/3.0.8 LibVLC/3.0.8" 127.0.0.1 - - [11/May/2020:09:25:04 +0000] "GET /live/87.141.215.251@232.0.10.234:10000 HTTP/1.0" 500 73 "-" "VLC/3.0.8 LibVLC/3.0.8"
Ich glaube da ist mir ein kleiner Fehler unterlaufen: Kannst hier (https://github.com/n-thumann/IPTV-ReStream/blob/master/src/providers/stream.ts#L19) mal den zweiten Parameter (mcast_group
) entfernen, neu transpilieren (tsc
) und schauen, ob es dann geht? ✌️
Optimal, jetzt kann ich mit VLC auf dem Server den Stream abrufen.
Wenn ich das jetzt mit der Adresse "http://192.168.2.110:3000/live/87.141.215.251@232.0.10.234:10000" von einem anderen Rechner im Netzwerk versuche gehts nicht (der server hat die 192.168.2.110). VLC meldet "VLC kann die Medienadresse nicht öffnen".
Firewall des Servers habe ich testweise ausgeschaltet, daran liegt es nicht. Hast du da noch ne Idee?
Ist die Umgebungsvariable HOST
auf 192.168.2.110
oder 0.0.0.0
gesetzt? Standardmäßig läuft die App nur auf dem Loopback Interface.
Ich hab an den Variablen nichts geändert. Also muss ich Host auf die IP des Servers setzen? Wo sind die Variablen hinterlegt?
In der Windows CMD klappt das meines Wissens nach mit set
, also set HOST=192.168.2.110
(bzw. 0.0.0.0
, wenn du auf allen Interfaces lauschen willst) und danach npm start
✌️
Ok, vielen dank. Das hat geklappt. Eigentlich wollte ich den Stream über eine WireGuard Verindung übertragen, um mir den Reverse Proxy zu sparen. das klappt aber leider nicht. Dann werde ich mich jetzt mal mit nginx beschäftigen. Die nächste Frage kommt bestimmt ;-) Vielen Dank soweit
Habe es bei mir gerade mit OpenVPN und Wireguard probiert und bei mir klappt es einwandfrei 😊 Hast du auf das richtige Interface geachtet (im VPN hat dein Rechner eine andere IP als die im normalen Netzwerk)?
Echt? Also geht das doch und ich bin nur schon wieder unfähig. Das war eigentlich der Grund mit dem ganzen Projekt anzufangen. Ich will von Unterwegs die Streams über iPad schauen.
Mein Server hat im WireGuard-Netz die IP 192.168.3.1. Ich habe mein iPad per WG mit dem Server verbunden und versucht per VLC App über http://192.168.3.1:3000/live/87.141.215.251@232.0.10.234:10000 den Stream anzufordern. Ich habe auch die lokale IP versucht. HOST habe ich testweise als 192.168.2.110 (lokale IP), 192.168.3.1 (WG IP) und localhost gesetzt.
Wie du merkst eher Try and Error. Leider bisher nur Error
Das Problem muss irgendwo bei WG liegen. Wenn ich im lokalen WLAN bin kann ich den Stream über 192.168.3.1:3000/... abrufen wenn ich das Interface per Set HOST auf diese Adresse gesetzt habe.
Ich kann den Server über WG auch anpingen.
Es scheint in der Tat an WG zu liegen. Vielleicht HOST
auf 0.0.0.0
setzen, um testweise auf allen Interfaces zu lauschen? 🤔 Sind denn andere Dienst des Servers (z.B. Webserver, netcat) über WG erreichbar?
0.0.0.0 als Host habe ich versucht. Ich kann meinen Router und mein Smart Home Server durch den Tunnel erreichen. Remote Desktop geht auch. Ich habe aber mittlerweile einen nginx reverse proxy (inklusive SSL, BASIC Auth und cloudflare) was für mich schon eine ziemliche Leistung ist :-) Jetzt finde ich leider keinen ordentlichen Streaming Player für iOS. VLC spielt den Stream zwar, aber die Playlisten funktionieren weder als Xspf noch als m3u. Neverending Story
Sehr schön! 👏 In der XSPF sind eigentlich nur die einzelnen URLs zu den Streams hinterlegt. Kannst du prüfen, ob die URLs in der XSPF der entsprechen, die bei manueller Eingabe funktioniert?
Die Playlist funktioniert auf dem Laptop ohne Probleme mit VLC. Nur die iOS Version kommt nicht damit zurecht. Liegt aber an vlc. Finde leider bisher keine andere App die streams mit Playlisten unterstützt.
Am 18.05.2020 um 22:01 schrieb Nicolas Thumann notifications@github.com:
Sehr schön! 👏 In der XSPF sind eigentlich nur die einzelnen URLs zu den Streams hinterlegt. Kannst du prüfen, ob die URLs in der XSPF der entsprechen, die bei manueller Eingabe funktioniert?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
Konntest du das Problem mit VLC unter iOS lösen? Würde die Issue gerne schließen, wenn die Probleme mit IPTV-ReStream behoben sind? ✌️
Hallo,
Ja, läuft einwandfrei. Habe die App GSE IPTV gefunden und die taugt auch. Nur falls jemand mitliest
Grüße und vielen Dank
Am 29.05.2020 um 14:09 schrieb Nicolas Thumann notifications@github.com:
Konntest du das Problem mit VLC unter iOS lösen? Würde die Issue gerne schließen, wenn die Probleme mit IPTV-ReStream behoben sind? ✌️
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
Hallo, hier bin ich nochmal, nachdem ich das Webinterface erreiche hängt es nun an der Übertragung des Streams. Wenn ich mittels VLC und der Adresse http:\192.168.2.110:3000\live\87.141.215.251@232.0.20.35:10000 den Stream von meinem Server (192.168.2.110) abrufe wird eine Verbindung aufgebaut aber weder Bild noch Ton übertragen. Das Webinterface zeigt die Verbindung wie im Screenshot an.
Was mache ich falsch? Vielen dank für die Hilfe!