Frage zu RemoveGrain?

  • Hallo,

    ich hab mich mal an dem revoveGrain Filter versucht.
    Ich bin im Moment grad am Testen und hab mal für den Anfang ein Script verwendet welches von Max so zum Teil gepostet wurde.
    Leider funktioniert es nur wenn ich 2 Zeilen deaktiviere.

    function LRemoveDust(clip input, int _mode, int "limit")
    {
    limit=default(limit,4)
    repmode = 2
    clensed = Clense(input)
    rep=Repair(clensed, input, mode=repmode)
    rg = RemoveGrain(rep, mode=_mode)
    rd=TemporalRepair(rg, rep)
    #return LimitChange(rd, input, limit, limitU=255)
    }
    function LimitedSharpen(clip input, float amount)
    {
    repmode = 16
    sharpened = Sharpen(input, amount)
    #return Repair(sharpened, input, mode=repmode)
    }


    LoadPlugin("d:\Programme\AviSynth 2.5\plugins\DGDecode.dll")
    Mpeg2Source("D:\DVD\Demux\test.d2v")
    Crop(8,80,704,416)
    LRemoveDust(4,2)
    undot()
    LimitedSharpen(1.0)
    AddBorders(0,80,0,80)

    Ich hab die betreffenden Zeilen mal markiert.
    Kann mir jemand helfen wo da mein Fehler liegt und was die Zeilen bewirken?

    Gruß Xanti

    :daumen: Das Leben ist wunderbar! :daumen:

  • Erst mal einen schönen Gruß an Max, mit Klaps auf den Hinterkopf.

    Dieses gepostete "LimitedSharpen" ist NICHT LimitedSharpen. Das ist "ModerateSharpen" von kassandro.

    Das *richtige* LimitedSharpen gibt's hier, ist von mir, sehr viel langsamer :) , und von Enthusiasten wahrscheinlich bevorzugt.


    Zu Deinem Fehler - kassandro's Paket enthält verschiedene Versionen der Filter, für verschiedene Prozessor-Instructionssätze (SSE, SSE2, SSE3). Probier' doch mal eine andere Version der Plugins zu laden.

  • Danke bis hier her.
    Bin aber noch nicht weiter. Hat der Fehler was mit der return Funktion zu tun?
    Der LimetedSharpen funktioniert aber scheinbar.
    Auch muß er im RemoveGrain enthalten sein so wie Max geschrieben hatte, denn ich habe keine extra .dll im Pluginordner.

    Noch jemand ne Idee? Xanti

    P.S. Das Ergebnis sieht übrigens auch mit den beiden deaktivierten Zeilen gut aus und die geschwindigkeit ist gegenüber temporalSoften auch gut.

    :daumen: Das Leben ist wunderbar! :daumen:

  • Jede nutzerdefinierte Funktion, deren Ergebnis weiterverarbeitet werden soll, braucht einen Wert (meist einen Clip) als Rückgabewert. Wenn du die Return-Zeile auskommentierst, dann tut die Funktion überhaupt nichts mehr. Also anstatt die Funktion völlig zu zerstören, solltest du lieber mehr Wert auf den Inhalt der Fehlermeldung legen! Im ersten Fall (There is no function named "LimitChange") weiß AviSynth anscheinend nicht, was "LimitChange" für eine Funktion ist; solche Fehler passieren üblicherweise, wenn die Autoren der Funktionen nicht dokumentieren, welche Plugins sonst noch benötigt werden, und diese dann nicht im AutoLoad-Verzeichnis vorhanden sind - oder wenn jemand sich eine Funktion aus einer Sammlung ausschneidet, die jedoch noch auf weitere Funktionen zugreift.

  • Soweit ich gefunden habe, steckt die Funktion "LimitChange" in der SSETools.dll (die ich nicht habe, weil mein Prozessor eh kein SSE kann).

    grua hatte aber mal noch 'ne Variante ohne LimitChange besprochen, wenn ich mich recht erinnere?
    __

    An alle Skript-Autoren:

    Dokumentiert eure Skripte! Ganz besonders, wenn sie bestimmte DLLs oder weitere Skripte voraussetzen, die nicht automatisch AviSynth oder GordianKnot beiliegen!

  • Also bei mir war beim download nur das im anhang dabei. Aber ich werd die .dll mal suchen, denn ich hab einen P4.

    Xanti

    :daumen: Das Leben ist wunderbar! :daumen:

  • Hi,
    jaja ist ganz schön schwierig, beim Meister am Ball zu bleiben...

    Aber zunächst mal:
    Das Paket, was Du da hast ist alt, lad das mal direkt hier runter
    http://www.removegrain.de.tf/

    Außerdem: Wenn was mit den Skripten vom Meister nicht klappt, sind immer die Masktools ne gute Anlaufstelle (glaub 1.5.6) von hier
    http://jourdan.madism.org/~manao/

    Viel Glück damit!

    [edit:]
    Aber manchmal kann es einem schon auf die falsche Spur führen, wenn man bei http://www.avisynth.org/warpenterprises/ das Paket runterläd - ich nehm inzwischen meist die dort angegebene Adresse und schau direkt dort...

    [edit2:]
    Achtung, Link zu den Masktools geändert

    Grüße!
    Trekkie2

  • So sieht mein Avisynth Plugin Ordner aus. Was da nich is is nich.
    Die Suche nach der .dll gestaltet sich schwierig und die Beschreibung von RemoveGrain ist wieder englisch :kotz:

    :daumen: Das Leben ist wunderbar! :daumen:

  • Danke es wird besser. Kein fehler mehr, aber der MPC geht gleich wieder zu.
    Hmm. Die Seite mit den Masktools ist ja super unübersichtlich.
    Was davon brauch ich denn?

    Xanti

    :daumen: Das Leben ist wunderbar! :daumen:

  • Zitat von LigH

    Soweit ich gefunden habe, steckt die Funktion "LimitChange" in der SSETools.dll (die ich nicht habe, weil mein Prozessor eh kein SSE kann).

    grua hatte aber mal noch 'ne Variante ohne LimitChange besprochen, wenn ich mich recht erinnere?

    Wahnsinns Gedächtnis du hast ;) Jo - LRemoveDust ohne LimitChange (für nicht SSE-fähige CPUs) findet sich hier:
    http://forum.gleitz.info/showpost.php?p=199459&postcount=27 bzw hier: http://forum.gleitz.info/showpost.php?p=199564&postcount=29

  • Danke für Eure Hilfe. Jetzt hab ich die masktools.dll und das neueste RemoveGrain Paket drin.
    Jetzt bekomm ich vom MPC die Meldung zu wenig Arbeitsspeicher.
    Na jetzt brauch ich für meinen Test nen neuen PC? :kotz:

    :daumen: Das Leben ist wunderbar! :daumen:

  • Hab im Moment P4 2,4 512 DDR 333 auf Gigabyte Board. Sollte eigentlich noch ne Weile bleiben.

    Gruß Xanti

    :daumen: Das Leben ist wunderbar! :daumen:

Jetzt mitmachen!

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