Videos vergleichen

  • Kennt jemand einen Player mit dem ich mehrere Video vergleichen kann, die ich mit Filter (z. B. in einem AviSynth-Script) bearbeitet habe? Ich könnte natürlich auch beide (oder mehr) Videos in einem Player laden den ich nur mehrfach offne (glaube mit dem DivX-Player dürfte das gehen), das ist aber nicht was ich will. Die Videos laufen dann nicht synchron ab. Hat VirtualDub eine solche Funktion? Es gibt 2 Fenster, ich könnte mir zumindest vorstellen, dass man hier 2 Videos vergleichen kann.

    Ein kluger Mann widerspricht keiner Frau ... er wartet bis sie es selbst tut.

  • Unter Linux gibt es einen Player der sowas kann. Ansonsten kenne ich nur welche die YUV Datein analysieren und dabei nebeneinander darstellen. Ob die dann auch abspielen weiss ich nicht.

    AC-Chan(Robert Vincenz)

    AC-Sama(Robert Vincenz)
    (werde für das -Chan zu alt :zunge: )

  • Zitat von scharfis_brain

    ... kaskadieren


    Was für'n Zeug?

    Ein kluger Mann widerspricht keiner Frau ... er wartet bis sie es selbst tut.

  • Na, zum Beispiel je zwei vertikal gestapelte Paare nochmal horizontal miteinander verstapeln - dann kriegt man ein 2x2-Quadrat.

    Ich hab mal ein Skript geschrieben, das in einem 4x4-Quadrat zwei Parameter unabhängig voneinander verändern läßt (z.B. horizontal den Temporal- und vertikal den Spatial-Faktor eines 3D-Rauschfilters) - vielleicht ist "Array4x4" noch irgendwo aufzutreiben...

  • Ach du sch*$%&...

    MPEG2 per MPEG2Source; MKV wohl per DirectShowSource, denke ich - zwei Mal "DirectShowSource" in einem Skript würde ich vermeiden.

    mpeg2 = MPEG2Source("*.d2v")
    mkv = DirectShowSource("*.mkv", fps...)
    StackHorizontal(mpeg2, mkv)

    Aber sieh zu, dass beide die gleiche Videofläche haben. Müsstest du resizen, macht's eh keinen Sinn mehr.

  • Ich kenne mich mit mkv ÜBERHAUPT nicht aus ;) lässt sich dies via Avisource öffnen??

    Wenn ja, dann

    a=avisource("video1.avi").subtitle("filtered/encoded file") # oder directshowsource("xxxx.xxx")
    b=mpeg2source("video2.d2v").subtitle("original file")
    interleave(a,b)

    Voraussetzung ist, dass die beiden Movies die gleiche größe, Farbraum etc. haben.
    Vorteil bei der Interleave methode ist, das die einzelnen Frames der Videos hintereinander gesetzt werden.

    Also .... 1a 1b 2a 2b 3a 3b

    Dadurch kann man via Vdubs Frame-vor und zurück Tasten genau sehen was sich da ändert. (Wie bei Photoshop die Ebenen an und aus schalten)


    Kannst auch noch ein "subtract" als intro vor jedem Paar setzen, was dir vorab genau zeigt, wo du selbst die feinen Unterschiede bei dem folgendem Paar vorab gezeigt bekommst.
    (Hab ich jetzt mal hier im Job aus dem Kopf gezogen, musst du ausprobieren)

    a=avisource("video1.avi").subtitle("filtered/encoded file") # oder directshowsource("xxxx.xxx")
    b=mpeg2source("video2.d2v").subtitle("original file")
    c=interleave(a,b)
    d=subtract(a,b).subtitle("subtract/filtered/encoded file")
    interleave(d,c)


    EDIT Neee ... würde in 1s 1a 1s 1b 2s 2a 2s 2b enden, somit hmmmm....
    Ein .... Selectevery(4,0,1,3) hinten dran ????

    Just test ;)

  • MKV dürfte sich ziemlich sicher nicht mit AviSource öffnen lassen. Es gibt dafür DirectShow-Filter als Splitter, aber ein AVI-FileHandler (wie AviSynth einer ist) ist mir dafür nicht bekannt.

    mpeg2 = MPEG2Source("*.d2v")
    mkv = DirectShowSource("*.mkv", fps...)
    diff = Subtract(mpeg2, mkv) {.Levels(96,1,160,0,255)}
    StackHorizontal(StackHorizontal(mpeg2, mkv), diff)

  • Danke euch beiden für die Tips.
    Leider müsste ich das mpeg2 Video resizen (768 x 576 auf 512 x 368)
    auch bekomme ich vom MPC bei LigH`s Script die Fehlermeldung "Script error: expected a, or ) Dateipfadname.avs, line 2, column 104)

    die fps hatte ich aus dem Gknot.log entnommen.
    Ich habe leider keine Ahnung von Avisynth, meine Versuche mich da reinzulesen endeten immer mit der Einnahme von 2 Aspirin.
    Ich häng mal das Script an.

  • Okay, hab ich korrigiert.
    Tada nächste Fehlermeldung: "Script error in line 3, column 29"
    wo kann ich eigentlich column 29 in der 3.Zeile finden.

  • Zitat von Eriman

    Okay, hab ich korrigiert.
    Tada nächste Fehlermeldung: "Script error in line 3, column 29"
    wo kann ich eigentlich column 29 in der 3.Zeile finden.

    ich würde sagen es ist die geschweifte Klammer vor dem Punkt, bzw. der Punktz wird der Schuldige sein

    "diff = Subtract(mpeg2, mkv) {.Levels(96,1,160,0,255)}" korrigiert "diff = Subtract(mpeg2, mkv) {Levels(96,1,160,0,255)}"

    ich kenne den Aufruf zwar nicht und kann es im Moment auch nicht testen aber ich würde darauf tippen, denn "column 29" ist das 29. Zeichen in Zeile 3 ;)

  • Und ich hab den Teil extra kursiv formatiert, damit man merkt, dass das innerhalb der geschweiften Klammern als "zusätzlich, wenn man möchte" gemeint ist...

    Leute - erst gucken, dann denken, dann ausprobieren. Copy&Paste ist nicht alles im Leben. :nein:

    Also: Mindestens

    diff = Subtract(mpeg2, mkv) # Pflicht

    und vielleicht

    diff = Subtract(mpeg2, mkv).Levels(96,1,160,0,255) # Kür

  • Zitat von LigH

    Und ich hab den Teil extra kursiv formatiert, damit man merkt, dass das innerhalb der geschweiften Klammern als "zusätzlich, wenn man möchte" gemeint ist...

    Leute - erst gucken, dann denken, dann ausprobieren. Copy&Paste ist nicht alles im Leben. :nein:

    ...und ich habs nur aus Erimans txt-File genommen...hab mir das net so genau angeschaut :redface:

  • Ob das Script passt kann ich dir erst morgen posten, da ich alle Dateien auf dem Firmen-PC habe.

    Zitat von LigH+Kommentar Eriman

    Leute - erst gucken, hab ich gemacht und nur irgendwelche Zeichen und zum Teil abgekürzte englische Begriffe gesehen, dann denken, dachte mir kommt von LigH müsste also passen, hab dann nur noch die Dateipfade eingegeben, dann ausprobieren. Copy&Paste ist nicht alles im Leben.

    Hatte ich eigentlich schon erwähnt das ich Avisynth hasse? :hm:
    Ich lese ja alle möglichen Threads hier, u.a. auch im Avisynth Unterforum, besonders wenn sich Viperzahn, Scharfis Brain , Incredible und du euch über Scriptlösungen unterhaltet.
    Euer Motiv oder besser gesagt euer Ziel ist mir meistens klar.
    Damit hört es aber schon auf.
    Wenn Ich lese was diese und jene Zeile (wobei für mich manche Scripte aussehen, als sei jemand auf der Tastatur eingeschlafen) für Auswirkungen hat, dann wirds mir oft zu technisch und die Aspirin ist wieder fällig.

    Eins habe ich aber gelernt, nämlich das Avisynth ein sehr mächtiges Werkzeug sein kann.:ja:

    Aber deswegen hab ich meine Frage als Newbie in einem Newbiethread gestellt.

  • Zitat von Eriman

    dachte mir kommt von LigH müsste also passen

    :hm: Der Fluch der Intellektualität...

    Ich brauch Urlaub. :cool: :ani_lol:
    __

    Zitat

    Es gibt zwei Arten von Menschen:

    Die einen sind intellektuell.

    Und die anderen wissen noch nicht mal, was das bedeutet...

    ;D

Jetzt mitmachen!

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