[ANNOUNCE] UPnP-AV/DLNA-Plugin für den VDR (0.0.2-alpha)

  • Den Bug kenne ich, das ist bei mir auch manchmal so... aber nicht immer, deswegen weiß ich nicht wieso der manchmal hängt. Ich vermute, dass in manchen Fällen kein Release durch den Player kommt und der Server nun nicht weiß, wann er aufhören soll.

    mein Philips 7500/2 beendet scheinbar den Stream nie Ordnungsgemäßg :( Muss dazu immer den Player ausschalten, dann bekommt es das Plugin mit.
    Ich habe es auch testweise mit Mediatomb+ Streamdev probiert also eine streamdev url als external url in den mediatomb eingetragen.. Nach ca. 20 Sekunden bemerkt mediatomb/streamdev die Tote Leitung und gibt das Device wieder frei.
    Ich hab mir auch mal deine Sourcen angeschaut, aber keine Stelle gefunden wo man einhkaen könnte. Wahrscheinlich müsste man das direkt in der libupnp machen oder?

    1.: ist aufgenommen und wird so umgesetzt: "<Sendername> <Sendung>". Man kann das über's Setup einstellen, was man anzeigen möchte. Es gibt dann:
    Sender, Sendung, Sender & Sendung

    konfigurierbar, das hört sich super an!


    Zitat

    2.: Gruppierung muss ich erst prüfen, ob das geht, da DLNA sehr restriktiv bei TVs ist. Ich muss schauen, was sich mit dem Standard vereinbaren lässt.


    mehrere verschachtelte Container sind doch legitim und auch so vorgesehen oder meinst du etwas anderes?

  • Das kann man auch selbst implementieren, in dem man nach einem Timeout von X Sekunden nach der letzten Übertragung die Verbindung kappt. Das kann ich prüfen. Ist nicht schön, aber sollte zumindest bei langen Pausen helfen.


    Zu den Gruppen: legitim ja, aber bei der Impementation von DLNA-Tuner-Container bin ich mir nicht sicher, wie das die Geräte interpretieren. DLNA-Tuner sind besondere Container mit zusätzlichem Metatag "dlna:containerType" mit Tuner_1_0 als Wert. Ich verspreche mir davon, dass Fernsehgeräte diesen Container als Tuner anerkennen und gewöhnliches Zapping erlauben. Es gibt mit DLNA 1.5 ein paar nette Features, die mit Tunern abgebildet werden können und da gibt es eben keine Gruppen beziehungsweise - was hoffentlich der Fall ist - ich habe noch nicht herausbekommen, wie ich die Gruppen darstelle.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Das kann man auch selbst implementieren, in dem man nach einem Timeout von X Sekunden nach der letzten Übertragung die Verbindung kappt. Das kann ich prüfen. Ist nicht schön, aber sollte zumindest bei langen Pausen helfen.

    ja, das würde das Problem einigermaßen mildern. Schon blöd wenn sich ein Hersteller nicht 100% an den Standard hält.


    Zitat


    Zu den Gruppen: legitim ja, aber bei der Impementation von DLNA-Tuner-Container bin ich mir nicht sicher, wie das die Geräte interpretieren. DLNA-Tuner sind besondere Container mit zusätzlichem Metatag "dlna:containerType" mit Tuner_1_0 als Wert. Ich verspreche mir davon, dass Fernsehgeräte diesen Container als Tuner anerkennen und gewöhnliches Zapping erlauben. Es gibt mit DLNA 1.5 ein paar nette Features, die mit Tunern abgebildet werden können und da gibt es eben keine Gruppen beziehungsweise - was hoffentlich der Fall ist - ich habe noch nicht herausbekommen, wie ich die Gruppen darstelle.

    wow das klingt echt interessant. Welche Geräte verstehen denn schon DLNA 1.5? Die neue Samsung D Serie vielleicht?

  • dazu musst du dir lediglich die Server-Config des Players ansehen. Jedes DLNA/Upnp-Gerät hat eine Webseite, die im Browser angezeigt werden kann. Diese Webseite wird beim Discovery mitgeliefert. Evtl. musst du mit wireshark mal schauen, wie die heißt.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Hallo,


    Erstmal großes Lob an methodus, geniales Plugin :tup


    Leider funktioniert bei mir das Streamen von Live TV nicht und ich wollte fragen ob mir jemand weiterhelfen kann, sozusagen den Schubs in die richtige Richtung geben kann:


    Folgende Konfig:
    ubuntu: uname -r = 2.6.38-8-generic
    vdr 1.7.17 (mit apt-get installiert + source files geladen)
    UPnP Plugin 0.0.2 mit vdr sourcen compiliert => keine Fehler
    Ladereihenfolge der Plugins: upnp svdrpservice svdrposd streamdev-server


    Am DLNA Client (PS3, C6700 Samsung TV & Andromote) sehe ich den Server, kann in den Ordnern navigieren und Aufnahmen direkt am Samsung TV ansehen.
    Wenn ich aber auf einen Livestream schalten will (hab nur Pro7 in der channels.conf, sobald da mehr drin sind ist alles wild durcheinander gemixt, ohne Ordnung, aber das ist ein anderes Thema und (für mich) erstmal nicht so wichtig) passiert folgendes im log:



    Leider hat meine Suche im Netz nach "UPnP server error:No such channel with ID" nicht viel ergeben:
    http://lmgtfy.com/?q=%22UPnP+s…o+such+channel+with+ID%22
    .
    Wenn jemand einen Tip für mich hat wär ich sehr dankbar, denn das Streamen von LiveTV wäre super.


    Die Problematik mit dem shutdown (Post 73) hab ich auch:

    Code
    May 28 11:26:41 VCR vdr: [1359] Power button pressed
    May 28 11:26:41 VCR vdr: [1359] warning: VDR will shut down later - press Power to force
    May 28 11:26:41 VCR vdr: [1359] ERROR: no OSD provider available - using dummy OSD!
    May 28 11:26:41 VCR vdr: [1359] closing SVDRP connection
    May 28 11:26:42 VCR vdr: [1359] connect from 127.0.0.1, port 55292 - accepted
    May 28 11:26:42 VCR vdr: [1359] confirm: The UPnP server is still running. - shut down anyway?
    May 28 11:26:42 VCR vdr: [1359] warning: The UPnP server is still running. - shut down anyway?


    Beim normalen shutdown ist das nicht so problematisch, aber die automatische Abschaltfunktion nach Aufnahmen ist damit ausgehebelt.


    Trotzalledem find ich den Ansatz des Plugins genial und nochmals vielen Dank an den Ersteller.


    biggap

  • Ich glaube dass irgendwas mit dem Parsen der ChannelID fehlschlägt. Weil normalerweise sind die Zahlen in der ChannelID niemals so groß sind.


    Häng mal bitte die metadata.db an, die in der Regel im Pluginverzeichnis liegen sollte. Ich glaube, dass die ChannelID falsch in die DB geschrieben wird.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • vielleicht werden auch die für den Samsung nötigen zusätzlichen Headerinfos nicht korrekt übertragen. Evtl. mal mit wireshark checken.
    @methodus:werden die Custom Headers für die Samsung Tvs automatisch von deinem Plugin mit angehängt, wenn man die gepatchte libupnp verwendet?

  • Nein, noch nicht. Ich hab nur an einer Stelle einen fixen Test gemacht, der zumindest bei Samsungs lief. Weiter bin ich noch nicht gekommen.


    Die Custom Header sind nicht das Problem biggap, die ChannelIDs sind in der Tat Blödsinn, ich weiß aber noch nicht, was der Fehler ist. Sieht ganz stark nach einem Segfault aus, der jedoch nicht knallt.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Ich glaube dass irgendwas mit dem Parsen der ChannelID fehlschlägt. Weil normalerweise sind die Zahlen in der ChannelID niemals so groß sind.


    Häng mal bitte die metadata.db an, die in der Regel im Pluginverzeichnis liegen sollte. Ich glaube, dass die ChannelID falsch in die DB geschrieben wird.

    Da ich den gleichen Fehler hab - hier mal meine metadata.db und channels.conf. Vielleicht kannst Du darin was finden.
    Gruss und vielen Dank, MaxWhite

  • Okay... weird. Deine metadata.db ist korrekt. Die ChannelID schein korrekt zu sein. Kannst du mir noch die syslog liefern?


    Code
    cat syslog | grep upnp

    reicht vollkommen


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Hallo,


    Besten Dank für deine Hilfe, ich hab dir die channels.conf die metadata.db und das ergebnis von

    Code
    tail -f /var/log/syslog | grep -i upnp

    von mir jetzt auch angehängt.


    Darin ist der Start vom vdr zu sehen, und ich versuch vom Samsung TV den einzigen Sender Pro7 abzuspielen => Fehler im log
    Anschließend spiele ich noch eine Aufnahme (Simpsons)
    ab, und das funkt wunderbar.



    Besten Dank
    biggap

  • Okay... weird. Deine metadata.db ist korrekt. Die ChannelID schein korrekt zu sein. Kannst du mir noch die syslog liefern?


    Code
    cat syslog | grep upnp

    reicht vollkommen

    Im Anhang mein ganzes Syslog und hier der ausschnitt der IMO was damit zu tun haben könnte: (Habe versucht "ZDF" via PS3 zu streamen.)


  • Im Anhang mein ganzes Syslog und hier der ausschnitt der IMO was damit zu tun haben könnte: (Habe versucht "ZDF" via PS3 zu streamen.)


    Code
    May 30 08:45:28 vdr-2 vdr: [10018] UPnP server message: Appending RTL Television to didl


    Ich versteh das nicht, du willst ZDF streamen, er findet aber RTL? Hier gibts doch noch arge Probleme mit der Metadatenbank. Ist notiert und wird behoben.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Ich versteh das nicht, du willst ZDF streamen, er findet aber RTL? Hier gibts doch noch arge Probleme mit der Metadatenbank. Ist notiert und wird behoben.



    Hm, bei mir scheint er nichts anderes zu finden, aber ich hab auch nur ProSieben in der channels.conf....:


    Und meine channel ID ist etwas länger, leiden wir trotzdem unter dem selben Problem? Hat das evtl. etwas mit der Version zu tun?
    Ich hab vdr 1.7.17 und MaxWhite hat 1.7.16 soweit ich mich erinnern kann.


    Besten Dank
    biggap

  • Das kann wie gesagt nur an einem freigegebenen Objekt liegen, dass trotzdem noch ausgelesen wird. Ich hatte jede Menge falsche Speicherzugriff und hoffe das jetzt langsam in den Griff zu bekommen.


    Medion Digitainer; AsRock B75 Pro3-M, Celeron G540; Kingston Value 4GB
    Samsung SpinPoint 250GB 2,5"; Samsung WriteMaster DVD-Brenner;
    TT-S2-6400, 2x TT-S2-1600, Ubuntu 12.04 mit YaVDR-Paketen. VDR 1.7.27, UPnP/DLNA-Plugin

  • Hallo zusammen,


    Lebt das Plugin noch?
    Ich habe versucht das Plugin auf meinem System (siehe Signatur) aus dem GIT zu kompilieren. Nach anfänglichen Problemen, hab ich das Makefile etwas modifiziert und nun kompiliert es zumindest durch.


    Nachdem ich das Kompilat in /usr/lib/vdr/plugins/ kopiert habe und "-Pupnp" in in den options bei /etc/default/vdr nachgetragen habe, bekomme ich folgenden Fehler beim Starten von VDR:


    Code
    Starting Linux Video Disk Recorder: vdr
    Searching for plugins (VDR 1.7.21/1.7.21
    0.0.2) (cache miss):sed: -e Ausdruck #1, Zeichen 35: Nicht beendeter `s'-Befehl
    .


    Wenn ich den Options Parameter weglasse, dann startet VDR normal, allerdings wird mein Syslog mit folgenden Einträgen zugespammt:



    Die metadata.db scheint gefüllt zu werden.


    Jetzt habe ich hier gelesen, dass es eine Konfig Datei /etc/vdr/plugins/plugin.upnp.conf gibt... wie hat die auszusehen? Bei mir ist keine solche Datei zu finden.
    Mein Ziel ist es meine XBox 360 als HD Streaming Client zu benutzen, falls dies überhaupt möglich ist...

    [size=10]Server:
    HP ProLiant N36L, Athlon II Neo N36L 1.3GHz, 1GB RAM, Digital Devices CineS2
    Debian Jessie

  • Nachdem ich das Kompilat in /usr/lib/vdr/plugins/ kopiert habe und "-Pupnp" in in den options bei /etc/default/vdr nachgetragen habe, bekomme ich folgenden Fehler beim Starten von VDR:


    Was für eine Distribution? Plugins unter options in /etc/default/vdr einzutragen erscheint mir extrem ungewöhnlich.


    Normalerweise kopiert man das Plugin nach /usr/lib/vdr/plugins/ und trägt die Pluginparameter in /etc/vdr/plugins/plugin.upnp.conf ein. D.h. bei den üblichen Debian Paketquellen, andere Distributionen können das anderst handhaben.


    cu

  • Ich benutze ein Debian Squeeze mit etobi.


    Die libs hab ich demnach dann wohl richtig kopiert, nur das mit dem Parameter hab ich falsch verstanden. Dem Wiki nach hab ich das so verstanden, dass dies ein VDR Parameter ist und in der /etc/default/vdr gibt es einen Eintrag, wo man diese Options eingeben kann. Ich habe jetzt eine Datei /etc/vdr/plugins/plugin.upnp.conf mit dem Inhalt "-Pupnp" erstellt, jedoch bekomm ich nun folgenden Fehler im Syslog:


    Code
    Dec 31 18:25:54 vdrhd vdr: [6968] [ffnetdev] Destructor cPluginFFNetDev
    Dec 31 18:25:54 vdrhd vdr: [6987] cTimeMs: using monotonic clock (resolution is 1 ns)
    Dec 31 18:25:54 vdrhd vdr: [6987] [general.debug] using new 1.7.11+ capture code
    Dec 31 18:25:54 vdrhd vdr: [7045] VDR version 1.7.21 started
    Dec 31 18:25:54 vdrhd vdr: [7045] switched to user 'vdr'
    Dec 31 18:25:54 vdrhd vdr: [7045] codeset is 'UTF-8' - known
    Dec 31 18:25:54 vdrhd vdr: [7045] found 28 locales in /usr/share/locale


    NUTZUNGSBEDINGUNGEN BEACHTEN!!!

    [size=10]Server:
    HP ProLiant N36L, Athlon II Neo N36L 1.3GHz, 1GB RAM, Digital Devices CineS2
    Debian Jessie

    Einmal editiert, zuletzt von Dirk ()

Jetzt mitmachen!

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