High Quality - Deinterlacing mit AVISynth

  • nach mpeg2source sollte kein assumexff stehen, damit man die FO-Flags des Stream mitauswertet.

    aber sonst gefaellt mir Deine gegenprobe!

    ich war sonst immer recht unsicher mit 4,1,2 und 4,0,3 (habs immer durcheinandergebracht) und du machst mich jetzt noch unsicherer...

    na doll nichmalmehr feste werted afuer!

  • Bei der Gegenprobe sollte eigentlich nichts schief gehen können. Den AssumeTFF() hatte ich noch zur Sicherheit mit drin. Macht aber keinen Unterschied - AssumeBFF() aber schon.
    Trotzdem: Mir wäre es wirklich sehr lieb, wenn da nochmal wer anderes eine Gegenprobe machen könnte. Sicher ist sicher.

  • Hallo Ihr Profis,

    ich habe mir den ganzen Tread jetzt bestimmt 33 mal durch gelesen. So gtanz hab ich es nicht kapiert.

    Mein Script sieht jetzt so aus:

    LoadPlugin("C:\PROGRA~1\GordianKnot\mpeg2dec3.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\undot.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\decomb.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\KernelDeInt.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\dgbob.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\TomsMoComp.dll")
    Import("C:\Programme\AviSynth 2.5\plugins\TMCBob.avsi")
    mpeg2source("F:\DVD\TNG\2x09\t1.d2v")
    crop(14,0,696,572)
    TMCBob(true)
    BicubicResize(640,480,0,0.5)
    TemporalSoften(2,2,6,8,2)
    Undot()


    ist das so OK?


    cu


    Massaguana

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Massaguana

    wenn ge-deinterlaced wird, dann immer als erstes deinterlacen und dann Bildbaearbeitung betreiben!

    also so:

    LoadPlugin("C:\PROGRA~1\GordianKnot\mpeg2dec3.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\undot.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\decomb.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\KernelDeInt.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\dgbob.dll")
    LoadPlugin("C:\PROGRA~1\GordianKnot\TomsMoComp.dll")
    Import("C:\Programme\AviSynth 2.5\plugins\TMCBob.avsi")
    mpeg2source("F:\DVD\TNG\2x09\t1.d2v")
    TMCBob(true)
    crop(14,0,696,572)

    BicubicResize(640,480,0,0.5)
    TemporalSoften(2,2,6,8,2)
    Undot()

    der feine Unterschied ist schräg gestellt ;)


    ...cu

  • Nun ja... nicht umsonst steht dieser Beitrag auch bei "Fortgeschrittenes AviSynth Scripting".

    Wer nach dem Resizen noch Soften und Undot anwendet, obwohl TMCBob möglichst scharf und detailliert deinterlacen soll, der hat zumindest einige Grundlagen der Verarbeitung noch nicht beachtet - nur mal damit angefangen, dass für viele Filter empfohlen wird, sie auf das Original-Material anzuwenden, bzw. wenigstens vor dem Resizen.

    Na, ich lasse das mal lieber die Beteiligten endgültig klären...

    Zumindest scheint mir der Aufruf TMCBob syntaktisch richtig zu sein.

  • ashyak: Danke für die korrektur.


    LigH: Du kannst mich gerne verbessern, ich weiß das ich mich damit nicht so toll auskenne. Aber deshalb bin ich ja auch hier. Um was zu lernen.
    Das soften ist da drin weil ich das die ganze zeit benutzt habe. Wednn du sagst das das quatsch ist, gut. mach ich das mal ohne.
    Was "Undot" bedeutet weiß ich leider nicht. Ich habe schon auf der Avisynth Homepage gesucht. hab aber nichts gefunden. Da Gordian Knot das immer mit rein bastelt habe ich das auch mal drin gelassen. Ich dachte das das kein Filter ist sondern ein aufruf für erweiterte CPU Befehle. Oder so was in der Richtung. Weil sind ja auch keine werte eingetragen.


    cu

    Massaguana

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Entschuldige - sollte keine Kränkung gegen dich sein, sondern lediglich eine Zusammenfassung. Liest sich zugegebenermaßen aber leider zu angreifend - hab ich wieder mal blöd formuliert...

    Ich kritisiere nicht, "dass" du diese Funktionen verwendest, eher "wo". Aber ich muss zugeben, dass ich auch nicht bei jedem einzelnen Filter zweifelsfrei beurteilen kann, wo er am günstigsten anzuwenden sei. Die meisten Rauschfilte jedoch sollte man vor dem Resizen verwenden, weil Rauschen, das skaliert wurde, sich danach oft schlechter filtern lässt.

    UnDot ist übrigens ein "Median-Filter" (suche danach mit Hilfe von Google), der ist zum Entfernen von Rauschen mit kleinen zufälligen Punkten recht gut geeignet. Aber keinesfalls vor dem Deinterlacen einsetzen - wie alle "spatiale" (flächige) Rauschfilter nur auf die Fields oder nach dem Deinterlacen. So, wie der arbeitet, braucht er keine Parameter.

    Inwiefern ein Temporal-Rauschfilter bei Interlaced-Material Nebeneffekte bringen kann, kommt auch auf die Stelle an, an der er verwendet werden soll. Hier kann auch "nach dem Resizen" nicht ganz so verboten sein.

  • Bin nicht gekränkt, ich weiß das ich davon keine ahnung habe.

    Ich werde wohl wenn ich zeit habe ein wenig mit dem teil Testen.

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Hi,
    mir ist noch etwas aufgefallen das mich ein wenig verwirrt ;)



    im Posting von ashyak

    stehen in script "Plugins\KernelDeInt.dll " müsste dies nicht Plugins\KernelDeInt140.dll lauten ??
    hab es hier abgeändert da das script so leider nicht ging.

    zum anderem

    müsste ich hier nicht ein converttoyuy2 einfügen wenn man hier mit dem cce arbeitet ? und wenn ja müsste dies doch vor TMCBob erfolgen ?

    ansonsten bin ich von dem High Quality - Deinterlacing mehr als begeistert.
    sehr gute Bildquali die ich niemals erwartet hätte.

      scharfis_brain

    würde sich am Ende des scripts evtl. ein msharpen zur schärfung anbieten ?

    Ice

    Ps. hatte mit dem CCE den Faktor 0.23 und das mit nem P4 2,4 und 512MB Ram ;)

  • müsste ich hier nicht ein converttoyuy2 einfügen wenn man hier mit dem cce arbeitet ?

    dann muesste man aber auch nicht deinterlacen...
    denn CCE macht keine 50p, soweit ich weiss, und SVCD schon garnicht.

    würde sich am Ende des scripts evtl. ein msharpen zur schärfung anbieten ?

    k.Ahnung kommt auf die Quelle und Deinen Geschmack an!

  • Zitat von Iceberg


    im Posting von ashyak

    stehen in script "Plugins\KernelDeInt.dll " müsste dies nicht Plugins\KernelDeInt140.dll lauten ??


    Wenn die DLL halt kerneldeint.dll heisst, dann muss man das auch entsprechend aufrufen. Aber schlecht ist es nicht, wenn die Versionnummer im DLL Dateinamen steht.

    Zitat von Iceberg


    müsste ich hier nicht ein converttoyuy2 einfügen wenn man hier mit dem cce arbeitet ? und wenn ja müsste dies doch vor TMCBob erfolgen ?

    füge am ende des scripts einfach die folgende Zeile ein:
    info()
    und schon hast du detailierte Information über Farbraum, Framerate,....!
    Wenn du dann zufrieden bist, einfach die Zeile mit # ausmarkieren.

    Nebenbei:
    TMCbob ist selbst ja auch ein Script entsprechend kann da auch eine Farbraumkonvertierung stattfinden.


    ....cu

  • Also mior ist aufgefallen das das encoden mit dem "Filter script" deutlich langsamer ist.

    Hab im firstpass nur 4 fps, im second pass dürfte das ja noch langsamer werden.
    Sonst habe ich 29 fps im Firstpass und 14 fps im secondpass.

    Bin mal gespannt ob das ergebnis die lange zeit aufwiegen kann.


    cu


    Massaguana

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Also ich möchte mal ein kleinen swischenstand meiner Tests abgeben.

    Ich habe ein Film mit 3 verschidenen Settings encodet und ein Screenshot.

    Video1: Ohne Euren Spezial Deinterlaced Filter
    Video2: mit eurem Filter
    Video3: Mit Eurem Filter sowie temporal soften und undot

    Bearbeitungszeit: Video1: 2h
    Bearbeitungszeit: Video2: 12h
    Bearbeitungszeit: Video3: 12h

    Schaut Euch mal die Scrennshots an und sagt mir welches Ihr am besten findet. Ich tendiere zu 3. denn dort sind die detial besser auch wenn die Schatten nicht ganz so gut sind.

    Ich wollte Eigendlich auch eine kurze Video sequenz hier reinstellen. Leider ist mkir aufgefallen das ich die Filme die mit dem Spezial deinterlace Filter encodet wurden nicht Frame genau schneiden kann. Weiß nicht warum. Wollte eigendlich 50 Frames haben. Virtual Dub machte aber immer 124 Frames. Egfal was ich probiert habe der woillte die 50 Frames nicht. Sehr komisch.

    Also beschreibe ich Euch den efekt.

    In dieser Szene sieht man ein paar Poker karten die auf dem Tisch Liegen. Nun greift der Schauspieler in seine Hand und Hohlt eine Herz 5 herraus führt Sie schnell an der Kamera vorbei und legd sie auf den Strapel. Das ganze dauert 50 Frames. Bei Normaler geschwindigkeit ist zwischen 1 und 2+3 kaum ein unterschied zu sehen, außer man guckt wirklich genau hin.

    Das sieht man wenn man das ganze langsamer betrachtet, ohne den Spezail deinterlace Filter gibt es eine Bildverdopplung wo man die Karte auf einmal leicht verschoben zu einander sieht. Sind beide durchsichtig.
    Wenn man die Sequenz mit dem spezal Deinterlece Filter anguckt gibt es diesen Efekt nicht. Die karte ist in jeden Bild zu erkennen. Wobei wenn man noch die Temporal soften Filter dazu nimmt das ganze noch besser zu erkennen ist. Die Zahlen sind nicht so ausgefranzt.

    Würde mich also über ein paar kommentare Freuen.


    cu


    Massaguana

    PS: Achso was ich FRagen wollte wo ist der Unterschiewd zwischen TMCbob und TMCkernelBob?? Das habe ich nicht verstanden.

  • kommando zurueck!
    das sind doch die TNG-DVDs, oder?
    bei denen ist restore24 nur in ausnahmenanwendbar.


    da muss anderes processing ran.

    in normalen sequenzen
    telecide(order=0,post=0,guide=2) # oder order=1

    in effektszenen:
    overlay(tmcbob().selecteven(),tmcbob().selectodd(),opacity=0.5)

    in vermatschten normalen szenen:
    restore24(a2,b2,25,50)

    oder Du stellst einfach mal ein Sample zur verfuegung.

  • Hilfeeeee, jetz macht der das noch komplizierter. :hm:

    Du meinst das ich jede Scene einzeln bearbeiten soll.... Weiß du was du da sagst? Müsstest du eigendlich. 178 Folgen auf die art zu bearbeiten dürfte eine Lebensaufgabe sein, oder?


    Gehe ich Richtig in der annahme das du die screenshot sooo scheiße findest das du mir was anderes vorschlägst? Ich finde das ergebnis eigendlich ganz gut.

    Ich encode gerade eine andere Folge die Inhaltlich das genaue gegenteil ist, also sehr hell viel bewegungen. Mal sehen was da bei raus kommt.
    Mein erster test hat schnipsel hervorgebracht. Hatte wohl das script durch einander geworfen.

    Mein script sieht jetz so aus:

    Damit wurden auch die scrennshots gemacht.


    cu

    Massaguana

    PS: Ja es sind ide TNG DVD´s. Wie sollte so ein Sample aussehen? Format, größe usw.

     MacBookPro 15" 2017 | 4 x 3,1 Ghz | 16 GB Ram | 1TB SSD NVME |

  • Gehe ich Richtig in der annahme das du die screenshot sooo scheiße findest das du mir was anderes vorschlägst?

    nein. garnicht.
    ich weiss nur, dass die TNG-DVDs groesztenteils progressive sind, auch wenns interlaced aussieht.

    und genau deswegen ist ein bobbing auf 50fps nicht grad so dolle sinnvoll.

    Du meinst das ich jede Scene einzeln bearbeiten soll.... Weiß du was du da sagst? Müsstest du eigendlich. 178 Folgen auf die art zu bearbeiten dürfte eine Lebensaufgabe sein, oder?

    hehe,nein, um Himmels willen. blosz nicht von Hand bearbeiten.
    dafuer gibts doch conditional-filtering, welches zumindest zwischen Fall 1 (telecide) und 2&3 unterscheiden kann.

    wie gesagt, mach doch mal nen sample, denn ich denke, dass 50fps video in diesem Fall unnoetig ist.

Jetzt mitmachen!

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