ich habe noch einen Anlauf gestartet für Podcast-Support. Ein Prototyp läuft auf meinem Server für Podcasts aus ARD Sounds.
Das läuft so:
Auf dem ESPuino liegt eine Playlist mit Links auf meinen eigenen Server: Schematisch etwa http://server.de/redirect/urn:ard:show:xyz/0Richtiger Server siehe nächster Post.
urn:ard:show:xyz ist die ID der Sendung. Die kann man über die ARD Audiothek leicht herausfinden. /0 ist dann nur ein Index in den Feed.
Der Server lädt und cacht den Podcast-Feed und erzeugt dann einen Redirect (und schreibt auf http um). Bei 0 landet man bei der neuesten Folge, bei 1 bei einer älter, usw.
So muss man keine Daten auf dem ESPuino ändern, kann aber ein RFID so konfigurieren, dass immer die neueste Folge erzeugt wird. Viel Last auf dem Server erzeugt das auch nicht.
Die Folgen werden halt immer direkt gestreamt, das heißt offline funktioniert das nicht.
In meinen ersten Tests funktioniert das wunderbar. Soweit ich das sehe, widerspricht das auch nicht den Nutzungsbedingungen von ARD Sounds. Konzeptuell würde das für Podcast RSS-Feeds natürlich genauso funktionieren.
Ein bisschen Entwicklungszeit brauche ich noch, dann kann ich das auch probeweise hier für andere Nutzer öffentlich hosten.
@Dominic, du hattest vor langer Zeit mal so einen Bedarf. Besteht der noch?
Cool, ich freue mich über Feedback aus dem Kinderbetrieb. Meine Box hat das bisher gut mitgemacht. Manchmal wenn das Netzwerk schlecht ist, dauert halt alles ein bisschen und in einer älteren Firmware gab es Probleme wegen HTTPS. Bisher läufts aber stabil.
Wegen Github muss ich noch schauen, der Code ist gerade noch potthässlich und müsste erst ein bisschen aufgeräumt werden. Vermisst du Features? Ich will eigentlich nur noch Support für RSS-Feeds einbauen und dann wäre es für mich recht komplett.
Ja genau, die 20 Titel sind einfach nur ein default im Playlist-Generator. Man kann die Playlist aber auch mit einem Text-Editor kürzen oder erweitern. Hintergrund ist, dass manche Feeds in Sounds kein Ende haben und ich nicht so viele Requests an die APIs der ARD stellen will.
Beachte, dass in der Playlist ja auch nicht die Folgen direkt drinstehen. Der erste Playlist-Eintrag wird immer auf die neueste Folge weitergeleitet. Damit kann man immer neueste Inhalte hören, ohne auf dem ESPuino was ändern zu müssen und ohne die Podcasts mit dem Mikrocontroller parsen zu müssen.
Wenn man einfach nur ein größeres Archiv spiegeln will gibt es bessere Tools (MediathekView, etc.)
ich finde deinen Service spitze. Funktioniert bei den paar Tests sehr gut.
Aber ich hoste solche Server gerne lokal bei mir - ist mir immer lieber. Deshalb habe ich mich heute hingesetzt und habe einen lokalen Server erstellt. Mit Hilfe meiner Lieblings-KI ging das sogar ziemlich schnell.
Hi, ich wollte das gerade mit dem Maus Podcast - urn:ard:show:b4a27641ebfcb11b - probieren, aber leider klappt es nicht. Ich habe die Lösung von @openplayer sowie die öffentlich verfügbare Variante von OP probiert, aber bei beiden laufen die Tracks schnell durch, ohne das etwas wirklich abgespielt wird:
[346289] New playlist received with 20 track(s)
D [346289] Free heap: 147615
N [346784] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/0' is being played (1 of 20)
I [346785] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/0
N [346987] no cover image for webstream
N [348865] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/1' is being played (2 of 20)
I [348866] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/1
N [348959] no cover image for webstream
N [350946] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/2' is being played (3 of 20)
I [350947] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/2
N [350967] no cover image for webstream
D [351290] PN5180 wedge/removal suspected (505 ms since last good ISO-14443 read): silent re-init
D [351574] PN5180 silent heal recovered ISO-14443 card after 284 ms
N [353028] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/3' is being played (4 of 20)
I [353029] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/3
N [353157] no cover image for webstream
N [355114] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/4' is being played (5 of 20)
I [355115] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/4
N [355144] no cover image for webstream
D [355329] PN5180 wedge/removal suspected (505 ms since last good ISO-14443 read): silent re-init
D [355611] PN5180 silent heal recovered ISO-14443 card after 282 ms
N [357193] 'http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/5' is being played (6 of 20)
I [357196] last URL: http://espuionpod.domain.tld/redirect/ard/urn:ard:show:b4a27641ebfcb11b/5
N [357260] no cover image for webstream
Wechsle ich die URL zu https, dann stürzt der espuino gefühlt ab.
Lokal auf dem Rechner klappen die Playlists 1A, mit https und http
Ich nehme an das log ist von dem Service von @openplayer ? Ich vermute
espuionpod.domain.tld
Ist eine Platzhalter-Adresse, die du so anpassen musst, dass der espuino auch mit dem Server spricht.
Wenn ich bei ESPuino Podcast Helper die Show ID eingebe geht’s auch. Hattest du vielleicht noch ein Leerzeichen am Ende? Das bringt den leider wirklich durcheinander
Cool! Die Implementierung ist auch kein Hexenwerk. Ich hab mich nur ziemlich gefreut, als mir die Lösung mit den Indizes und Redirects eingefallen ist.
Ich habe es inzwischen gelöst. Es war lokale Dummheit. Der espuino hatte im Router Internetverbot. Da aber der Download von firmware updates via github doch immer geklappt hat, muss ich die Internet Sperrfunktion von Asus Routern hinterfragen. Anderes Thema.
domain.tld ist ein Platzhalter für meine echte Domain auf der die selbst-gehosteten Software von @openplayer läuft.