Script Vdr zu Mpg > Probs

  • Hi,


    Ich möchte mir gern ein Script schreiben welches ich dann übern Vdr per
    reccmds.conf aufrufen kann das mir die VdrAufnahmen in mpgs wandelt.


    Bislang hab ich erst diesen Schnipsel erstellt;



    Das Script heisst momentan noch demux, und
    ich rufe es wie folgt aus der reccmds.conf auf;


    Zitat

    Demuxen : /usr/lib/vdr/scripts/demux



    Das Demuxing funktioniert jetzt zwar schon mal, aber
    mein Problem besteht in der if-Abfrage unten im Script,
    und zwar wird wenn ich das Script ausführe gleich mal die erste
    svdrpsend.pl Meldung ausgegeben (was ja auch korrekt ist), aber gleich danach kommt die svdrpsend.pl Meldung (praktisch während dem Demuxing)


    Zitat

    Demuxen mit ProjectX fehlgeschlagen


    Diese Meldung soll aber erst am Schluss kommen dann aber allerdings mit ner Erfolgsmeldung sattdessen.
    So Ist klar das die Meldung negativ ausfällt, denn zu dem Zeitpunkt wo die Meldung kommt gibts ja auch noch kein /var/lib/vdrmedia/vdrconvert/mpg/001.mpv


    Kann mir da jemand auf die Sprünge helfen ?
    So dass die if- Abfrage erst greift wenn das Demuxing mit ProjectX fertig ist.



    Weiters hab ich dann noch das Problem das ich ja alle Spuren (also video, ac3,mp2) in dem fertigen mpg haben will (deshalb kann ich auch nicht auf Vdrconvert zurückgreifen).
    Aber die Anzahl der Spuren kann ja je nach Aufzeichnung unterschiedlich sein
    (z.b: mal gibts eine ac3 Spur mal nicht), und da weiss
    ich nicht wie ich am besten weiterverfahren soll, denn
    mit ner if Abfrage ist das jedenfalls unmöglich zu bewerkstelligen.


    Wie also verfahre ich am besten um später alle video und audio Spuren
    im fertigen mpg zu haben egal wieviele Spuren die Aufnahmen aufweisen.
    Ich hab da irgendwie noch überhaupt keinen Ansatz, da ich mich auch mit den verschiedenen Schleifen wie case etc.. noch nicht wirklich auskenne.
    Kann mir diesbezgl. auch jemand nen Schubs geben ?



    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau

    Einmal editiert, zuletzt von Bert ()

  • Entferne die '&' hinter Deinen Befehlen, dann wartet das Script bis die Befehle ausgeführt sind, ansonsten werden Hintergrundprozesse gestartet und das Script weiter abgearbeitet.


    Gruß Jens.

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi, Chupa


    Danke !


    Nun muss ich aber den Eintrag in der reccmds.conf anders schreiben,
    da sonst das OSD vom Vdr blockiert wird.



    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau

  • reccmds.conf:


    MpgKonvertierung: echo "/wo/ist/mein/script.sh" | at now


    Vielleicht funktioniert auch das Anhängen eines '&' in der reccmds.conf.


    Gruß Jens.

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi, Chupa


    Leider funktioniert hier weder;


    echo "/wo/ist/mein/script.sh" | at now


    noch ein &


    in der reccmds.conf


    Gibts echt keinen Weg das im Script selbst unterzubringen ?



    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau

  • Dein Problem ist wahrscheinlich daß 'at' nicht installiert ist.


    Du könntest aus dem Skript heraus ein zweites Skript aufrufen, oder Du läst das Skript sich selbst nochmals aufrufen.



    Am Sinnvollsten wäre es aber wohl 'at' zu installieren, da Du dieses Problem ansonsten mit jedem Skript aus reccmds.conf oder commands.conf hast.


    Gruß Jens

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi, Chupa


    Zitat

    Dein Problem ist wahrscheinlich daß 'at' nicht installiert ist.


    Nein,nein at ist schon installiert.


    Das Problem kenn ich so auch gar nicht.
    Einerseits muss man das ganze in den Hintergrund bringen damit das Osd
    vom Vdr nicht geblockt wird, aber egal wo ich das >/dev/null &
    oder auch nur das &
    eintrage (im Script selbst, oder im Eintrag zur reccmds.conf)
    das Problem vom ersten Post bleibt hartnäckig bestehen.


    Vielleicht hängts damit zusammen wie der Vdr (hier über zulus x-vdr
    samt seinen Scripts eingerichtet ist), aber da blick ich derzeit noch nicht ganz durch.


    Hab gestern noch ein zweites Script eingerichtet welches das Script
    zum Demuxen nur aufrufen soll, aber selbst hierbei hab ich dasselbe Problem
    das der letzte Befehl im zweiten Script (DemuxerScript) viel zu früh ausgeführt wird.


    mit && (damit der nächste Befehl erst ausgeführt wird wenn der erste
    erfolgreich war geht hier auch nix.


    Werd jetzt mal deinen Tipp anwenden wobei sich das Script selbst
    nochmals aufruft.


    Jedenfalls Danke derweil für Deine Tipps !



    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau

  • VDR wartet generell bis zur Beendigung von aufgerufenen Skripten, daher benutzt man in der Regel die Form 'echo "Befehl" | at now'. Ich hatte gelegentlich probleme mit '&' für Hintergrundprozesse und nutze daher generell 'at now'.


    Mir ist da ein kleiner Fehler unterlaufen, natürlich muß der zweite Aufruf als Hintergrundprozeß erfolgen:


    /wo/ist/mein/script.sh ZweiterAufruf $RECDIR &
    oder
    echo "/wo/ist/mein/script.sh ZweiterAufruf $RECDIR" | at now


    VORSICHT:
    Baue eine Sicherung ein, damit du keine Endlosschleife produzierst.


    Gruß Jens

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi, Chupa


    Danke für die Infos !


    Hab das jetzt mit nem StarterScript gelöst welches das eigentliche Script aufruft.


    Das StarterScript sieht so aus;



    Der Eintrag in der reccmds.conf dann so;


    Zitat

    Demuxen : /usr/lib/vdr/scripts/start_demux



    Das eigentliche Konvertierungs Script heisst derzeit noch demux
    und sieht derweil noch etwas wild aus wie folgt;



    Nun muss ich mal sehen wie ich dem fertigen 001.mpg den Namen aus
    der info.vdr übergeben kann (grepen und umbenennen).


    Und wie ich alle Fälle von Spuren (Audio + Video) abdecken kann (denn ich will
    ja immer alle jeweils vorhandenen Audio Spuren mit der VideoSpur muxen).


    Hättest dazu auch noch nen Tipp ?


    Ich glaub mit der if- Abfrage wirds dazu nicht reichen, da ich aber mit Schleifen
    wie while, for, until noch ncht zurechtkomme tapp ich da im Dunkeln.



    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau


  • Mit den Audiospuren kann ich Dir leider nicht weiterhelfen.
    Wenn "echo "Befehl" | at now" im StarterScript funktioniert, gibt es außer einem Schreibfehler keinen Grund warum es in der reccmds.conf nicht funktionieren sollte.


    Gruß Jens

    Athlon 1800+ - KT3 Ultra2 - 512 MB

    Samsung 200 GB - NEC 1300A

    Atric IR-Einschalter - GLCD 128x64

    Hauppauge Nexus + 2 x TT-Budget

    Debian/Etch - 2.6.22-6 - VDR-1.4.7 - Bigpatch


    Von Fachidioten für Fachidioten, 5 Buchstaben.

    LINUX?

  • Hi, Chupa


    Danke schön > hast mir sehr geholfen !


    Gruss, Bert

    Hardware: Intel Core i9-9900K, ASUS ROG Maximus XI Hero, MSI GeForce GTX 1050 Ti (vdpau), Dvbsky S952 V3 mit 2X DVB-S2 Tuner
    Multibootsystem (yavdr-ansible auf Ubuntu-20.04, Kubuntu-20.04 Focal Fossa, Win10)
    yavdr-ansible, Ausgabe über Nvidia vdpau

Jetzt mitmachen!

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