Laufenden Timer und bewegte Markierung einblenden

  • Kann mir pls einer erklären wie ich in virtualDub einen Timer einblenden kann, sodass der mit Frame x startet und mit Frame y aufhört die Sekunden zu zählen? (Und natürlich im fertigen Video dann auch zu sehen ist).
    Dazu würde ich gern im Video etwas hervorheben - also z.B. eine Person rot umkreisen, sodass der Kreis sich dann mit der Person mitbewegt.

    Allgemein suche ich einen Guide über virtualDub auf deutsch - bin nicht so gut in englisch, hab aber nie getroffen (bzw. zeigte der Link mitten ins nirgendwo)

  • VirtualDub wird man heutzutage eigentlich nur noch als Mittel zum Zweck verwenden, um das Video an den Codec zu senden und es komprimieren zu lassen. Filter und Effekte aber kann man eventuell wesentlich besser mit AviSynth auf das Video anwenden.

    In AviSynth kann man beispielsweise Bereiche festlegen, auf die ein Filter angewendet wird {ApplyRange()}, Werte in einer Skriptsprache berechnen {String(MulDiv(current_frame-start_frame, FrameRateDenominator, FrameRateNumerator), "%5.1f")}, und diese Werte wie einen Untertitel mit gewünschter Schriftart und Farbkombination an einer bestimmten Pixelposition ins Bild einblenden {Subtitle()}.

    Was man in AviSynth jedoch auch nicht einfach so kann (und in VirtualDub erst recht nicht), ist das "automatische" Hervorheben eines Bildobjektes. "Motion Tracking" ist eine Aufgabe, die das Gehirn um Größenordnungen leichter bewältigt als der PC; die Implementation wäre höchst aufwändig und ziemlich unsicher. Das würde wohl statt dessen erfordern, dass du selbst in mühsamer Kleinarbeit Bild für Bild bearbeitest und auf jedes einen Kreis zeichnest.

    Ich könnte mir höchstens noch theoretisch vorstellen, dass es möglich wäre, lediglich für jedes Bild die Position des Kreises zu übergeben, und AviSynth könnte aus den Positionen automatisch einen Kreis als Bild über das Video blenden. Aber im Moment weiß ich nicht, ob es möglich ist, Bild für Bild ein Wertepaar aus einer Textdatei zu lesen. Vielleicht existiert eine solche Funktion, die müsste ich aber noch suchen (ich erinnere mich, dass es mal einen Beitrag gab, in dem jemand eine Strecke in einer Karte als "Spur ziehender Punkt" eintragen lassen wollte)...

    http://www.avisynth.org

  • Ich habe mir avisynth besorgt und die graphische Oberfläche dazu auch, aber auch nach 8 stunden Anleitungen lesen und einfach durchprobieren habe nichts nützliches gefunden. Es gibt dort die Möglichkeit 2 Videos übereinander zu legen (schätze mal damit könnte ich an der gewünschten Stelle den Timer einbelnden), habe jedoch kein Video von einem Timer.

    Kann mir kaum vorstellen wie der Skript für avisynth aussehen sollte um den Timer einzublenden. Hat einer vielleicht schon fertigen Skript und Video von einem Timer? (am besten mit nur sek und milisekunden).

    Und mit welchem Programm kann ich einzelne Frames bearbeiten? Sowas wie Paint wäre ausreichend - aber eben für Videos.

    danke schon mal wenn jemand mir da weiter helfen kann.

  • Das eigentliche Einblenden eines Timers ist nicht allzu schwierig... kompliziert ist es leider, einen laufenden Timer für einen Abschnitt zu erstellen. Die Variable "current_frame" ist ja nur im Kontext von ein paar speziellen Funktionen verfügbar. Deshalb muss alles, was innerhalb dieses Bereiches passieren soll, speziell ausgewertet und zu diesem Zweck als Zeichenkette übergeben werden -- die wird hier mit dreifachen Anführungszeichen umschlossen, damit sie auch einfache Anführungszeichen enthalten darf.

  • VirtualDub wird man heutzutage eigentlich nur noch als Mittel zum Zweck verwenden, um das Video an den Codec zu senden und es komprimieren zu lassen. Filter und Effekte aber kann man eventuell wesentlich besser mit AviSynth auf das Video anwenden....

    ...einzige Ausnahme ist, wenn das Video bereits mit divx/xvid komprimiert wurde, dann wird VirtualDub mir seiner smart-rendering-Funktion wieder interessant.

    Gruß,
    Olnima

    P.S.: Evtl. diese Frage einmal im VirtualDub-Forum stellen.

Jetzt mitmachen!

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