Beiträge von dmh

    swer: Das so zu automatisieren, halte ich net für sinnvoll. Irgendwann soll auch mal ein Zusammenschneiden von zwei oder mehreren Aufnahmen ermöglicht werden. Dann könntest Du Dein Vorhaben in zwei Schritten realisieren: 1. Aufteilen der Sendung in die verschiedenen Teile, also A, B, C, D, E. (Das geht ja jetzt schon.) 2. Aneinanderschneiden von A, B, E, dann A, C, E, dann A, D, E.


    Ich werde das auf jeden Fall mal im Hinterkopf behalten und beim Entwickeln des Mergers (Zusammenschneiders) dann berücksichtigen.


    Ist echt schon spannend, welche (verrückten) Arten von Schneiden und Zusammenfügen von Aufnahmen es so gibt... :D

    Zitat

    Original von vejoun
    1. Wenn man eine Aufnahme ein zweites Mal schneidet, entfernt VDR normalerweise vorher den ersten Schnitt. cutalot hangt den zweiten Schnitt an den ersten an.
    cutalot sollte auch wie VDR den ersten Schnitt vorher entsorgen.


    Jo, stimmt. :D


    Zitat

    Original von vejoun
    2. cuttime. Macht nur Sinn wenn die zu schneidende Aufnahme noch ungeschnitten ist.
    Schneide ich eine geschnittene, steht die wirkliche Aufnahmezeit ja gar nicht mehr zur Verfügung.


    Ich habe mir schon überlegt nicht eben die Index-Datei als Grundlage zu nehmen, sondern die PTS. Denn nehmen wir mal an, dass VDR in einer Aufnahme mal 10 Minuten irgendwie abgeschmiert ist, dann sind die Indizes nahtlos und nach dem Crash stimmt die Zeit dann auch nicht mehr. Wenn man davon ausgeht, dass VDR korrekt startet, könnte man die erste PTS als Nullwert nehmen und dann alle anderen PTS entsprechend in vergangene Zeit umrechenen. Dann könnten auch nach beliebig vielen Schnitten immernoch die korrekte Zeit angezeigt werden. Dann müsste allerdings stets die Annahme gelten, dass VDR zumindest immer korrekt startet und dass die locale Uhr zumindest minutengenau geht. Mal sehen, was sich da so machen lässt.


    Ich hatte eh mal angedacht, dass es beim Setzen der Schnittmarken interessant wäre, die zu dem Zeitpunkt aktuelle Uhrzeit anzuzeigen. Also wenn eine Aufnahme um 20.05 Uhr startet und man dort eben nicht 0:00:00.01 anzeigt sondern 20:05:00.01. Das hätte zum Beispiel den Vorteil, dass man dann mal nach 20.45 Uhr springen könnte (wenn bei den privaten meist der erste Werbeblock anfängt... ;))

    Danke für den Hinweis. Ich habe nicht gesehen, dass diese Methode nur mit dem BigPatch zur Verfügung steht. Hab's jetzt schon geändert. Denke heute kommt die 0.0.2a. Die bekommste aber jetzt noch nicht, da ich auch noch eine Fehler gefunden habe. ;)


    Aber Du kannst auch einfach selbst Hand anlegen. Ändere doch in der cal-gapfinder.c die Zeile 48 zu:

    Code
    marks.Add(index->GetNextIFrame(index->Last(), false));


    Dann sollte es kompilieren... :]

    Für heute abend habe ich keine Lust mehr, auch nicht, die History ins Deutsche zu übersetzen. (Also, wenn sich jemand daran versuchen möchte, bitte gerne).


    Im Anhang gibt's die neue Version.


    Kurze Beschreibung: Schneidet eine Aufnahme in mehrere Aufnahmen anhand von benannten Schnittmarken.



    Aus der History:


    Viel Spaß beim Ausprobieren.




    DMH


    EDIT: Version 0.0.2a mit Bugfixes gibts weiter unten im Thread.

    Zitat

    Original von uzer
    Hallo,
    wieder eine sehr innovative geschichte für den vdr dein plugin :)
    hier haben einige den Wunsch nach kapitelmarken geäussert, für Konzerte z.B. so wie ich das sehe kann ich mit deinen plugin diese funktion improvisieren!? ich möchte nix schneiden - nur marken setzten und u.U. beschriften


    Genau das funktioniert mit dem Plugin nicht! Zumindest noch nicht. Bei dem Plugin geht's in erster Linie um's Schneiden. Die Marken müssen noch per Hand mit einem (Text-)Editor eingegeben werden. Das kommt sicher irgendwann, ich weiß nur noch nicht wann... ;)

    Hab meinen VDR dazu schon etwas gepatcht bzw. angefangen. Er zeigt zu jeder Zeit hinter dem Titel der Aufnahme den Namen der letzten Cut-In-Marke an. Wenn man also mit 'Rot' irgendwo hinspringt, zeigt er den aktuellen Song an. :)


    Mit dem Editieren über OSD hab ich mich noch nicht beschäftigt. Ich habe mir ein kleines Script geschrieben, was über die gotv-Homepage das aktuelle Lied alle 10 Sekunden abruft und bei Veränderung direkt in die marks.vdr einträgt. Dann muss man nachher nur noch die Schnittmarken genau verschieben und Cut-a-Lot macht den Rest... ;)


    Ich möchte irgendwann einen eigenen Editor für Schnittmarken in mein Cut-a-Lot implementieren, wo man sie dann auch benennen kann etc. Wenn Du gerne helfen möchtest... :D

    Zitat

    Original von Dagget
    Was der Lückenfinder macht, hab ich verstanden, aber wozu braucht man das? Nur damit bei der Wiedergabe das kurzzeitig "defekte" Bild nicht zu sehen ist?


    Könnte man schon, aber ich benutze das nur als Indikator. Wenn sowas auftritt, brenn ich die Aufnahme eben nicht direkt auf DVD, sondern warte vielleicht noch auf 'ne Wiederholung oder so. Außerdem hab ich meist die Werbemarken nach einem Schnitt entfernt. (Bei den Simpsons zum Beispiel.) Bevor solche Aufnahmen jetzt auf DVD kommen, lass ich mir nochmal die Schnittmarken heraussuchen und schau, ob der Schnitt "sauber" ist. Wenn ja, DVD brennen, wenn nicht, warten bis Wiederholung kommt.


    Vielleicht gibt's ja noch andere tolle Sachen, die man damit machen kann... ;)

    Ich weiß nicht genau, was "handlearchived.sh" genau macht, aber man sollte auf jeden Fall im Aufnahmeverzeichnis die Datei "index.vdr" löschen. Der neue erstellte Index heißt nämlich "index_archive.vdr" und es könnte sein, dass, wenn die alte index.vdr im Verzeichnis liegt, diese und nicht die von der DVD genommen wird.


    Also lösch einfach mal bitte die index.vdr...


    EDIT: Was natürlich nicht stimmt, sind die Schnittmarken! Diese basieren noch auf der alten index.vdr und könnten nun evtl. auf nicht I-Frames liegen, womit der VDR nicht klar kommt. Dafür muss ich mir auch nochmal etwas überlegen, wie die Schnittmarken zu behandeln sind...

    Zitat

    Original von vejoun
    Es reicht das Script des VDR. Es sollte nur nicht das Script mit dem falschen Sendungsnamen aufgerufen werden, sondern x-mal mit den Teilstück-Namen.
    Idealerweise ähnlich zu dem umbenennen von extrecmenü.


    Code
    executing 'rwrapper.sh partedit "/video1.0/Musik/Mitschnitte/Retro_Charts/%Sam_26.11.2005-19:00/2005-11-26.18.55.05.99.rec" "/video1.0/Musik/Mitschnitte/Retro_Charts/%Village_Peo
    ple_-_YMCA/2005-11-26.18.55.05.99.rec"'


    Nur statt "rename" z.B. "partedit" und das ganze x-mal. Dann kann man das gut auswerten.


    Hört sich doch gut an, würde aber als Parameter "multi-cut" vorschlagen... ;)


    Zitat

    Original von vejoun
    Wenn man die beiden Plugins über das Service-Interface verbindet, könnte im Befehle-Menü
    vom extrecmenu "Schneiden"/"Lücken suchen" aufgerufen werden. extrecmenu übergibt dann den Aufnahmenamen an cutalot. Sofern nordlicht Interesse hat. ;D


    Ok, hab verstanden. Dazu müsste ich mir bei Gelegenheit dann auch mal das Service-Interface ansehen...


    Aber Ideen gibt's schon mal genug. Das ist gut.


    Was ich auch auf jeden Fall noch einbauen möchte ist eine Merging-Funktion, um mehrere Aufnahmen aneinander zu schneiden. Das ist auch manchmal ganz hilfreich...

    Zitat

    Original von vejoun
    1. Die geschnitten Teilaufnahmen haben kein % vorm Namen, kann man das evtl als Setup-Option einstellbar machen?


    Jupp, kommt in 0.0.2. Aber ich muss mir noch überlegen, ob lieber ins Setup oder doch direkt zu einer Menü-Funktion. Beim Lückenfinder gibt's ja schon einen Parameter. Denke, dass ich den Multi-Schnitt dann auch parameterisiere. Vielleicht könnte man, ähnlich wie im Burn-Plugin, im Setup Standardwerte hinterlegen und, ob die Einstellungen generell angezeigt werden sollen... Mal sehen.


    Zitat

    Original von vejoun
    2. Könntest Du den cuttime-Patch einbauen? Der sorgt dafür das die geschnitten Teile die Zeit bekommen zu der sie gesendet wurden.


    Gute Idee, werde ich mir mal bei Gelegenheit ansehen. Macht ja durchaus Sinn.


    Zitat

    Original von vejoun
    3. Nach dem schneiden kann ja ein Script aufgerufen werden.
    z.B. executing 'rwrapper.sh edited "/video1.0/Musik/Mitschnitte/Retro_Charts/%%Sam_26.11.2005-19:00/2005-11-26.18.55.05.99.rec"


    Ist es möglich dort statt "%%Sam_26.11.2005-19:00/" das Script mit dem jeweiligen Namen des geschnittenen Teils aufzurufen? Denn obiges ist ja genaugenommen nicht korrekt ;)


    Sollte dann hier das original Skript des VDR zur Nachschnittbehandlung aufgerufen werden oder lieber ein eigenes?


    Zitat

    Original von vejoun
    4. Besteht die Möglichkeit das evtl. (später) in extrecmenu verfügbar zu machen? Über das Service-Interface müsste das doch gehen?


    Was meinst Du hier genau? Kannste das bitte etwas spezifizieren? Was soll dort wie verfügbar gemacht werden? ;)


    Zitat

    Original von vejoun
    5. Optional: Wenn Du beim Lückenfinder zusätzlich den Anfang und das Ende in die marks.vdr schreibst wäre das eine echte recover-Funktion für versehentlich gelöschte marks.vdr. 8) Kann man zwar auch sehr schnell manuell markieren, aber ich würds nett finden.


    Auch hier 'ne gute Idee.

    Hi zusammen,


    wollte auch der Community mein erstes Plugin zur Verfügung stellen.


    Aus der README.de


    Über Kritik und Anregungen, natürlich auch etwaige Bugs, würde ich mich freuen.


    Viel Spaß beim Ausprobieren.




    DMH

    Du benutzt wahrscheinlich noch eine ältere Version des Plugins, welche dieses Feature meiner Meinung nach nicht unterstützt. Die aktuelle Version 0.1.0-Pre21 lässt das Fenster brav geöffnet.


    Denke, dass Du ohne Upgrade keine Chance hast...

    Zitat

    Original von herbsl
    dann hast du doch eine quasi vdr-interne garbage collection, und du hast trotzdem sehnsucht nach java ... :rolleyes:


    Jupp, eigentlich schon. ;( Viele einfache Sachen gehen mir bei C dann eben doch viel zu kompliziert... Aber man kann eben nicht alles haben.


    Aber wichtig ist ja, dass es funktioniert.

    herbsl: Das stimmt natürlich. Hatte das auch schonmal so gelöst, wollte dann aber wieder möglichst nah an das Original ran. Der Thread basiert nämlich auf dem Cutter-Thread.


    Habe es jetzt mit MainThreadHook() umgesetzt und es funktioniert wirklich gut. Hatte mich schon gefragt, warum der VDR selbst, den Cutting-Thread so eigenartig aufruft, aber das mit dem Suizid wird wohl der Grund gewesen sein. ;)


    Funktioniert jetzt prima. Danke schön.

    Vielen Dank schonmal dafür. Tja, so eine Garbage-Collection bei Java beispielseweise ist schon 'ne feine Sache... :D


    Mal sehen, ob dann wohl eher Housekeeping() oder MainThreadHook() zum Tragen kommt.

    Ich benötige mal etwas Hilfe, habe im Netz nichts passendes gefunden. Wie muss ich einen Thread löschen?


    Ich möchte, dass er die Action-Methode ausführt und nach dem Durchlauf eben gelöscht wird.


    Was bewirkt eigentlich "delete this;"?


    Ich habe gelesen, dass delete den Destruktor aufruft und anschließend den Speicher freigibt. Ist das korrekt so?


    Das Problem ist nämlich, dass im Destruktor noch ein cFileName freigegeben werden soll, damit die passende Datei geschlossen wird. Ein "lsof" zeigt mir aber, dass die Datei noch gehalten wird und wohl nicht freigegeben wurde.


    Also, wie muss man solch einen Thread richtig löschen?