Beiträge von dannyx

    Hey danke @ sidewinder:

    Ich hatte gestern auch noch diese, leider verlustbehaftete Möglichkeit ausprobiert.
    -----------------------------------------------------------------------------
    LoadVirtualDubPlugin ("C:\Programme\AviSynth 2.5\plugins\VDubFilter\Rgb.vdf", "RGB")

    ConvertToRGB32()
    Rgb (-5, 0, -2)
    ConvertBackToYUY2()
    -----------------------------------------------------------------------------
    Naja, hatte sich ja leider niemand mehr auf mein Script hin gemeldet. Daher der Spagat ...:cool:

    Ich werd aber mal gleich Deine Vorschläge antesten; vielleicht spare ich mir da die Umkonvertierung des Farbraums.

    Im Übrigen suche ich auch noch ne Möglichkeit, das Script hinsichtlich auf die Geschwindigkeit schlußendlich zu optimieren (~0.26 - 0.28 fps) ... is halt nicht gerade der "Überflieger".

    Danke & Gruß Danny :)

    Hier jetzt nochmal ein kleines Update meines Scripts.
    ------------------------------------------------------------------------------
    Import("C:\Programme\AviSynth 2.5\plugins\TemporalDegrain.avs")
    Import("C:\Programme\AviSynth 2.5\plugins\vhssharp.avs")
    Import("C:\Programme\AviSynth 2.5\plugins\DeHalo_alpha.avs")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\tdeint.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\nnedi.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\ChromaShift.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\cnr2.dll")

    AVISource("K:\VIDEO\11-07-95 Basdorf\Capture_20070730-014131.avi")
    SetMemorymax(768)
    Trim(520,11672)
    edi = NNEDI(field=-2)
    tdeint(mode=1, edeint=edi)
    Crop(16,16,-16,-16)
    Tweak(hue=0.0,sat=0.9,bright=8.0,cont=1.00)
    ChromaShift(C=2,L=-3)
    cnr2()
    ConvertToYV12()
    TemporalDegrain()
    DeHalo_alpha()
    vhssharp(5)
    AddBorders(16,16,16,16)
    SeparateFields().SelectEvery(4,0,3).Weave()
    ---------------------------------------------------------------------------
    Die AGC.dll hab ich wieder rausgenommen. Zwar hat sie das Video gut "ausgeleuchtet", leider aber das Chroma Noise etwas sehr begünstigt. Stattdessen hab ich das Video über Tweak einen Tick heller gemacht und den CNR2-Filter eingesetzt, um wenigstens ein bischen das typische VHS-Chroma Noise zu filtern.

    Den CNR2 habe ich auf default gelassen, da ich mich hier mit den einzelnen Parametern nicht auskenne.

    Auch wollte ich den gesamten Rot-Anteil im Video ein wenig verringern, da ich einige Artefakte ausmachen konnte (gelber Vorhang im Video wies stellenweise leichte rote Hintergrundflecke auf). Über RGBAdjust war es zwecks Farbraum nicht möglich. Vielleicht hat ja noch jemand eine Lösung für den YUY2-Farbraum, die nicht zu kompliziert ist? Ich wollte die Farbveränderung gern vor dem "ConvertToYV12" durchführen.

    VHSSharp habe ich jetzt auf 5, anstatt auf 4 gesetzt, weil ich nicht genau weiß, inwieweit die zusätzliche Filterung mit CNR2 hier nochmals die Schärfe nimmt?

    Wäre super, wenn noch ein paar Anregungen von euch kämen ... :)
    Wenn das Script dann fertig ist, stell ich es auch gern hier rein ... vielleicht hilft es ja dem einen oder anderen Neueinsteiger, nicht?

    Danke & Gruß Danny

    Danke Didée!
    Mein Script sieht nun so aus ... hab noch ein bischen rumgespielt.
    -----------------------------------------------------------------------------
    Import("C:\Programme\AviSynth 2.5\plugins\TemporalDegrain.avs")
    Import("C:\Programme\AviSynth 2.5\plugins\vhssharp.avs")
    Import("C:\Programme\AviSynth 2.5\plugins\DeHalo_alpha.avs")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\tdeint.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\nnedi.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\ChromaShift.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\AGC.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\GuavaComb.dll")

    AVISource("K:\VIDEO\11-07-95 Basdorf\Capture_20070730-015040.avi")
    SetMemorymax(768)
    edi = NNEDI(field=-2)
    tdeint(mode=1, edeint=edi)
    ChromaShift(C=2,L=-3)
    HDRAGC()
    Crop(16,16,-16,-16)
    ConvertToYV12()
    DeHalo_alpha()
    TemporalDegrain()
    vhssharp(4)
    AddBorders(16,16,16,16)
    SeparateFields().SelectEvery(4,0,3).Weave()
    --------------------------------------------------------------------------
    Habe zusätzlich noch DeHalo mit reingenommen, da im Videobild leichte helle Ränder um die Konturen sichtbar waren.
    Weiter sieht durch die AGC.dll sieht das Bild jetzt etwas besser ausgeleuchteter aus, allerdings ist nun auch ein minimales Chroma Noise (diese typischen VHS-Farbflecken rot/blau/gelb) zu erkennen. Habe schon etwas gegoogled und bin über das Plugin GuavaComb gestolpert, allerdings bewirkt das irgendwie überhaupt nichts. Gibt´s dafür irgendwie noch Abhilfe?

    Ansonsten wüßte ich jetzt auch nichts mehr weiter ....

    Danke & Gruß Danny :)

    Hallo,

    habe jetzt nochmal ein wenig mein Script modifiziert. Dies wäre dann die endgültige Variante, um meine leicht bis mäßig verrauschten Videos in den Griff zu bekommen. Gut, der Geschwindigkeitsknaller ist es nicht gerade (~0,3fps), aber wenn das Endergebnis stimmt, was soll´s ... :D
    --------------------------------------------------------------------------
    Import("C:\Dokumente und Einstellungen\Office\Desktop\TemporalDegrain.avs")
    Import("C:\Programme\AviSynth 2.5\plugins\vhssharp.avs")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\tdeint.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\nnedi.dll")
    LoadPlugin("C:\Programme\AviSynth 2.5\plugins\ChromaShift.dll")

    AVISource("K:\VIDEO\Capture_20070730-015040.avi")
    SetMemorymax(768)
    edi = NNEDI(field=-2)
    tdeint(mode=1, edeint=edi)
    ChromaShift(C=2,L=-3)
    Crop(16,16,-16,-16)
    AddBorders(16,16,16,16)
    ConvertToYV12()
    TemporalDegrain()
    vhssharp(4)
    SeparateFields().SelectEvery(4,0,3).Weave()
    ---------------------------------------------------------------------------

    Wäre super, wenn ihr nochmal drüberschauen könnt (zwecks evtl. Korrektur, Optimierung, etc.), bevor ich dann anfange, etwa 30 Stunden Material zu bearbeiten.

    Danke & Gruß Danny

    Um nicht einen neuen Thread zu eröffnen, poste ich hier mal weiter.

    Bin jetzt endlich mal wieder dazu gekommen, an meinen Videos zu schrauben und habe jetzt folgendes Script zusammen:
    ---------------------------------------------------------------------------
    Import("C:\Dokumente und Einstellungen\Office\Desktop\TemporalDegrain.avs")
    Import("C:\Dokumente und Einstellungen\Office\Desktop\FastDegrain.avs")
    Import("C:\Dokumente und Einstellungen\Office\Desktop\TempGaussMC_beta.avs")

    AVISource("C:\Dokumente und Einstellungen\Office\Desktop\raw_basdorf.avi")
    SetMemorymax(768)
    Bob(0,0.5)
    Crop(8,16,-8,-16)
    AddBorders(8,16,8,16)
    ConvertToYV12()
    ChromaShift(C=2,L=-2)
    TemporalDegrain()
    SeparateFields().SelectEvery(4,0,3).Weave()
    ---------------------------------------------------------------------------
    Wäre das Script bis dahin okay? Oder gibt´s vielleicht noch weitere Optimierungsmöglichkeiten?

    Vorweg gesagt, werde ich das Material wohl doch interlaced lassen.

    Nun hätte ich aber dennoch eine Frage:

    Der TemporalDegrain filtert wirklich hervorragend das Rauschen, leider habe ich das Gefühl, daß er auch viel an Detailschärfe nimmt. Besonders fällt es bei z.B. Rasenflächen, Bäumen, Hauswand, etc. auf. Ich habe zwar im Script (TemporalDegrain) noch unterschiedliche Degrain-Werte ausprobiert, fand aber (2) als den optisch besten Wert. Läßt sich zusätzlich noch etwas Schärfe zurückholen, ohne das Rauschen dann wieder zu begünstigen? Vielleicht sogar im Script direkt?

    Ich habe auch gerade mal ebend 2 Videoschnipsel hochgeladen, um das Ganze mal visuell wiederzugeben.

    Rohvideo-Ausschnitt ~ 90 MB

    mit obigen Script bearbeitet (TemporalDegrain) ~ 90 MB

    Möglicherweise habt ihr ja noch Verbesserungsvorschläge!?

    Danke euch schonmal & Gruß Danny :)

    Okay, ich habe also alles mit den verschiedenen Deinterlacer bearbeitet. Schon jetzt zeichnen sich subjektiv sichtbare Unterschiede ab. Was ich allerdings in meine persönliche Wertung nicht nehmen konnte, waren die Deinterlacing-Methoden, die schlußendlich 50fps vorweisen (waren meine Favoriten!). Wie bringe ich die dann wieder runter auf 25fps, um ein vergleichbares Resultat zu haben?

    Danke & Gruß Danny

    Okay, dann nix für ungut. Hab´s dann wohl falsch aufgefaßt, weil es im Kontext zu meiner Frage stand.;D

    Nachtrag: Habe das jetzt per Script gebacken bekommen (Fehler meinerseits). Kann ich eigentlich den HUFFYUV-Codec für das deinterlacete Video nehmen. Welcher Codec empfiehlt sich dann bei einem "ConvertToYV12"-Befehl und Übergabe an VDub?

    Sorry, aber wenn Leute anfangen zu versuchen ihre alte VHS Aufnahme eines Films umzuwandeln, den es auch auf DVD gibt und deshalb ihre Rechner 3-Tage rund um die Uhr rödelt, dann läuft da meiner Ansicht was schief. ;)

    Falls das jetzt in meine Richtung abzielte, muß ich Dich enttäuschen, denn:

    -da das Material ja von Hi8 auf VHS überspielt wurde, läßt ja nur den Schluß zu, das es sich eben nicht um einen Film handelt, den es auf DVD gibt, sondern um unwiederbringliches privates Material, das dann den Aufwand (für mich persönlich) auch wert ist.

    Was als persönlich wertvoll angesehen wird, definiert ja nun jeder selbst.

    @ Didée: Konntest Du schon einen Blick auf den Videoschnipsel werfen? Leider komme ich mir dem 2ten Script nicht ganz klar und bekomme nur Fehlermeldungen ...

    Habe nun rausgefunden, daß es sich hierbei wohl um den TempGaussMC_alpha4(?) handelt. Leider finde ich nur das Script der alpha3-Version.

    Didée: Findet sich vielleicht irgendwo das Script für den TempGaussMC_alpha4(max) im Net? Würde ich sehr gern für das Deinterlacing nutzen wollen.

    Weiter wäre meine Frage, ob dann dieses Script gemeinsam mit dem TemporalDegrain-Script nutzbar wäre? Ich frage dies, weil im TempGaussMC sicher eine Funktion "Degrain" (wie in der alpha3) enthalten ist. Würde das dann Sinn machen?

    Danke schonmal wieder & Gruß Danny

    Danke @ Didée. :)

    Und GENAU das meine ich, wenn ich mir nun die Videoschnipsel ansehe. Qualitativ ist von grottenschlecht bis super alles vertreten, aber ALLE machen angeblich denselben Job. Meine Favoriten sind da ganz klar "25-50_0-source50p" & "25-50_5-TGMCa4(max)". Also ist das Deinterlacing doch keine Glaubensfrage a la "Welcher Deinterlacer ist nun besser ...", sondern ganz klar für mich die Erkenntnis:"Es gibt supergute Deinterlacer und eben Deinterlacer, die nicht so prall deinterlacen."

    Gibt es eigentlich zu den beiden, von mir erwähnten Deinterlacing-Methoden ein Script für Avisynth?

    Danke & Gruß Danny

    @ selur: Mir geht´s hier ja nicht um eine Grundsatzdiskussion über Deinterlacer, sondern welcher Deinterlacer den qualitativ besten Job macht. Da zählen ja sicher nur Erfahrungsberichte. Weiter wäre es interessant zu wissen, wo man die Scripts für die, von Dir angesprochenen Bob-Deinterlacer herbekommt bzw. wie diese aussehen. Habe zwar Google bemüht, aber nicht wirklich was gefunden.

    Didée: Leider kann ich die verlinkten Beispiele nicht ansehen, um mir mal ein Bild über die Möglichkeiten zu machen. Fehlt mir hier evtl noch ein Plugin? Bekomme unter VDub die folgende Fehlermeldung:"Couldn´t locate decompressor for format 'HFYU' (Huffyuv. Danach kommt irgendwas mit VFW comaptibler codec.

    Danke & Gruß Danny

    @ selur: Wie ist das eigentlich bei den genannten Deinterlacing-Methoden? Blenden die nicht einfach nur die Halbbilder zusammen bzw. entfernen jedes 2te Halbbild? Also, ich fand die Idee, aus 50 Halbbilder 50 Vollbilder zu machen und dann auf 25 Vollbilder runterzurechnen qualitätsbezogen irgendwie interessant. Vielleicht lieg ich ja damit auch falsch?

    @ sidewinder: Duo-Core & spezifische GrafKa scheiden aus. Hab nen Athlon 2700+ und ne "normale" ATI Radeon am Start.

    Das TemporalDegrain-Script ist dieses, welches Didée vor einigen Beiträgen verlinkt hatte. Meine mich aber zu erinnern, daß es ziemlich up-to-date war.

    Stimmt schon, daß das Thema Deinterlacing SEHR weitreichend ist. Ich suche halt die derzeit qualitativ BESTE Möglichkeit (sofern es eine gibt!) zum Deinterlacing. Daher hatte mich diese o.g. Methode interessiert.

    Danke & Gruß Danny

    Soooo, nun mußt ich nochmal kurz etwas nachhaken.

    Also, ich habe jetzt einige Scripts ausprobiert und bin bei TemporalDegrain hängengeblieben. Die Geschwindigkeit ist zwar alles andere als atemberaubend (~1fps), dafür macht dieses Script für mein Empfinden ein "entrauschteres" Bild als GTDegrain.

    Deinterlacen möchte ich schon, da das Video sowohl auf dem PC, als auch auf dem TV gesehen werden soll. Jetzt hatte ich irgendwo im Net aufgeschnappt, daß die beste Deinterlacing-Methode wohl darin bestehen soll, aus den 50 Halbbildern 50 Vollbilder zu machen.

    Daher meine Frage(n):
    1. Gibt es zu dieser Methode ein Script bzw. wie müßte so ein Script dann aussehen?
    2. Deinterlacing VOR TemporalDegrain, oder erst DANACH? Was macht mehr Sinn?


    Danke euch schonmal wieder für eure Hilfe & Gruß Danny

    Ich hab jetzt einfach mal alles aus dem Plugin-Ordner genommen, was SSE als Anhang hatte. Er scheint jetzt auf die "einfache" dll zurückzugreifen.

    Danach hatte ich einen testweise Ausschnitt aus meinem Video per TomsMoComp und den bereits geposteten Einstellungen deinterlaced, was wohl auch geklappt hat. Allerdings, wenn ich das o.g. Script einbinde und mir die Vorschau im VDub anschaue, ist dort kein Unterschied oder Verbesserung zu sehen. Ich hatte das der Einfachheit halber mal so gemacht:
    -----------------------------------------------------------------------------
    Import("C:\Programme\AviSynth 2.5\plugins\Denoiser_VHS.avs")

    AVISource("C:\Dokumente und Einstellungen\Office\Desktop\test.avi")
    -----------------------------------------------------------------------------

    Denoiser_VHS = GTDegrain (ich hab´s halt nur für mich praktisch umbenannt)
    Irgendwie werd ich das Gefühl nicht los, daß ich das Script unter der AVISource auch irgendwie per Code ansprechen muß? Ich meine, ich muß ja doch irgendwie angeben, WAS das Script nun machen soll. So zumindest meine Logik und die unveränderte Vorschau.

    Das mit dem "Rumgenörgel" kenne ich. Sind meist nur Kiddies und aus dem Alter (ich geh mal davon aus) sind wir ja nun raus ...::cool:
    Im Prinzip blicke ich schon bei Videobearbeitung durch, nur ist AviSynth für mich Neuland. Bin eigentlich auch mehr im Audiobereich "zuhause" ... :)

    Okay, ich nehme mal an, daß ich das Script dann anpassen müßte! Kämpf ich mich durch! :D

    Im Prinzip habe ich ja nix anderes gemacht, als den Plugin-Ordner vorher zu sichern und dann die Version zu deinstallieren. Neue Version drauf und die Plugins (bis auf 3 neuere) ersetzt.

    Das Material, was es zu bearbeiten gilt, liegt durch HuffYuv-Codec im YuY2-Farbraum vor. Könnte es da noch Probleme geben?

    Wie ist das eigentlich mit dem Deinterlacen? Habe mal gegoogelt, aber nicht wirklich was Brauchbares gefunden bis auf das hier:
    -----------------------------------------------------------------------------
    video1="... xxxxx.avi"
    avisource(video1).ConvertToYUY2(interlaced=true)
    TomsMoComp(-1,5,0)
    -----------------------------------------------------------------------------

    Danke nochmal für Deine "Engelsgeduld" ... Gruß Danny


    Nachtrag: Leider ist im Script nix zu ändern. Die beiden anderen Versionen der RemoveGrain.dll sind im Plugin-Verzeichnis vorhanden.

    Tatsachlich war noch die AviSynth2-Version am Start. Problem behoben und nun ist die aktuelle 2.5-Version am Start.

    Nochmal kurz zu meinen vorherigen Fragen und einer weiteren Problemmeldung.

    Hatte jetzt versucht, mal nur das Script zu laden und bekomme die Fehlermeldung, daß RemoveGrain wohl eine SSE2 kompatible CPU benötigt. Ich habe hier einen AMD Athlon 2700 XP am Start.

    Danke auch an Sidewinder für die Vorschläge & Gruß Danny