[ANNOUNCE] Hard Link Cutter Patch 0.1.4

  • Hallo,


    Der Hard Link Cutter Patch hat ein paar Updates und ein neues Feature bekommen, daher war es Zeit, eine aktuellere Version zu veröffentlichen - und ihn diesmal auch im Portal bekannt zu machen.


    Über den Patch:
    Der Hard Link Cutter Patch ändert den Schneidealgorithmus von VDR so, dass er nach Möglichkeit Dateisystem hard links verwendet, um 'Kopien' von Aufnahmedateien anzulegen, was den Schnittvorgang erheblich beschleunigt.


    Der Patch läuft bei mir stabil, trotzdem sollte er mit Vorsicht eingesetzt werden. Weiterhin ist der Patch NICHT GEEIGNET für mehrere /videoxx-Verzeichnisse, auch wenn er keinen Schaden anrichten SOLLTE.


    Beim Schneiden sucht der Patch nach xxx.vdr Dateien, die unverändert kopiert werden würden, und dupliziert die Datei mittels harter Dateisystemlinks, so dass beide Dateien den selben Festplattenplatz nutzen. Nach dem Schneiden kann das Original ganz normal gelöscht werden, die zweite Kopie der Datei wird dann zum einzigen Original.


    Um effektiv zu sein, muss die maximale Dateigröße von 2000Mb auf 30-40Mb gesenkt werden, damit möglichst viele Dateien unverändert kopiert werden. Ab dieser Version des Patches wird dabei rechtzeitig die Dateigröße wieder auf 2000Mb erhöht, um auch bei langen Aufnahmen nicht die Grenze 255.vdr zu erreichen. Details dazu in README-HLCUTTER im Patch.


    Der Patch muss auch in Setup-> Aufnahme-> Hard Link Cutter aktiviert werden, andernfalls verhält er sich wie Original-VDR.


    Download:
    http://www.udo-richter.de/vdr/patches.html#hlcutter
    http://www.udo-richter.de/vdr/patches.en.html#hlcutter


    Siehe auch:
    http://www.linuxtv.org/pipermail/vdr/2007-March/012472.html


    Gruß,


    Udo

  • Zitat

    Original von Urig
    Der Hard Link Cutter Patch ändert den Schneidealgorithmus von VDR so, dass er nach Möglichkeit Dateisystem hard links verwendet, um 'Kopien' von Aufnahmedateien anzulegen, was den Schnittvorgang erheblich beschleunigt.


    Sehr gute Idee.


    Ich kann ihn mangels reinem VDR (LinVDR) und mangels Entwicklungsumgebung zwar weder testen, noch einsetzten. Aber dennoch eine Frage:


    Das bringt so richtig nur was, wenn die Aufnahmen schon in kleinen Dateien vorliegen, richtig? D.h. die alten Aufnahmen mit den grossen Dateien bringen nix.


    Schade, aber werde wohl doch mal umstellen :)

    Glotze: yaVDR (ASRock Q1900M, 4GB RAM, DD Cine S2 V6.5, ZOTAC GT630 (Rev. 2)
    Server: HP ProLiant MicroServer G8, VMware ESXi 5.5 :P

    Einmal editiert, zuletzt von knebb ()

  • Bei 'alten' Aufnahmen bringt es natürlich nicht so viel, da die Wahrscheinlichkeit hoch ist, dass in einer 2000Mb-Datei (~ 50-80 Minuten) eine Schnittmarke ist. Bei einem langen Film ohne Werbeunterbrechungen dürfte die Chance aber gut stehen, zumindest die mittleren Dateien unverändert übernehmen zu können.


    Gruß,


    Udo

  • Zitat

    Original von chrisz
    Hallo,


    gibt es ein grund, warum nach 255.vdr schluß ist. Man könnte doch sicherlich den VDR recht einfach patchen, das er bis 999.vdr aufzeichnet ? Oder ?


    gruß chrisz


    Hi,


    schau mal in die recording.c, da findest du:
    #define MAXFILESPERRECORDING 255
    theoretisch könnte man den erhöhen.


    ABER:
    Man müsste alle Stellen kontrollieren, die mit den Aufnahmen arbeiten, spontan sehe ich nur int als Datentyp, wenn aber irgendwo etwas auf 255 Stellen limitiertes verwendet wird (Byte, Char oder so) dann gäbe es ein grosses Problem.
    Der Aufwand alle Stellen abzugleichen ist natürlich nicht ohne :/

  • Urig:


    Echt Super Teil der Patch !!! Hab nämlich immer das Problem, das ich Aufnahmen von 2 Wochen (also recht viele) auf eine kleine portable Festplatte kopieren muss. Dazu mußte ich die Aufnahmen aus Platzgründen natürlich immer am VDR direkt schon schneiden.


    Das hat vorher STUNDENLANG gedauert ... jetzt mit dem Patch ist es eine Minutensache.


    Verstehe nicht, warum der nicht im VDR direkt als Funktion mit drin ist .. verursacht bei mir keine Probleme (hab aber auch nur eine einzige Videoplatte).


    MFG und DANKE für den Patch
    Marco

  • Der Patch ist immer noch experimentell, und er unterstützt immer noch nicht Systeme mit mehreren /videoXXX-Partitionen, deswegen empfehle ich ihn selbst noch nicht für eine Aufnahme in die offiziellen VDR-Quellen. Wenn die verbleibenden Probleme behoben sind, kann man nochmal über eine Aufnahme als (abschaltbares) Feature nachdenken.


    Gruß,


    Udo

  • Zitat

    Original von Urig
    Der Patch ist immer noch experimentell, und er unterstützt immer noch nicht Systeme mit mehreren /videoXXX-Partitionen, deswegen empfehle ich ihn selbst noch nicht für eine Aufnahme in die offiziellen VDR-Quellen. Wenn die verbleibenden Probleme behoben sind, kann man nochmal über eine Aufnahme als (abschaltbares) Feature nachdenken.


    Gruß,


    Udo


    Deshalb hab ich ihn bei mir auch problemlos mal "installiert" ...
    Und das was existiert scheint wirklich fehlerlos zu sein ...


    Ran an die Wurst ... :lol2


    MFG
    Marco

  • Hi,


    mit 6 Platten (1,5TB) über NFS würde ich einen Hardlink Cutter für mehrere Platten sehr begrüßen. :tup

    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

  • Zur Stabilität, ich habe vor kurzem erst einen Schneidefehler beobachtet, bei einem Schnitt ohne cut-out am Ende. Da scheint also noch ein Fehler drin zu sein... immerhin hat er das Schneiden ordentlich abgebrochen, keinen Datenmüll produziert, und ist nicht abgestürzt. :)
    Sonst ist der Patch bei mir im Dauereinsatz, und hat sich relativ gut bewährt.


    /videoXXX steht definitiv auf meiner todo-Liste, aber da ich gerade erst von einem beruflichen 4-Wochen Auslandseinsatz zurück bin, steht noch einiges mehr auf meiner todo-Liste...


    Gruß,


    Udo

  • Wirklich ne geile Idee von dir mit dem Hardlink-Cutter.
    Hätte da auch noch eine Anregung beizusteuern:
    Dein Algorithmus zur Festlegung wann der VDR eine neue xxx.vdr-Datei beginnt könnte evtl. durch Noad gesteuert werden. Sobald Noad im on-the-fly-Modus eine Schnittmarke setzt könnte der VDR eine neue xxx.vdr-Datei schreiben, sodass später im Prinzip gar keine Dateien mehr geschnitten werden müssen, sondern nur noch entschieden werden muss, ob ein Block komplett bleibt oder komplett wegfällt. Vorraussetzung ist da natürlich, dass Noad die Schnittmarken relativ genau positioniert. (Mir genügts völlig für den Grobschnitt)
    Allerdings weiss ich nicht wie dicht Noad mit dem VDR verzahnt ist und ob das programmtechnisch überhaupt ohne große Umwege abfragbar ist.
    Ist ja nur ne Anregung.


    Gruß
    Jarny

    MLD 3.0.3 Server. Aufnahmen schaue ich mit einem separaten XBMC (OpenElec Distribution) im Wohnzimmer am 47 Zoll HD Fernseher

  • Noad erkennt Werbung ja nicht sofort, sondern erst später, und im Zusammenhang. Und nach einer Minute, wenn Noad sicher ist, dass ein Werbeblock begonnen hat, ist es zu spät. Endgültig wird die Schnittmarke für den Werbeanfang sogar erst nach Ende der Werbung platziert.


    Außerdem ist Noad ja ein unabhängig von VDR laufendes Programm, man könnte höchstens die Schnittmarkendatei auf Veränderungen überwachen.


    Gruß,


    Udo

  • Hi Udo!


    Habe lange gezögert bis ich den Patch eingesetzt habe. Aber nachdem er jetzt gut erprobt ist und ich auf vdr-1.4.12 gewechselt habe, habe ich den gleich mitgetestet. Das ganze funktioniert soweit wirklich sauschnell und sehr gut.


    Vorher habe ich den CutterQueue-Patch mit Autodelete-Funktion verwendet (http://phivdr.dyndns.org/vdr/v…nd_CutterAutoDelete.patch). Hättest du ev. geplant das AutoDelete zu deinem Patch hinzuzufügen? Fände ich wirklich praktisch.


    Hatte mal auf die schnelle beide Patches angewandt und das ging sogar ohne Rejects, aber kompilieren wollte VDR dann nicht. Habe dann aber auch nicht länger gesucht, da ich mir dann dachte dass die beiden ev. nicht so ideal harmonieren. Die Queue kann man sich so aber eh sparen wenn es so schnell geht, d.h. man hat in der Zwischenzeit nicht eine weitere Aufnahme zum Schneiden vorbereitet. Dann wäre eben nur noch das Löschen praktisch, dass man nicht wieder zur vorherigen Aufnahme zurückspringen muss um diese zu löschen.


    Gruß,
    Brougs78

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

  • Hi!


    Habe mal den Teil vom Patch extrahiert und in VDR (mit HardLinkCutter-Patch) eingebaut. Hoffe dass ich keinen zu großen Mist produziert habe. Ein Test hat mal funktioniert wie er sollte. Wer das probiert aber bitte nur auf eigene Gefahr!


    Gruß,
    Brougs78

  • Hi!


    Danke. Wäre toll wenn das reinkommen würde. Mit meiner schnellen Änderung funktioniert das mal soweit.


    Zumindest wird ja geprüft, ob der Schneidvorgang erfolgreich gelaufen ist, d.h. wenn ma sich zu erst sicher war dass der Schnitt passt, dann sollte alles hinhauen. Hatte den alten Patch lange im Einsatz und eigentlich nie was verhauen damit.
    Der hatte allerdings ein anderes Problem (sollt hier keine Rolle spielen): Wenn man den Schnitt zwei Mal angestoßen hat (ging hier ja, da eine Queue eingebaut war), wurde die Aufzeichnung geschnitten, dann das Original gelöscht und dann leider auch die geschnittene, da er nochmal die nicht mehr vorhandene Aufzeichnung schneiden wollte. Das nur so nebenbei ... ;)


    Danke auf alle Fälle für den tollen Patch.


    Gruß,
    Brougs78

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

  • Hallo Udo,


    auch ich habe jetzt dein patch in Produktion genommen :)


    Nur von schneller kann ich nichts merken !? Es ist schonender zur Platte / System weil es nicht die datei kopieren muß, erstaunlicherweise ist es aber nicht schneller. Es sieht genau gleich aus im log ob mit eingeschalteter Hardlink-cutter oder ohne. Nur wie gesagt am systemlast kann man es sher gut erkennen ;)
    Nutze noch vdr-1.4.7 und zwar mit dem ext-patch version 40 (daher ist auch dein patch).


    Ist das normal ?


    Gruß
    Viking

  • Hi!


    Also bei mir (HW siehe SIG) geht das schon deutlich schneller.
    Am Anfang hatte ich vergessen den Patch zu aktivieren und die Split-Größe zu ändern, dann merkt man natürlich nichts. Habe den Patch dan aktiviert und auf 40 MB-Stücke gestellt (in der README sieht man was das für Auswirkungen hat) und dann läuft das (natürlich nur bei neuen Aufnahmen) deutlich schneller. Ist eine Sache von Sekunden (je nach Anzahl der Schnittmarken). Vorher hat das schon deutlich über einer Minute gedauert würde ich mal schätzen ... hatte aber auch den CutterLimitBandwith-Patch drinnen, der das System weniger gebremst hat beim Schneiden.


    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!