IPTV (vlc2iptv) welche VPID/APID/SPID params sind nötig

  • Moin,


    mal ein anderes Thema - ich bastele an einer Streaming Lösung für die Video-Streams von npo.nl (Niederländisches TV). Als System setze ich ein yaVDR 0.5 ein, unmodifiziert was avcodec, vlc usw betrifft.


    Was ich schon laufen habe, ist mit XBMC und dem plugin Nederland24 schauen zu können.


    Grundsätzlich ist der Ablauf bei npo.nl wie folgt:


    1) Via API einen Session key holen
    2) Dann eine .m3u8 Datei aus dem CDN holen und an den Player geben



    Wenn ich das "nachstelle", dann klappt auch alles auf dem MacBook mit VLC - ich kann also einen Stream abspielen. Die URL sieht so aus:


    "http://livestreams.omroep.nl/live/npo/tvlive/ned1/ned1.isml/ned1.m3u8?hash=hierstehteinhash&type=http&protection=url"

    VLC startet damit auf dem Desktop und ich habe NL1 im Fenster, kann stundenlange gucken ;)

    Was ich als nächstes ausprobiert habe, ist es in der Channels.conf einen Kanal anzulegen:


    Code
    :NLTV
    NL1-iptv;IPTV:1:S=0|P=0|F=EXT|U=vlc2iptv|A=1:I:0:1=1:1=@1:0:0:1:0:0:0


    Und die entsprechende Datei (NL1-iptv.conf) mit der URL.


    Jetzt habe ich in VDR den Kanal, kann hintunen, vlc2iptv macht was - aber es ist kein Bild da.


    Und, ganz ehrlich, ich verstehe die Doku im Wiki, die Threads hier im Forum und das Readme beim Plugin einfach nicht. Auch die Datei vlc2iptv habe ich offen und angeschaut - aber mir erschliesst sich nicht, welche der :0: :1=1: usw ich wie setzen muss, damit er mir auch ein Bild gibt.

    Kennt sich da jemand mit aus? Laut VLC auf dem Mac gibt es 1 Video Stream und 1 Audio Stream.


    Die m3u8 sieht so aus:


    Code
    #EXTM3U#EXT-X-VERSION:1## Created with Unified Streaming Platform(version=1.5.7)#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=279840,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=288x162ned1-audio%3D64000-video%3D200000.m3u8#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=665680,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=416x234ned1-audio%3D128000-video%3D500000.m3u8#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=877680,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=544x306ned1-audio%3D128000-video%3D700000.m3u8#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1089680,CODECS="mp4a.40.2,avc1.66.30",RESOLUTION=608x342ned1-audio%3D128000-video%3D900000.m3u8#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=135680,CODECS="mp4a.40.2"ned1-audio%3D128000.m3u8



    Ich bin für jede Hilfe dankbar - falls ich das hinbekomme share ich ein modifziertes Script (welches den Hash holt) und die Einträge natürlich zurück. Wer dann über eine NL IP verfügt kann die Streams schauen, aufnehmen usw. (<-- das ist ja mein Ziel ;) )


    VG & Danke,
    J*

  • Code
    NL1-iptv;IPTV:1:S=0|P=0|F=EXT|U=vlc2iptv|A=1:I:0:1=1:1=@1:0:0:1:0:0:0

    Bzgl. der Frequenz bzw. Unique Enumeration gibt es eine Empfehlung im Readme:


    Code
    - Multiple channels with identical service id should have frequency  difference of 4 or greater. It's recommended to use frequencies in decades  (10, 20, 30, 40, ...) for all IPTV channel entries.


    Also dann eher so:

    Code
    NL1-iptv;IPTV:10:...


    Gibt es einen Grund warum Du "A=1" definierst? Effektiv rufst Du damit

    Code
    #/> /PFAD/vlc2iptv 1

    auf.


    Wenn Du keine PIDs, SID, NID, TID hast alles erstmal 0 setzen bzw. mit einer Test-Aufnahme von 60sek in ein TS Datei auf CLI mit "dvbsnoop" die korrekten Werte rausfinden.


    Signalquelle ist "I", korrekt, Symbolrate hast'e nicht, "0", VPID würde ich "2" probieren, da kein Radio-Kanal, APID, TPID, hast'e nicht, also "0", CAID gibt es offensichtlich auch nicht, ebenso "0", SID darf glaube ich nicht "0" sein, also erstmal "1", NID, TID, RID auch jeweils "0":


    Siehe: http://www.vdr-wiki.de/wiki/index.php/Channels.conf


    Regards
    fnu

    HowTo: APT pinning

  • Wenn Du keine PIDs, SID, NID, TID hast alles erstmal 0 setzen bzw. mit einer Test-Aufnahme von 60sek in ein TS Datei auf CLI mit "dvbsnoop" die korrekten Werte rausfinden.

    Merci ... ich hab dann ein Stück schwarze Aufnahme mit Ton. dann Probier ich mal, ob ich da was finde. :) Erstmal die Hilfe zu dvbsnoop durchlesen.




    Grüße,
    Alex

  • Das sollte schon erstmal ohne bzw. mit den Nullen laufen, nur da Werte setzen wo Du sicher was weißt. SID,NID,TID wären nachher wichtig falls Dein Stream gar Teletext und/oder EPG (EIT) enthalten sollte.


    Wenn Du dem Script keinen Parameter übergeben möchtest, sollte IMHO "A=0" sein. Was ist das für Stream und welche Kodierung? MPEG2, h.264, MPEG4 ...


    Ich würde mich an rofafor's Beispiel aus dem Readme erstmal weiter hangeln:


    Code
    TV6;IPTV:60:S=1|P=0|F=EXT|U=iptvstream.sh|A=0:I:0:0:680:0:0:6:0:0:0


    Die SID ist hier "6", sollte auch gehen, Hauptsache nicht "0".

    Code
    NL1;IPTV;10:S=1|P=1|F=EXT|U=vlc2iptv|A=0:I:0:0:680:0:0:1:0:0:0


    S=1 & P=1 dann scannt das Plugin nach den korrekten SID, NID, TID, PIDs.


    Regards
    fnu

    HowTo: APT pinning

  • Hi fnu,


    naja - ich weiss eigentlich gar nichts wie's scheint ;) Ist ein HLS Stream mit h264 soweit ich das verstehe. Ich bin mir aber nicht mehr sicher, ob der vlc in der vorliegenden Version das kann - der auf dem Macbook ist 2.1.4, auf dem vdr steckt noch ein "alter"...


    Ich war so "blauäugig" zu glauben, ich könnte dem iptv-Plugin einfach einen Stream hinschmeissen und dann macht er den Rest ;) hehe. Schade, aber ich beiss mich da schon noch durch, deswegen mach ich ja den ganzen Zinnober, auch mit Docker usw.


    VG,
    Alex

  • Ich war so "blauäugig" zu glauben, ich könnte dem iptv-Plugin einfach einen Stream hinschmeissen

    Wenn Du alles "0" läßt wo geht, machst Du das ja im Prinzip auch ... ;)


    Das Script "vlc2iptv" wird gesichert im Hintergrund auch aufgerufen?


    Regards
    fnu

    HowTo: APT pinning

  • Im Syslog steht


    IPTV streamer thread started (pid=22100, tid=22413, prio=high)




    Und vlc läuft laut top/ps -ef auch


    ...


    Ich muss heute Abend mal mit dem VLC den TS erzeugen und in eine Datei werfen, dann mal schauen ob der überhaupt ein Bild mit da rein packt oder nicht.


    Merci erstmal.


    VG,
    Alex

  • Ich muss heute Abend mal mit dem VLC den TS erzeugen und in eine Datei werfen, dann mal schauen ob der überhaupt ein Bild mit da rein packt oder nicht.

    Die Aufnahme Schnipsel mache ich immer mit "multicat".


    Sowas in der Art mache ich ja immer für die Entertain-Kanäle:



    Das habe ich mal rofafor bekommen und auch schon über die Mailingliste verschickt gehabt, ich glaube für A1 TV. Die Details sind nicht Deine, sicher, aber in Grundzügen muss das ähnlich laufen.


    Dennoch sollte zumindest mal was kommen ohne die Details zu PID,SID,NID,TID ...


    Regards
    fnu

    HowTo: APT pinning

  • Mich würde mehr interessieren ob das geklappt hat, wenn Du den "channels.conf" Eintrag wie oben beschrieben ausgeführt hast?

    HowTo: APT pinning

  • Mich würde mehr interessieren ob das geklappt hat, wenn Du den "channels.conf" Eintrag wie oben beschrieben ausgeführt hast?

    Ne, sorry - hatte ich vergessen zu erwähnen. Es hat nicht geklappt. Ich bin aber schon weiter jetzt, denn mit der VLC-Version in der yaVDR Distri ist der gleiche Sender, gleicher Aufruf nur Ton. Ist die 2.0.8 .. mit der 2.1.4 auf dem Desktop wird das Bild mit in den Output gepackt... ich vermute da liegt der Hund begraben. Das HTTP-Live-Streaming ist ja noch nicht "so" alt.... Ziehe gerade ein VM nebendran hoch, damit ich das unter Linux (Ubuntu 14.04.) mit yavdr-Unstable mal austesten kann.


    Mehr später/morgen.


    VG.
    Alex

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!