Plugins für Plugins sinnvoll?

  • Nach Monaten Plackerei wegen Masterarbeit kann ich mich endlich wieder dem DLNA-Plugin widmen. Wie die meisten sicherlich mitbekommen haben, gibt es noch immer sehr viele Probleme, Baustellen und Fehler, weswegen ich jetzt am überlegen bin, wie ich die einzelnen Problemfelder am günstigsten kapseln kann.


    An sich ist DLNA modular möglich. Es gibt Grundfunktionen, die überall funktionieren müssen und es gibt Zusatzfunktionen, die unterstützt werden können, aber nicht müssen. Gerade die 10.000+ Profile von DLNA ordentlich zu übertragen kostet Zeit und Nerven, da das auch getestet werden sollte.


    Mein Gedanke ist daher die zusätzlichen Profile neben MPEG-2 TS und H.264 TS als Plugin/Add-on einzubinden. Aber macht das Sinn? Gibt es bereits andere Plugins, die das machen? Was gibt's dabei zu beachten?


    Aus meiner Sicht hätte das folgende Vorteile:
    - unbenötigte Profile müssen nicht mitinstalliert und geprüft werden, wenn eine neue Datei die Datenbank aufgenommen werden soll.
    - einzelne Module lassen sich leichter testen, da sie prinzipiell unabhängig. Stabile Plugins können veröffentlicht werden und andere Unstable bleiben für freiwillige Probanden verfügbar.
    - neue Add-ons können von allen Usern entwickelt werden. Das Schema ist meist identisch, es müssen lediglich ein paar Sachen angepasst werden.


    Ich möchte mir den Arbeitsaufwand der Entwicklung reduzieren und die Sachen, die sich ständig wiederholen, irgendwie auslagern, so dass ich die wichtigen Teile eher testen kann.


    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

  • Plugins für das Plugin sind vielleicht etwas übertrieben, aber dynamisch geladene shared libraries reichen doch auch.


    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

  • Hmm, so meine ich das eigentlich auch ;)


    Andere Wege Plugins einzubinden, kämen mir im Moment auch nicht in den Sinn.


    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

  • Zitat

    Original von slime


    funktionieren Plugins denn nicht so?


    Natürlich funktionieren die Plugins im Kern so, aber da sind ja noch einige C++-Klassen involviert, die dafür eigentlich nicht nötig sind. z.B. ist eine Thread-Steuerung pro Plugin-Plugin wohl kaum nötig.


    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

  • Neben dem Voldemort-Plugin verwendet auch xineliboutput eigene Teil-Libs, die nachgeladen werden.


    Speziell dafür wurde schon in VDR 1.4.0-2 vorgesehen, dass zusätzliche private Libs von Plugins sich an das Namensschema lib[PLUGINNAME]-[MODULNAME].so.[APIVERSION] halten können, so dass das install-Target des Makefiles die Libs mit installiert. Gleiches sollte für distributionsspezifische Mechanismen gelten.


    Gruß,


    Udo

Jetzt mitmachen!

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