Bouquet in VDR

  • Hallo,


    ich suche eine Möglichkeit in VDR Bouquet anzulegen. Ich weiss es gibt Kanalgruppen, aber da kann ein Kanal nur einmal zugeordnet werden.


    Gibt es dazu ein Plugin?


    Ich habe gesehen, bei der Reelbox gibt es sowas: http://reelbox-forum.com/showt…neues-Favoritenmanagement


    Finde die Idee recht genial, leider scheint das Plugin unter unserem Standard VDR nicht zu funktionieren (VDR müsste gepatch werden)



    Weiterhin habe ich mir die Plugins chanman und channellists angesehen, aber die scheinen beide nicht die Möglichkeit zu bieten, dass man einen Kanal mehrfach zuteilen kann.


    Habe ich was übersehen bzw, gibt es noch ein anderes Plugin?


    Gruß,
    Thomas

  • Nein, gibt's leider noch nicht, steht aber mit ein bisschen Glück auf irgendeiner Todo-Liste, kann aber noch dauern.


    Lars

  • Nein, gibt's leider noch nicht, steht aber mit ein bisschen Glück auf irgendeiner Todo-Liste, kann aber noch dauern.


    Lars


    [Sarkasmus On]


    Ich bin mir sicher, dass ab VDR Version 6.x.x , also in ~15-20 Jahren, sicherlich eine vernünftige Kanalverwaltung enthalten sein wird. :)


    Bisher hat das ja noch Niemand gebraucht, da ist TCr82 der Erste, der danach fragt. :)


    [Sarkasmus Off]

  • ist das


    bouquets == reelchannellist
    oder
    bouquets != reelchannellist


    evtl geht das erstere ja mit dem normalen vdr

  • Das reelchannellist ist im Prinzip wie eine View auf die channels.conf. Der Vorteil ist, daß man z. B. eine neue vorkonfektionierte channels.conf austausche kann, ohne daß der Benutzer seine gemachten Gruppierungen, Reihenfolge... verliert. Es könnten auch Mutter, Vater, Sohn jeweils eigene Favoriten (auch mi (ganz oder teilweise) identischen Kanälen) verwalten und nutzen.


    Den vdr dafür zu patchen finde ich allerdings etwas übertrieben. An einer Funktion kommt man da aber zunächst mal nicht vorbei.


    channels.h

    Code
    1. #ifdef REELVDR
    2. bool LoadWithDuplicates(const char *FileName, bool AllowComments = false, bool MustExist = false);
    3. #endif


    channels.c

    Code
    1. #ifdef REELVDR
    2. bool cChannels::LoadWithDuplicates(const char *FileName, bool AllowComments, bool MustExist)
    3. {
    4. if (cConfig<cChannel>::Load(FileName, AllowComments, MustExist)||Count()) {
    5. ReNumber();
    6. return true;
    7. }
    8. return false;
    9. }
    10. #endif


    Im vdr wird automatisch beim Laden einer channels.conf ein DeleteDuplicateChannels(); ausgeführt. Das darf für die favourites.conf nicht gemacht werden.


    Alles andere läßt sich vermutlich auch durch einen Patch des Plugin erreichen.


    Könnte mir vorstellen, daß die Funktion LoadWithDuplicates auch in einer von cChannels abgeleiteten Klasse implementiert werden könnte.


    Gruß


    Real_Quick

  • Der Aufwand dürfte überschaubar bleiben.


    Ich habe mir den vdr2.1.4 heruntergeladen und dass Plugin so angepasst, daß es damit zumindest mal kompiliert.


    Komplett rausgenommen habe ich die service-Schnittstelle. Wird im ersten Ansatz wohl kaum benötigt. Die AddFloatingText-Methode habe ich ins Plugin verfrachtet.
    Ändern von channels.conf-Einträgen aus dem Plugin heraus, habe ich ebenfalls ausgeschaltet.


    Der Patch ist im Anhang.


    Das ganze ist komplett ungetestet. Der Compile ist aber ohne Fehler durchgelaufen.
    Wer Zeit und Lust hat, kann das ja mal testen.


    Gruß


    Real_Quick


  • Das führt dann aber nicht zu Problemen bei anderen Plugins?

    Nein, kann es nicht. Beides sind ja Funktionen des Plugins. Andere Plugins oder der vdr kennt/interessiert das nicht und eine Service-Schnittstelle die nicht vorhanden ist, macht normalerweise auch keine Probleme.


    Gruß


    Real_Quick