In eigener Sache: iptv.blog Datenbank

Gesagt, getan. Es gibt die Multicastadressliste jetzt auch in maschinenlesbarer Form als JSON und XML.
Ist von der Struktur jetzt erstmal an die Liste selbst angelehnt und enthält alle Daten, die man zum Erstellen der Listen braucht oder sagen wir, die, die ich auch selbst verwende.

Sollte das der Renner werden, können wir auch über andere “Views” nachdenken, z.B. “channel” (EPG Position und Logo) und “media” (der Stream selbst in den jeweiligen Qualitätsstufen) auftrennen, Kanalpositionen extra etc. Das würde ich aber dann wohl auch ausserhalb der Multicastadressliste machen und dann auch gleich alle Kanäle inkl. Unicast und verschlüsselt mit anbieten.

2 Like

Hey Grinch,

die JSON ist Goldwert. Ich habe mir ein kleines PHP Script gebastelt, welches die JSON decoded und mir eine m3u in dem Format erstellt, wie ich es aktuell benötige. Das ganze rufe ich über einen Cronjob auf, sodass ich deine Änderungen nicht verpasse.
Schön wären jetzt noch das Selektieren, wie in Punkt 1 besprochen (ggf. kann ich das auch in PHP rausfiltern) und die EPG Liste :wink:

Übrigens, die Logos werden bei mir in iPlayTV in Farbe dargestellt, obwohl ich mich auf deine Telekom Links berufe (kann das sein? Sind doch alle s/w)

Trotzdem, danke dir vor allem für die schnelle Antwort. Bei Bedarf, kann ich das Script hier gerne teilen.

Grüße

.- fox

1 Like

Ich hab die Rytec IDs mal mit aufgenommen. Sind in der Playlist für tv headend enthalten: https://db.iptv.blog/multicastadressliste/tvheadend/rytecDE_Basic
Oder in den XML und JSON Listen, wenn man den query-Parameter include_epg anhängt, also z.B. https://db.iptv.blog/multicastadressliste.json?include_epg

Grinch -> Richtig gut. Works like a charm :wink:

Danke dir für deine Mühen
Schön wäre jetzt nur noch die Unterscheidung HD/SD. Aber soweit ich weiß, werden die öffentlich rechtlichen SD bald eh abschalten ??
Von daher löst sich das Problem langfristig wohl eh von selbst.

Mit Unterscheidung HD/SD meinst du, dass wenn ein HD da ist, der SD nicht noch dazu soll?
Basierend auf dem JSON sollte das relativ leicht machbar sein. Die Sortierung ist nach Kanalposition, Qualität. Es kommt immer zuerst der HD, dann der SD. D.h. du könntest beim SD prüfen, ob die Kanalposition bereits belegt ist und dann überspringen. Oder du gruppierst nach Sendernamen und nimmt immer den ersten Eintrag.

Mal ein kleines Powershell Beispiel:

$channels = Invoke-RestMethod 'https://db.iptv.blog/multicastadressliste.json?include_epg'
$r = @{}
foreach($c in $channels.channellist) {
    if(!$r.ContainsKey($c.channel_pos)) {
        $r.Add($c.channel_pos, $c)
    }
}
"#EXTM3U"
$r.Values | sort -Property channel_pos | ForEach { 
    if($_.epg_channels -ne $null -and $_.epg_channels.rytecDE_Basic -ne $null){$id = ' tvg-id=""{0}""' -f $_.epg_channels.rytecDE_Basic}else{$id = ''} 
    '"#EXTINF:-1 tvg-name=""{0}""{1} group-title=""Entertain"" tvg-logo=""{2}"",{0}"
rtp://{3}@{4}:{5}' -f $_.media_name, $id, $_.channel_logo, $_.media_multicast_sourceip, $_.media_multicast_ip, $_.media_multicast_port }

Damit kommt bis auf das Logo etwas sehr ähnliches wie in deiner ursprünglichen Liste raus:

#EXTM3U
"#EXTINF:-1 tvg-name=""Das Erste HD"" tvg-id=""ARD.de"" group-title=""Entertain"" tvg-logo=""http://programm-manager.telekom.de/media/3711d16d0e3570276ebba175620385b5f4ff18f4.png"",Das Erste HD"
rtp://87.141.215.251@232.0.20.35:10000
"#EXTINF:-1 tvg-name=""ZDF HD"" tvg-id=""ZDF.de"" group-title=""Entertain"" tvg-logo=""http://programm-manager.telekom.de/media/35d71e6d09f3551cb4053da8487b3028cf9339cd.png"",ZDF HD"
rtp://87.141.215.251@232.0.20.234:10000
"#EXTINF:-1 tvg-name=""RTL SD"" tvg-id=""RTL.de"" group-title=""Entertain"" tvg-logo=""http://programm-manager.telekom.de/media/677f684aabfc03b8110b90e5b4ea5b3ac3e5d578.png"",RTL SD"
rtp://87.141.215.251@232.0.10.135:10000
...

Sodele, heute mal hingesetzt und die ganzen xmltv.se IDs ergänzt. Wer lieber dort seine EPG Daten hernimmt, findet dazu jetzt auch eine Playlist.

Wer Fehler findet, bitte melden. Ich kann mittlerweile nicht mehr gerade schauen. Wer noch mal behauptet, es gäbe nicht genug Sender, darf beim nächsten EPG Anbieter das Mapping für alle Sender machen :rofl:

Ausserdem sind die EPG IDs wie angekündigt jetzt immer in den XML und JSON Varianten enthalten.

2 Like

schaut gut aus :wink: