Request for comments: Plugin-Interface für DLNA-Plugin

  • Muss das extern "C" dort weg, oder wie bekomme ich das gelöst?


    Wenn du die Funktion überall mit extern "C" deklarierst, dann sollte es auch gehen.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Irgendwie steh ich grad aufm Schlauch oder es ist schon spät. Ich nutze das Makro in den Plugins, wie das der VDR mit seinen Plugins auch tut. Welche Funktion muss mit extern "C" deklariert werden?


    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

  • Irgendwie steh ich grad aufm Schlauch oder es ist schon spät. Ich nutze das Makro in den Plugins, wie das der VDR mit seinen Plugins auch tut. Welche Funktion muss mit extern "C" deklariert werden?


    Na ja, ich kenne deinen Code nicht, aber irgendwo greift jemand auf eine Funktion zu die als extern "C" deklariert wurde, aber der Aufrufer weiß nichts davon. Das bekommst du schon raus. Ich bin auch totmüde.


    Gerald


    HP Proliant MicroServer Gen8, Xeon E3-1230, 12 GB RAM, 3xWD red 2TB im RAID 5, 2xSundtek MediaTV Home DVB-C/T, L4M TWIN-C/T, Ubuntu Server 14.04.1, Plex Media Server
    Samsung UE55H6470

  • Ich habe es leider nicht geschafft. Der Fehler kommt immer noch. Ich habe mit nm mir folgenden Output liefern lassen:



    Die ganzen Provider-Sachen scheinen tatsächlich zu fehlen oder interpretiere ich die Ausgabe falsch? Wenn ich den gleichen Befehl auf die libvdr-upnp.so mache, sind die ganzen cPlugin-Symbole auch undefiniert. Woran kann es noch alles scheitern?


    Edit: Folgende Zeile kommt bei nm auf libvdr-upnp.so:


    Code
    0000000000061c20 T upnp::cUPnPResourceProvider::Seekable() const


    Die Funktion als solches ist also in der Haupt-SO dabei.


    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

    2 Mal editiert, zuletzt von methodus ()

  • Ich habe die Antwort über stackoverflow erhalten: http://stackoverflow.com/q/12762910/798406


    Die Lösung ist noch nicht schon, aber es geht erst einmal. Ein PAtch für den VDR könnte auch helfen, das muss ich allerdings erst einmal testen:



    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

  • Senderlogos gehen jetzt auch:
    [Blockierte Grafik: http://www.methodus.de/wp-content/gallery/vdr/CameraZOOM-20121014065540032.jpg]


    Allerdings habe ich nur sehr wenige Logos, weil zum einen habe ich nur eine ziemlich kleine Auswahl und zum anderen sind in den Sendernamen Leerzeichen. Wie machen hier die Skins das, um die Logos zu laden?
    Nächste Frage: wie kann ich aus einer VDR-Aufnahme ein Thumbnail erzeugen und irgendwo zwischenspeichern?


    Live-TV geht. Leider muss man, um auf Samsung-Geräten gucken zu können, Streamdev anpassen, da die Samsung-Dinger mit HEAD-Requests arbeiten, was Streamdev noch nicht unterstützt.


    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

  • Mit allen, die MPEG_TS_SD_EU_ISO bzw. AVC_TS_HD_EU_ISO verstehen. Das sollten eigentlich 90% aller TV-Geräte können.


    Wenn die das nicht können, wäre ein transcoding notwendig, was über die externremux des streamdev eigentlich dann auch möglich sein sollte. Da brauch ich aber input, welche Formate man da am besten anspricht.


    edit: also mein Motorola Defy kanns schonmal nicht abspielen mit der eingebauten DLNA-App.. vielleicht bekomme ich das noch raus, welches Transkoding hier notwendig ist.


    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

    Einmal editiert, zuletzt von methodus ()

  • Ich wieder... es gibt mal wieder ein Problem: ich versuche momentan die VDR-Aufnahmen mit der Serienstruktur zu scannen, aber habe Schwierigkeiten zu erkennen, ob die aktuelle Aufnahme ein Verzeichnis enthält oder eine Aufnahme selbst und nicht weiter gescannt werden muss.


    Ich habe folgenden Code:



    Die IsContainer scheint theoretisch zu funktionieren, aber die GetContainerEntries ist murks. Ich hab jetzt 3 Tage dran gesessen und komme nicht weiter. Wer kann mir weiter helfen? Die übergebe URI wird bei jedem Aufruf um den Teil, der in der Liste zurückgegeben wird, erweitert. Also zum Beispiel:


    1. Aufruf:
    rec://
    list: Matrix/xxx.rec, 8_Mile/xxx.rec, Illuminati/xxx.rec, Bob_Ross


    Bob_Ross ist eine Serie


    2. Aufruf
    rec://Bob_Ross
    list: Autumn, Spring


    3. Aufruf
    rec://Bob_Ross/Spring... usw.


    Am Ende muss der vollständige Pfadde wie in Recording::Filename() rauskommen, nur ohne VideoDirectory.


    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

  • Aufnahmen streamen scheint jetzt erstmal zu gehen. Es könnte ja mal jemand ausprobieren (pn an mich, wenn Hilfe bei Bauen oder Installieren notwendig ist). Spulen geht noch nicht, da ich mir das erstmal angucken muss, was DLNA da genau haben will.


    Wenn jemand unter euch sein sollte, der weiß, wie TimeBased-Seek funktioniert, würde ich mich freuen, wenn er sich bei mir meldet.


    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

  • Du willst den Stream ab einer bestimmten Zeit abspielen?


    Dafür mußt du den Stream analysieren um Bytes / Sekunde herauszubekommen.
    Einfach ist wenn du die Gesamtlänge des Stream kennst.


    Gesamt-Größe / Gesamt-Länge = Bytes-pro-Sekunde.


    Dann gehst im File an die Postion, suchst den nächsten Zeitstempel und wenn der nicht simmt,
    machst eine Binary Suche für den richtigen.


    Schwierig wirds wenn es keinen Index und keine Zeitstempel gibt.
    Dann kannst die Position einfach als Näherung nehmen oder du
    kannst nur im Schnelllauf an die richtige Stelle gehen.


    Johns

    Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
    Sag mir, wo die Developer sind. Was ist geschehn?


    Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
    Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
    Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
    Server0: Dockstar TT-S2-3600-USB / streamdev
    Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

  • Hmm.. funktioniert dann nur mit CBR oder?


    Ich lese grad, dass der Range-Header in jedem Fall Vorrang hat, falls sowohl TimeBasedSeek und ByteBasedSeek angeboten wird. Da die Samsung-Geräte auch nur mit ByteBasedSeek anfragen, wäre jetzt die Frage an die unter euch, die bereits erfolgreich mit anderen DLNA-Servern Aufnahmen streamen und spulen können: Mit was fragt euer TV beim Server an? Könnt ihr mir Traces dazu geben?


    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

    Einmal editiert, zuletzt von methodus ()

  • Wenn du eine Zeitinformation hast, entweder über einen Index oder Timestemps, dann klappt es auch mit CBR.
    Nur mußt du dann bei Timestamps den richtigen Suchen.


    Ansonsten geht nur eine Annäherung schnell.


    Johns

    Sag mir, wo die Developer sind. Wo sind sie geblieben? . . . . . . . . . . . . . . . . . . . . SoftHdDevice - A software and GPU emulated HD output device plugin.
    Sag mir, wo die Developer sind. Was ist geschehn?


    Client0: Crown CW02 MSI_C847MS-E33 Zotac_GT640_passiv Cine-S2 iMon-MCE / streamdev softhddevice
    Client1: Lian_Li_PC-Q09FB ASRock_H67M-ITX/HT I3-2100 ASUS_ENGT520_passiv / streamdev softhddevice
    Test: Lian_Li_PC-Q09R Asus C60M1-I / streamdev
    Server0: Dockstar TT-S2-3600-USB / streamdev
    Server2: Lian_Li_PC-Q07R Intel_DH61DL G620 WD20EARX 90W PicoPSU Cine-S2+DuoFlex-S2+DuoFlex-CT / streamdev / 22 Watt Verbrauch

Jetzt mitmachen!

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