Skript um Aufnahme nach Schneiden umzubenennen und ursprüngliche zu löschen

  • Ich würde gerne nach dem Schneiden die ursprüngliche Aufnahme löschen, und die geschnittene ohne das % speichern. Soweit ich das verstanden habe, kann man das im VDR nicht einstellen. Alternativ könnte man ja ein Skript verwenden, dass den Aufzeichnungsordner durchsucht, und wenn er zwei Ordner findet, deren Namen gleich sind abgesehen von dem % löscht das Skript den Ordner ohne das %. Danach wird der Ordner mit %-Zeichen entsprechend umbenannt, so dass das %-Zeichen verschwindet. Hat da schon mal jemand mit rumprobiert?

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

    Einmal editiert, zuletzt von Gerdchen03 ()

  • hi,


    also rein vom ablauf würde ich das anders machen.


    1.) wechsle ins video-dir
    2.) suche alle verzeichnisse, die mit % beginnen
    3.) entferne von dem verzeichnisnamen aus (2) das % am Anfang (substring o.ä.)
    4.) suche das verzeichnis, das so heißt, wie das Ergebnis aus (3)
    5.) Wenn gefunden => löschen
    6.) Benenne das Verzeichnis in das Ergebnis von (3) um


    somit hast du danach kein % mehr am anfang und die prüfung aus (2) schlägt beim verzeichnis auch nicht mehr zu ...


    liebe grüße und viel spaß beim coden

    JA - mein Name ist Programm :)
    ------------------------------------------------
    Aufnahme-Server:
    880GA-UD3H
    (acpi-wakeup) | Phenom II X2 555 | 4GB RAM | be quiet Pure Power 350W ATX 2.3 (L7) | 1x DualTuner DVB-S2, 2x Budget DVB-S | Ubuntu Trusty Server | ppa:yavdr/stable-vdr

  • Zitat


    3.) entferne von dem verzeichnisnamen aus (2) das % am Anfang (substring o.ä.)
    4.) suche das verzeichnis, das so heißt, wie das Ergebnis aus (3)
    5.) Wenn gefunden => löschen


    Die beiden Verzeichnisse liegen aber im gleichen Ordner gibt es dann nicht Konflikte wegen dem Ordnernamen?

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

  • hi, schritt 3 passiert nur im code und wird in einer variablen gespeichert; das physische löschen passiert erst in (5)
    umbenannt wird in (6) - da existiert das alte verzeichnis nicht mehr

    JA - mein Name ist Programm :)
    ------------------------------------------------
    Aufnahme-Server:
    880GA-UD3H
    (acpi-wakeup) | Phenom II X2 555 | 4GB RAM | be quiet Pure Power 350W ATX 2.3 (L7) | 1x DualTuner DVB-S2, 2x Budget DVB-S | Ubuntu Trusty Server | ppa:yavdr/stable-vdr

  • OK, danke. Noch einen Tip mit welchem Script-typen du das lösen würdest? Ich bin noch vollkommen am Anfang mit dem Skripten und wäre schon mal froh, wenn ich wüsste in welches Script ich mich einlesen sollte. bash?

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

  • hi,


    am einfachsten wäre wohl bash (also shell-scripting) oder perl.


    je nachdem, ob du dann weitermachen willst, kannst du auch python, java oder sonst irgendeine x-beliebige scriptsprache nehmen, die dir zusagt.


    ich selbst würde es mit einem shellscript lösen, weil ich selbst noch script-anfänger bin, aber schon das ein oder andere mini-script mit der bash auf die reihe bekommen habe.


    vorteil ist, dass du fast jeden befehl vorher selbst im terminal ausprobieren kannst.
    und dann die befehle nur noch hintereinander ins script klatschen musst :)


    LG

    JA - mein Name ist Programm :)
    ------------------------------------------------
    Aufnahme-Server:
    880GA-UD3H
    (acpi-wakeup) | Phenom II X2 555 | 4GB RAM | be quiet Pure Power 350W ATX 2.3 (L7) | 1x DualTuner DVB-S2, 2x Budget DVB-S | Ubuntu Trusty Server | ppa:yavdr/stable-vdr

  • OK, ich hab mal was versucht. Kann man sicher noch schöner lösen, aber bis auf eine Tatsache funktioniert es.


    Das einzige was nicht klappt, ist die Art wie ich find verwende. Werden mehrere Verzeichnisse gefunden, dann stehen die auch alle in der Variablen pfad. Dann klappt dirname nicht, und das ganze Skript läuft endlos durch, weil der gesuchte Ordner nicht korrekt umbenannt werden kann.


    Wie kann man den Fehler noch abstellen?

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

    Einmal editiert, zuletzt von Gerdchen03 ()

  • So klappt es


    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

  • Für alle, die es interessiert ist hier ein Skript, dass die vom VDR geschnittene Videodatei ins Videoverzeichnis kopiert, und die ursprüngliche Aufnahme löscht. Bei mir liegen die Aufnahmen in /video nach Kategorien sortiert, z.B. Komödie oder Action. Der Film wird also z.B. nach /video/Komödie kopiert und nach dem Filmtitel umbenannt.


    Das Skript kann man sicherlich schöner programmieren, aber es funktioniert. Vielleicht hat ja jemand mit mehr Erfahrung Lust es besser zu scripten.



    Das Skript in /etc/init.d/ legen, mit chmod 755 /etc/init.d/skriptname die Rechte ändern, und zwei symbolische Links setzen:
    ln -s /etc/init.d/skriptname /etc/rc0.d/S11skriptname
    ln -s /etc/init.d/skriptname /etc/rc6.d/S11skriptname


    Einen Nachteil hat das Skript bisher: Der VDR listet die Filme nicht mehr bei Aufnahmen auf, sondern bei Medien->Datei abspielen. Ich verteile meine Aufnahmen aber eh mit Twonky im Netzwerk, und mein VDR dient nur zum Aufnehmen. Da ist mir das egal. Aber man sollte es wissen.

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

    10 Mal editiert, zuletzt von Gerdchen03 ()

  • Hi!


    Wäre es nicht viel einfacher ein kleines Skript für das "--record"-Kommando von VDR zu erstellen?
    Hier gibt es doch das EDIT-Ereignis und da könnte man dann das von dir gewünschte einbauen.
    Ev. die alte Aufnahme auch nur mit svdrpsend-Kommando löschen und die die geschnittene damit umbenennen. Dann ist die Aufnahme beim versehentliche Auslösen eines Schnitts noch da und VDR bekommt alle Änderungen mit.


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

  • Das ist keine schlechte Idee. Nur hab ich keinen Plan, wie ich das angehen könnte. Tips, wo ich dazu mehr erfahren könnte?

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

  • Hi!


    Also das mit dem "--record"-Kommando hängt davon ab ob du eine Distri einsetzt oder alles selbst zusammengebastelt hast. Üblicherweise wird ein Skript beim VDR-Start eingebunden, das beim Start, beim Ende und beim Schneiden einer Aufnahme aufgerufen wird. Hier lassen sich auch eigene Befehle integrieren. Hier z.B. bei yavdr in /etc/vdr/recording-hooks/ bzw. günstiger wahrscheinlich über Templates.
    Hier dazu mehr, wie es beim VDR-Start eingebunden wird (aus der Man-Page):
    http://www.vdr-wiki.de/wiki/index.php/VDR_Optionen#record
    Wie gesagt, je nach Distri brauchst du aber nur ein Skript an die richtige Stelle setzten.


    Bezüglich der svdrp-Schnittstelle steht hier einiges:
    http://www.vdr-wiki.de/wiki/index.php/SVDRP


    Allerdings leider nicht vollständig bzw. aktuell. Es gibt nämlich beim aktuellen VDR auch einen Befehl zum Umbenennen von Aufzeichnungen: RENR
    Kannst du aber auch bei svdrpsend.pl nachlsen:
    z.B. "svdrpsend.pl help RENR"


    Beim Skripten bin ich leider selber nicht so fit, kann dir da also auch nichts schnell zusammenbasteln.


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

  • Ich hab alles selbst zusammengebaut. Aber ich les mich mal ein. Danke!

    HW: Asus A8N-SLI Premium | Athlon 64 3700+ | Hauppauge WinTV Nova-HD-S2 | 1Gb Kingston RAM |


    SW: Ubuntu 12.04 | VDR 2.0.2 | NVIDIA Treiber | xine-lib-1.2 | Xineliboutput Plugin (1.0.90-cvs) | Live Plugin (0.3.0) | xmltv2vdr (0.2.0pre) | scheduler-Plugin (0.1.6) | epgsearch-Plugin (1.0.1.beta5) | markad-Plugin (0.1.5pre ) | extrecmenu (1.2.2)

  • Hi!


    Was mir an so einer Lösung nicht gefällt ist halt die Endgültigkeit.
    IMHO kann es und wird es passieren dass man eine Aufnahme falsch schneidet oder einen Schnitt versehentlich auslöst und dann ist die originale Aufnahme schon futsch.


    Muss natürlich jeder selber wissen ob das ein Problem ist.


    Gruß,
    Brougs78

    - -- --- ================================================================ --- -- -
    Antec Fusion, Intel E5200, Asus P5N7A-VM (VDPAU), DD CineS2 v6 + DD DuoFlex CI // yavdr-0.6.1
    - -- --- ================================================================ --- -- -

Jetzt mitmachen!

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