re:

  • Hallo!


    Ich bin begeisterter C++ Programmierer ...... jedoch noch mit fast gar keinen erfahrungen in C++. Deswegen diese Anfängerfrage:


    Ich möchte das Xine-Plugin so abändern, daß es den Xine auch öffnet (wenn das zu früh ist, dann kommt es in den VDR-Code). Eigentlich kein großes Problem, ein execl("/usr/local/bin/xine","xine","-f","vdr:/tmp/vdr-xine/stream#demux:mpeg_pes",NULL); genügt.


    Dannach passiert aber nichts weiter als daß der xine geöffnet wird. Man muß den xine wahrscheinlich in einem neuen Prozess, oder im Hintergrund öffnen. Aber wie? Das folgende tut es leider auchnicht.


    pid_t cpid;
    switch (cpid = fork())
    {
    case -1: perror("fork failed");
    exit(1);
    case 0: execl("/usr/local/bin/xine","xine","",NULL);
    exit(1);
    default: perror("wait interrupted");
    exit(1);
    }


    Wer weis wie´s geht!?


    Gruß, DaLiMan

  • warum so umständlich.
    Trage doch in die runvdr einfach ein das xine gestartet werden soll.
    So mache ich es immer.
    Zum entwickeln lasse ich dann noch ein paar andere Fenster mit statusinformationen ausgeben.

  • Xine-Simple-Patch_RC0.1_Alpha


    In xine.c, cPluginXine::Start(void) um folgende Zeilen erweitern und des include nicht vergessen (#include <unistd.h>): (Nach return false und vor return true:


    pid_t cpid;
    switch (cpid = fork())
    {
    case 0: execl("/usr/local/bin/xine","/usr/local/bin/xine","-f","vdr:/tmp/vdr-xine/stream#demux:mpeg_pes",(char *)0);
    }


    --------------------------------------------------------


    Natürlich muß man eventuell die Pfade anpassen. (xine binary und stream)


    Der Vorteil ist der, das ein Fenster geöffnet wird wenn man den VDR (mit xine) startet. Im Falle der runvdr, d.h. beim Crash vom VDR und anschließendem Auto-Neustart, liegt der Vorteil klar auf der Hand.

Jetzt mitmachen!

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