[How-to] Zwischenbildberechnung bei Videos

Dieses Thema im Forum "Audio & Video Tutorials" wurde erstellt von -SYNeRGY-, 14. Juni 2011 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 14. Juni 2011
    Zuletzt von einem Moderator bearbeitet: 14. April 2017
    Hallo zusammen,

    einige von euch werden es sicherlich von ihrem TV Gerät zu Hause kennen:

    Die Zwischenbildberechnung (Frame Interpolation)

    Bild

    Jeder TV Hersteller hat dafür einen anderen Namen: Motion-Plus (Samsung), Tru Motion (LG), Motion Flow (Sony), HDMotion (Philips), usw.

    Diese dient zur flüssigeren Bewegungsdarstellung, welche vor allem bei rasanteren Szenen (Kameraschwenks beispielsweise) ihr Potential zeigt.
    Wem also (wie mir) die 23,97 fps bei HD Filmen nicht ausreichen, der kann sich nun über folgendes (von mir vorher erfolgreich getestetes) Tutorial freuen, welches die Anzahl der Bilder pro Sekunde verdoppelt (~48 fps).
    Spoiler
    Der Grund warum ich auf diese "mühevolle" Modifikation zurückgreife, besteht darin dass ich einen Beamer via PC ansteuere, welcher mir nicht die Möglichkeit zur Zwischenbildberechnung gibt, die ich an meinem TV so zu schätzen gelernt habe.
    Egal also ob ihr es für euren TV oder Beamer verwendet, solange das Gerät mit eurem PC verbunden ist müsst ihr auf dieses Feature nicht verzichten.
    Das ursprüngliche Tutorial stammt nicht von mir, ich habe mir lediglich die Mühe gemacht es für diejenigen zu übersetzen, die Schwierigkeiten mit der englischen Sprache haben. Screenshots zur Veranschaulichung füge ich für euch auch hinzu.

    Was wir brauchen :

    K-Lite Mega Codec Pack

    Avisynth 2.5.8

    ffdshow tryouts

    Multithreaded Plugin für AVISynth

    Framedoubling Plugin MVTools


    Nun zur Schritt-für-Schritt-Anleitung :

    1. Installiert zunächst das K-Lite Codec Pack sowie AVISynth.

    2. Als nächstes installiert ihr die ffdshow tryouts, dabei stellt ihr sicher, dass kein Haken bei VFW ist, während ihr in den untersten 3 Kästchen (AVISynth Optionen) einen Haken macht.

    3. Beim Installieren des K-Lite Codec Pack wurde unter anderem der "Media Player Classic" installiert. Öffnet diesen nun und klickt auf den Reiter View -> Options -> Internal Filters. Hier nehmt ihr aus sämtlichen Kästchen den Haken raus. Dann geht zu Output (unterhalb der Playback-Sektion) und ändert den "DirectShow Video Renderer" auf Haali.
    Screenshot dazu:
    Spoiler
    Bild

    4. Nun entpackt ihr das Multithreaded Plugin für AVISynth. Kopiert die avisynth.dll in das Verzeichnis "X:\Windows\system32" (für Windows 32-bit Version), wenn ihr die 64-bit Version habt kommt die Datei in das "X:\Windows\SysWOW64" Verzeichnis. "X:" steht hierbei für die Partition auf der ihr euer Betriebssystem installiert habt und kann daher variieren, im Normalfall ist es "C:".
    Außerdem kopieren wir in dieses Verzeichnis sämtliche Dateien, welche sich im Plugin Ordner befinden, wo AVISynth installiert ist. Existierende Dateien müssen dabei überschrieben werden.

    5. Entpackt jetzt das Framedoubling Plugin MVTools, und kopiert die mvtools2.dll in das Plugin Verzeichnis von AVISynth.

    6. Als nächstes müssen wir ein paar Konfigurationen vornehmen.
    Öffnet das Start-Menü und geht bei ffdshow auf Videodekoder-Konfiguration. Setzt ein Häkchen bei der AVISynth Box auf der linken Seite. Nehmt nun den Haken raus bei ffdshow Videoquelle hinzufügen. Bei Eingangsfarbräume sollte ausschließlich bei YV12 ein Haken gesetzt werden. Bei Puffer Zurück/Vorwärts ändern wir die Werte auf 0/10. (Sollte es nachher zu Rucklern bei der Wiedergabe kommen, kann der Wert z. B. auf 10/10 oder 0/24 geändert werden, bei mir läuft es damit jedoch problemlos.)

    7. Nun müssen wir noch das Skript in das weiße Feld unterhalb einfügen (siehe Screenshot unterhalb):
    Spoiler
    SetMemoryMax(1280)
    SetMTMode(5,4)
    ffdShow_source()
    SetMTMode(2)
    super=MSuper(pel=1, hpad=0, vpad=0)
    backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=0, search=3)
    forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=0, search=3)
    MBlockFps(super, backward_2, forward_2, num=FramerateNumerator(last)*2, den=FramerateDenominator(last)*1, mode=0)
    SetMTMode(1)
    GetMTMode(false) > 0 ? distributor() : last
    Dieses Skript ist für Dualcore Prozessoren geeignet und spielt Fimmaterial bis zu 720p sehr smooth ab, während ihr durch geringfügiges Ändern der Werte die Mehr-Power von einem Quadcore (falls vorhanden) nutzen könnt, und somit auch 1080p Videos problemlos mit Zwischenbildberechnung abspielen könnt.
    Dafür ändern wir den Wert SetMTMode(5,4) auf SetMTMode(5,8) sowie in der drittvorletzten Zeile den Wert mode=0 auf mode=2.
    Screenshot dazu:
    Spoiler
    Bild

    Fertig!

    Ich hoffe ich habe soweit alles verständlich und detailliert wiedergeben können, bei Fragen stehe ich gerne zur Verfügung.
     
    1 Person gefällt das.
  2. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.