Automatisches noad + Schneiden mit/OHNE VDR :) = AutoCutter

  • Hallo,


    für die die eine frühere version kennen - ich habe vdrconvert-noad umbenannt in AutoCutter - ist einfacher zu behalten ;)


    Die idee dahinter ist noad zu nutzen um die Schnittmarken zu setzen (nicht neu), das passiert Automatisch nach der aufnahme (auch nicht neu) und ohne mehrere noad's paralell zu staren (das ist neu) :)


    Dann muss man die schnittmarken "per hand" kontrollieren (wie schon bekannt)
    Und dann kann man mit einen kommando den Schneidevorgang starten. Egal für wie viele aufnahmen - das läuft einfach ohne zutuen :D


    Also perfekt wenn man mehrere aufnahmen pro tag macht.



    So jetzt zu den Scripten - es beruht auf der Queue von vdrconvert.


    Ich denke mal die Installation ist es ganz einfach. Sie ist zumindest recht gut beschreiben.
    Das einzigste ist das das README zur zeit nur auf Englisch da ist.


    Wenn es mehr als eine person gibt der das möchte, dann kann ich gerne das README übersetzen.


    Was ist "alt" :

    • nach der aufnahme wird automatisch die aufnahme in der noad queue gelegt und abgearbeitet - es kommen Nachrichten wenn etwas schief gelaufen ist oder erfolgreich war.
    • kann VDR "fernsteuern" um aufnahmen zu schneiden. D.h. bevor man zu bett geht kann man den schneidevorgang anschieben und am nächsten morgen ist alles geschnitten :)


    Was ist neu :

    • Jetzt kann man auch vdrcutter2 nutzen um Aufnahmen zu schneiden ohne VDR. D.h. man kann jederzeit den schneidevorgang laufen lassen :D
    • Wenn man mehrere /video partitionen hat dann legt VDR beim aufnehmen/schneiden die 00?.vdr Dateien auf den Partitionen ab wo er platz findet. Wenn aber eine festplatte kaputt geht dann sind sehr viele aufnahmen defekt. Mein script legt immer alles auf eine Partition ab - und zwar der mit dem meisten Platz.
    • Meldungen die ausgegeben werden können angepasst werden oder komplett "abgeschaltet" werden (auf "NO" setzen)



    Unter etc/vdrconvert.env findet ihr einstellungen für Deutsche nachrichten, standard ist Englisch.


    ACHTUNG !!
    Dies ist eine BETA Version !!
    Wenn ihr den neuen VDRCUTTER2 testen wollt dann setzt bitte "DELCUTREC=no" so lange bis ihr sicher seit das es klappt mit dem Schneiden.


    [EDIT]
    vdrcutter2 hat einen "bug" und zwar wenn das Videoverzeichnis NICHT /video ist
    Lösung :


    einfach nach dem Patchen das Makefile editieren und VIDEODIR anpassen.


    D.h. wenn dein Video Verzeichnis NICHT "/video" sondern "/video0" ist dann ändere die Zeile so wie dies :

    Code
    VIDEODIR = /video0


    dann :


    Code
    make clean && make
    cp vdrcutter2 /usr/local/bin


    [/EDIT]


    Es gibt noch einige nachteile wenn man vdrcutter2 nutzt gegenüber scheiden mit VDR (fernsteuerung) :

    • Die Dateien werden noch nicht aufgeteilt - d.h. ihr braucht ein Dateisystem das mit grossen Dateien umgehen kann !!! Das kommt aber in der nächsten version ;)
    • das script löscht zur zeit nicht die aufnahmen "richtig". d.h. es benennt sie nur in "*.del" um und VDR oder vdrcutter2 löscht sie dann wenn er nicht genügend platz hat. Das könnte aber zu langsam sein weshalb man darauf achten sollte das genügend platz da ist ;) - kommt noch.
    • marks.vdr wird nicht übernommen bzw. nicht neu berechnet (ich weis noch nicht wie das geht)


    Was kommt noch :

    • Aufnahmen werden in mehrere 00?.vdr Dateien aufgeteilt - wer hat eine gute idee wie das zu machen ist ? Am besten ein programm was stdin entgegennimmt und die dateien schreibt (split ist das was ich überlege ;)).
    • Wenn ich das hinkriege dann wird marks.vdr neuberechnet - weis jemand wie das geht ? Hat jemand ein script dafür schon erstellt ?
    • Ich werde evt. noch eine delete queue einbauen - wenn vor dem schneiden nicht mehr genug platz da ist, dann lösche ich die erste aufnahme die geschnitten wurde, dann die 2. und so weiter bis genügend platz da ist.
    • POSTACTION - hier kann man einscript angeben das hinterher laufen soll. z.B. um "The Simpsons" zur vdr2divx queue hinzuzufügen oder "Star Trek" zur vdr2dvd queue und nach jede 4 aufnahmen dann die Zeile abschlissen. So kann man dann gleich alles in einen rutsch erledigen und auf DVD brennen - gut für sammler ;)


    Bei problemen bitte hier in diesem Thread posten !


    Ich komme nicht so oft dazu hier bei vdrportal zu stöbern und es wäre ja schade wenn etwas untergeht ;)


    [EDIT]


    ACHTUNG !!!!


    NEUE version siehe hier !!!


    [/EDIT]


    Gruß
    Viking

  • Hallo,


    [EDIT]
    Hat sich erledigt - siehe nächster post von vejoun
    [/EDIT]


    mir ist gerade aufgefallen das Löschen nur auf der ersten Partiution gemacht wird !!
    (habe nur eine festplatte - kans also nicht so richtig testen)


    In dem fall also bitte auch benutzen :
    DELCUTREC=no


    Wie wir das gemacht von VDR ?


    Ich denke mal alle verzeichnisse umbenennen in *.del


    aber was ist mit den links auf /video0 ?
    werden die neu erstellt - zeigen dann auf die neuen *.del verzeichnisse ?


    Gruß
    Viking

  • Hallo,


    es werden nur die Verzeichnisse auf der "Partition" /video0 in *.del umbenannt, die Verzeichnisnamen auf den anderen Partitionen (/video1, /video2) ändern sich nicht.


    Da die Links immer von /video0 aus auf die anderen Partitionen zeigen, müssen diese also auch nicht geändert werden.

    VDR1: Gigabyte GA-M720-US3 (nVidia Corporation MCP78S [GeForce 8200]), Athlon II X2 240, 2GB RAM, Intel 82574L Gigabit, Debian Squeeze, Kernel 2.6.38.3 mit linux-media.tar.bz2 vom 20.04. 10:04, dvbhddevice fb6b1beedb72, VDR-1.7.22 (extension-Patch, 15 Plugins), epgsearch, extrecmenu, ...
    VDR2: Debian Etch, 2.6.21.3, K6-2 400, 192MB, NFS-Root, 466GiB über NFS, 1xNexus 2.1, 1xNova S, VDR-1.4.7
    Server: Debian Squeeze, 2.6.35.7, AMD X2 240e, 4GB, System: Raid1 2x500GB, Aufnahmen: Raid5 4TB + 1x 500GB, 1000MBit LAN
    Episodenlisten für epgsearch, VDRSeriesTimer

    Einmal editiert, zuletzt von vejoun ()

  • Hallo,


    Zitat

    es werden nur die Verzeichnisse auf der "Partition" /video0 in *.del umbenannt, die Verzeichnisnamen auf den anderen Partitionen (/video1, /video2) ändern sich nicht.


    Da die Link immer von /video0 aus auf die anderen Partitionen zeigen, müssen diese also auch nicht geändert werden.


    Danke für die Info :)


    Ich überlege ob ich eine option einbauen soll, so das man als alternative SVDRP commandos zum löschen benutzt. Das wäre "kompatibler" :)


    Gruß
    VIking

  • Hallo,


    hier eine neuere Version 0.0.3b


    Neu ist die variable AC_POSTACTION


    Mit AC_POSTACTION kann man ein Script angeben was gestartet wird nach jeden noad / autocutter lauf (pro aufnahme).


    Damit kann man z.B. automatisiert DVD's erstellen von Serien was man aufnimmt :)


    Und zwar so das z.b. nur "Star Trek" auf eine DVD kommt und nur "Deep Space Nine" auf die nächste - und es ist egal in welcher reihenfolge sie aufgenommen werden ;)


    Ich habe 2 scripts "postaction.sh" und "postaction2.sh" beigefügt. Speziell das zweite script ist interessant für diejenigen die Serien automatisiert auf DVD brennen wollen.



    [EDIT]
    NEUE version siehe erster Post !!!
    [/EDIT]


    viel spaß damit.


    Gruß
    Viking

  • Hallo,


    Zitat

    vdrcutter2 hat einen bug - er schaut vorher ob genügend platz auf der platte ist - bei mir schaut er aber auf die / partition die natürlich nicht genügend platz hat und löscht dann gleich all "*.del" aufnahmen bei jeden schneidevorgang !!


    Lösung gefunden :)


    einfach nach dem Patchen das Makefile editieren und VIDEODIR anpassen.


    D.h. wenn dein Video Verzeichnis NICHT "/video" sondern "/video0" ist dann ändere die Zeile so wie dies :

    Code
    VIDEODIR = /video0


    dann :


    Code
    make clean && make
    cp vdrcutter2 /usr/local/bin



    Und es funktioniert super :)


    Gruß

  • Hallo,


    Sven hat vdrcutter2.v2 released :cool1


    Ich habs auch schon eingebaut in AutoCutter - bin aber noch nicht dazu gekommen es zu testen. Aber dann sieht es schon mal sehr gut aus - wenn ich das richtig sehe kann er jetzt :


    - die vdr files splitten :D
    - den index schreiben - spart ungemein zeit :)


    Und evt. sogar die marks.vdr neu berechnen - ich kann aber ggf. auch ohne leben.


    Wer lust hat kann ja schon mal vorab testen.


    Aber bitte mit :
    DELCUTREC=no


    Sonst sag ich euch morgen ob es funktioniert hat ;)


    Ach ja, bitte README lesen - um die funktion "löschen von alte aufnahmen falls nicht genügend platz" zu aktivieren da ist muss man ein zusätzlicher patch einspielen - auch da weis ich nicht ob es geht da ich das selber "erarbeitet" habe.



    Bitte um feedback !!!


    [EDIT]
    Datei entfernt - siehe weiter unten
    [/EDIT]



    Gruß
    Viking

  • Hallo,


    es gib einen kleinen bug in 0.0.3e, deshalb splittet er nie die aufnahmen :(


    Hier eine (hoffentlich) funktionierende Version 0.0.4.


    Enthällt jetzt auch ein undelete_rec.sh um "*.del" aufnahmen wiederherzustellen.
    Könnte ja vieleicht sinnvoll sein ;)


    Wenn hier keine Fehler drin sind dann werde ich erst mal keine weitere version Releasen.


    Es sei denn jemand hat eine Super idee was man noch einbauen kann ...



    [EDIT]


    Neuere Version weiter unten


    Newer Version further down


    [/EDIT]


    Gruß
    Viking

  • Hallo,


    neue Version 0.0.4a


    Einige kleine Bugs behoben :


    - das tempfile wurde nicht gelöscht (in /tmp gibt es viele noad.* und autocutter.* dateien)
    - undelete_rec.sh funktionierte nicht wenn "/video" ein link ist


    und : logrotate.d datei hinzugefügt + README geändert


    Gruß
    Viking



    [EDIT]


    ACHTUNG !!!!


    NEUE version siehe hier !!!


    [/EDIT]

  • Hallo,


    wer es für notwendig hällt. Ich habe vergessen nice mit einzubauen. Kommt in der nächsten bugfix version.


    Aber das könnt ihr übergangsweise lösen in dem ihr in vdrconvert.env folgendes macht :


    NOAD="nice -15 /usr/local/bin/noad"
    VDRCUTTER2="nice -15 vdrcutter2"


    wobei noad schon mit der eingebaute option "nice" aufgeruefen wird ;)


    Gruß
    VIking

  • Hi viking,


    ich habe da eine Frage zum vdrcutter2. Wenn man den ohne -d aufruft, dann schreibt er doch auf STDOUT aus?! Kann man dies irgendwie in vdrsync.pl pipen (auf der Kommandozeile)? Ich will also nicht erst den Film geschnitten zwischenspeichern, sondern gleich demuxen.


    Danke & Gruss, Ollo

  • Hallo Ollo,


    Zitat

    Original von ollo
    ich habe da eine Frage zum vdrcutter2. Wenn man den ohne -d aufruft, dann schreibt er doch auf STDOUT aus?! Kann man dies irgendwie in vdrsync.pl pipen (auf der Kommandozeile)? Ich will also nicht erst den Film geschnitten zwischenspeichern, sondern gleich demuxen.


    Theorethisch ja, praktisch (so weit ich weis) nein - weil vdrsync.pl kein pipe annimmt. Besser ist aber das du Doc fragst - er sollte das wissen ;)


    Gruß
    Viking

  • Hi,


    Kleines Problem: Ich setze auf Gentoo vdr-1.2.6 ein - hänge also bei der Kompilierung des vdrcutter2-Pakets bzw. beim Patchen. Ist meiner Meinung nach logisch dass es nicht geht, da der Patch für 1.2.5 geschrieben wurde, oder?


    Code
    rockzbox vdr-1.2.6 # cat /tmp/autocutter-0.0.4a/patches/vdr-1.2.5-vdrcutter2.v2.patch |patch
    patching file Makefile
    Hunk #1 FAILED at 33.
    Hunk #2 FAILED at 65.
    Hunk #3 FAILED at 88.
    Hunk #4 FAILED at 147.
    4 out of 4 hunks FAILED -- saving rejects to file Makefile.rej
    patching file cutter2.c
    patching file cutter2.h

    greetz
    atommyk


    Software: c't VDR 6, bisher keine großen Anpassungen
    Hardware: Epia M10000Neh, 512 MB Ram, 80 GB Seagate Barracuda 5 (zu klein :D), Zapway-IR-Modul; verbaut in einem Alu-/MDF-Casecon

  • Hallo,


    Zitat

    Original von atommyk
    Kleines Problem: Ich setze auf Gentoo vdr-1.2.6 ein - hänge also bei der Kompilierung des vdrcutter2-Pakets bzw. beim Patchen. Ist meiner Meinung nach logisch dass es nicht geht, da der Patch für 1.2.5 geschrieben wurde, oder?


    nimmt einfach die sourcen für VDR 1.2.5 - der schneidevorgang hat sich seit dem nicht geändert ;)


    Gruß
    Viking

  • Ok, hab ich mal gemacht - und wenn ich das Problem trotzdem noch hab?


    Ich versteh die Installation irgendwie nicht ganz - ich hab doch den VDR schon installiert, wieso soll ich dann im Verzeichnis "vdr-1.2.5" noch'n "make" machen?

    greetz
    atommyk


    Software: c't VDR 6, bisher keine großen Anpassungen
    Hardware: Epia M10000Neh, 512 MB Ram, 80 GB Seagate Barracuda 5 (zu klein :D), Zapway-IR-Modul; verbaut in einem Alu-/MDF-Casecon

    Einmal editiert, zuletzt von atommyk ()

  • Jetzt wollte ich das mal so installieren, dass VDR zum Schneiden genommen wird. Aber bei

    Code
    patch -p1 < /tmp/autocutter-0.0.4a/patches/goto-vdr-1.2.1.diff

    krieg ich wieder eine Fehlermeldung:

    Code
    rockzbox vdr # patch -p1 < /tmp/autocutter-0.0.4a/patches/goto-vdr-1.2.1.diff
    can't find file to patch at input line 4
    Perhaps you used the wrong -p or --strip option?
    The text leading up to this was:
    --------------------------
    |diff -u vdr-1.2.1-orig/svdrp.c vdr-1.2.1/svdrp.c
    |--- vdr-1.2.1-orig/svdrp.c     Fri Aug 22 15:49:18 2003
    |+++ vdr-1.2.1/svdrp.c  Sat Aug 23 13:09:49 2003
    --------------------------
    File to patch:


    Entweder ich bin zu blöd das Teil zu installieren oder es ist unter 1.2.6 nicht möglich :)

    greetz
    atommyk


    Software: c't VDR 6, bisher keine großen Anpassungen
    Hardware: Epia M10000Neh, 512 MB Ram, 80 GB Seagate Barracuda 5 (zu klein :D), Zapway-IR-Modul; verbaut in einem Alu-/MDF-Casecon

  • Sorry für den beinahe-schon-Spam, aber jetzt wird's erst so richtig lustig. Habe meinen VDR vor einigen Stunden heruntergefahren und wollt nun wiedermal starten - da krieg ich die Meldung, wenn er VDR starten soll:

    Code
    rockzbox root # /etc/init.d/vdr start
     * ERROR:  Some services needed are missing.  Run
     *         './vdr broken' for a list of those
     *         services.  "vdr" was not started.


    Das steht auch in meiner /var/log/messages, also wird VDR beim Start erstmal nicht mehr geladen.
    Neu emerged hab ich das Teil jetzt eigentlich schon, und trotzdem erhalte ich die Fehlermeldung. Woran kann das liegen? lircd läuft zum Beispiel definitiv, weil da irgendetwas steht von "services"...
    HILFE! ;(

    greetz
    atommyk


    Software: c't VDR 6, bisher keine großen Anpassungen
    Hardware: Epia M10000Neh, 512 MB Ram, 80 GB Seagate Barracuda 5 (zu klein :D), Zapway-IR-Modul; verbaut in einem Alu-/MDF-Casecon

Jetzt mitmachen!

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