Super Resolution AviSynth mit FFDshow

  • Hallo,

    ich suche eine Möglichkeit wie ich das Avisynth Plugin (http://www.infognition.com/super_resolution_avisynth/) in FFDshow verwenden kann um damit beim Video schauen besser zu resizen.

    Player ist der MPC-HC.

    Die Skrypt Beispiele auf der Seite des Herstellers bringen mich nicht wirklich weiter.

    Wie müsste ein Typisches Scrypt (SetMTmode) usw. aussehen damit es läuft?

    http://www.infognition.com/super_resolution_avisynth/

    mfg

    fritzee89

  • :welcome:

    Schreib mal besser "Skript" mit i. Daran ändert auch das y in AviSynth nichts. ;)

    Im Allgemeinen ist bei AviSynth-Plugins eine hohe Verarbeitungsqualität wichtig. Dafür wird auch in Kauf genommen, dass die Berechnungen vielleicht so langsam sein können, dass das Video nicht in Echtzeit verarbeitet wird. Ich weiß nicht, ob das bei Super-Resolution auch der Fall ist, je nach CPU, aber wundern würde es mich bei dem Aufwand nicht.

    Wenn es dennoch innerhalb von ffdshow funktionieren sollte, gelten die folgenden Regeln (soweit ich mich erinnere, ohne Gewähr):

    1) Im AviSynth-Skript-Tab von ffdshow keine Source-Funktion angeben, für die Videoquelle sorgt ffdshow schon selber.

    2) Am Ende des Skriptes kann es nötig sein, Distributor() zu verwenden, das wäre zu testen.

    3) Welcher MT-Modus gesetzt werden muss, damit es überhaupt bzw. stabil liefe, ist auch auszutesten. Modus 2 wäre am effizientesten, aber auch etwas riskanter; danach kämen v.a. die Modi 3, 5 oder 6 in Frage.

    Ob mir dieses Plugin nun knapp 38 EUR wert wäre, wüsste ich jetzt nicht. Zaubern kann ein Super-Resolution-Verfahren auch nicht gerade...

  • Naja, ich sage mal ich scheiß auf die 38€, sofern es besser funktioniert als alles bisher getestete.

    Ich habe mir jetzt mal folgendes ausgedacht. Müsste doch so funktionieren.

    SetMTMode(3,4)
    ffdshow_source()
    SetMTMode(2)

    clip.SR()

    clip.SR(1920,1080)SetMTMode(1)GetMTMode(false) > 0 ? distributor() : last


    Desweiteren, habe ich 3 verschiedene Skripte bei denen ich eure Hilfe bräuchte, diese zu analysieren. Was, wann, wo passiert.

    1. Dieses Skript ist für maximale Schärfe des Bildes. + asharp und high Quality block filtering in ffdshow

    http://image-upload.de/image/dKWI97/08fa3661e4.jpg

    2. Dieses Skript ist für Bildtiefe und natürlichkeit. Es sieht sehr analog aus. + unsharp mask in ffdshow

    http://image-upload.de/image/wgejL8/cdd87aff4d.jpg

    3. Dieses Skript ist für ein sehr sauberes Bild. Bisher habe ich keine Bildfehler entdeckt. +kein schärfen in ffdshow

    http://image-upload.de/image/r1KGTc/b048828085.png

    Ziel des ganzen ist, ein Skript zu finden bzw. zu entwickeln, welches auf Skript 1 basiert und ohne Schärfeverlust Skript 2 und 3 integriert. Also eine Summe aus 1+2+3.

    Noch eine Frage: Gibt es stand Heute, ein Plugin welches den selben Effekt und die selbe Qualität liefert, wie Interframe per SVP und dabei Resourcensparender ist?

    mfg fritzee89

  • Vorweg: Wenn du Alt+Druck verwendest, wird nur das aktive Fenster kopiert, nicht das ganze Bildschirm; davon abgesehen kann selbst IrfanView einen rechteckig markierten Bereich freistellen, und erst recht Paint.net oder XnView.

    Dann ganz allgemein: Das selbe Ergebnis kriegt man nur mit dem selben Plugin und den selben Parametern. Aber es kann gut sein, dass man mit anderen Voraussetzungen ein sehr ähnliches Ergebnis hinkriegt.
    __

    Dein Beispiel-Skript kann nicht funktionieren, weil du ein paar entscheidende Grundlagen der Syntax in AviSynth-Skripten nicht verstanden hast. So kann man eben nicht irgendwie mehrere Funktionsaufrufe in die gleiche Textzeile schreiben. Im Allgemeinen gehört je ein Funktionsaufruf alleine in eine Zeile. Es sei denn, man weiß, warum und wie man sie innerhalb einer Zeile verknüpfen kann, beispielsweise durch einen Punkt dazwischen verketten.

    Das gleiche gilt auch für die sonderbaren Skripte aus deinen Screenshots. Ich weiß nicht, woher du die hast, aber sie sehen ebenso unsinnig aus. Insbesondere jeweils deren erste und letzte Zeile. Gerade die letzte Zeile dieser Skripte wären auch mit Punkt zwischen je zwei Funktionen inhaltlich unsinnig. Was nützt mir am Ende nach allen Filterungen noch mal das Umschalten auf Modus 1, wenn danach nichts mehr passiert?

    Und wie Selur schon richtig bemerkte: Das SuperResolution-Plugin an sich arbeitet ja schon multithreaded, also spare dir die Versuche, das mit einem MT-AviSynth noch zu potenzieren. SetMTMode ist nur für Funktionen hilfreich, die an sich nur mit einem Thread arbeiten.

    So, und nun noch mal zu deinem gewünschten Ziel... Du möchtest also beliebige Videos auf eine höhere Auflösung hochrechnen. Vermutlich soll die Ziel-Auflösung deiner Bildschirm-Auflösung nahe kommen? Soll dabei das Seitenverhältnis beachtet werden, oder sind dir Eierköpfe egal?

    Machen wir's mal ganz kurz: avssr.dll in das AviSynth-Plugin-Verzeichnis kopieren, "ffdshow-Videoquelle hinzufügen" anhaken, und dann einfach nur in den Code-Bereich:

    Code
    SR()

    Das sollte zum Testen reichen, ob es überhaupt arbeitet. Es wird dann einfach so viele Threads verwenden, wie deine CPU Rechenkerne meldet, und damit die Breite und Höhe verdoppeln. Achtung: Auch, wenn du damit ein 1080-HD-Video schaust. Wie man ein Skript schreiben würde, dass für jedes Video die optimale Vergrößerung bis auf deine Bildschirmauflösung wählt und dabei auch noch das Seitenverhältnis beachtet, wäre schon ein ganzes Stück aufwändiger...

    Was nun deine drei Skripte aus den Screenshots angeht ... dazu mag ich nicht viel sagen. Das Geplärre von "maximaler Schärfe" ist für mich Video-Terrorismus. Wer so was von sich gibt, der hat nicht verstanden, was "Schärfe" ist. Details, die mangels Auflösung verloren gegangen sind, kann kein Plugin wiederherstellen, egal wie aufwändig es rechnet. Wenn du dich traust, dann nenne uns die Quelle dieser Skripte, damit wir alle was zu lachen haben... :rolleyes:

  • Ich habe überhaupt keine Ahnung von Avisynth. Deswegen bin ich ja hier. Bisher hab ich nur Skripte kopiert, eingefügt und getestet. Zeilen aus den Skripten entfernt, getestet um zu verstehen was da überhaupt abgeht.

    Die 3 Skripte aus den Bildern, da könnt ihr euch gerne an http://homecinema.wix.com/html_kazcorpor…nfig-kaz-7/c42y wenden. Hier ist der Forumthread von dem Laden http://www.homecinema-fr.com/forum/multimed…-t29968248.html . Ich vermute die Leute dahinter haben das selbst nur kopiert.

    Der Begriff maximale Schärfe kam von mir. Die Typen haben es als hohe Schärfe beschrieben. Ich meine für nen Laien wie mich funktionieren die 3 Skripte. Sie verändern das Videobild annähernd so wie es beschrieben ist.

    Meine Meinung Zum Thema "Video-Terrorismus": Ich habe mir vor kurzem einen 1080P TV gekauft, um 1080P Bluerays oder Rips da drauf zu sehen. Geworben wurde doch immer "HD schärfer als die Realität" oder so ähnlich. Wenn ich dann sehe wie die Details der Schauspieler im FullHD Video aussehen, dann sehe ich nix von "Schärfer als die Realität". Für mich muss das angezeigte Bild (Video) schon fast der Realität entsprechen. Wenn ich manche Schauspieler auf der Straße treffe, Frage ich mich bei 1080P Videos, wo sind die Falten, Poren usw.. Und um das zu visualisieren, bin ich hier. Das man nicht mehr Details aus nem Video rauskitzeln kann, als überhaupt vorhanden sind, ist mir klar. Man kann das Gesamtpaket aber optisch verbessern.

  • Anscheinend wurde meine Antwort nicht gepostet. Daher nochmals.

    Ich habe keine Ahnung von Avisynth. Deswegen bin ich hier. Bisher habe ich nur Skripte kopiert und ausgetestet. Desweiteren Zeilen in Skripten gelöscht oder andere probiert um Avisynth zu verstehen.

    Die Quelle von den 3 Skripten aus den Bildern ist http://homecinema.wix.com/html_kazcorpor…nfig-kaz-7/c42y

    Der Supportthread von dem Laden ist http://www.homecinema-fr.com/forum/multimed…-t29968248.html

    Ich schätze mal, dass die Avisynth Skripte auch nur kopiert wurden.

    Die Worte maximale Schärfe hatte ich gewählt. Von denen wurde das Skript als hohe Schärfe bezeichnet.

    Zum Thema „[FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]Video-Terrorismus“ : [/FONT][FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]Ich kann mich noch leicht daran erinnern wie mit HD geworben wurde. HD schärfer als die Realität usw.[/FONT]
    [FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]Wenn ich mir eine Blueray anschaue, frage ich mich desöfteren, wo sind denn die ganzen Details (Falten, Poren, usw.) die man angeblich sehen soll. Also mit schärfer als die Realität ist da nix. [/FONT]

    „[FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]So, und nun noch mal zu deinem gewünschten Ziel... Du möchtest also beliebige Videos auf eine höhere Auflösung hochrechnen. Vermutlich soll die Ziel-Auflösung deiner Bildschirm-Auflösung nahe kommen? Soll dabei das Seitenverhältnis beachtet werden, oder sind dir Eierköpfe egal?“ [/FONT]

    [FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]Ich versuche mit dem Softwarebundle MPC-HC+ffdshow+Avisynth+madvr+Reclock, die Videos so Realitätsnahe wie möglich darzustellen. Das ist mein Ziel. [/FONT]
    [FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]Primärziel ist erstmal, bei allen Videos die ich habe, die Auflösung zu verdoppeln. Unabhängig von der Bildschirm-Auflösung. Das Seitenverhältnis sollte dabei beachtet werden. [/FONT]

  • Zitat
    Zitat

    Wie müsste ein Typisches Scrypt (SetMTmode) usw. aussehen damit es läuft?


    Gar nicht, bzw., vergiss es einfach.

    Dieser "High-Resolution" Filter ist i.d.Praxis ziemlich nahe bei "Schlangenöl". ;)

    Für Upscaling im Zweifelsfall einfach die NNEDI3.dll nehmen (Filter NNEDI3_rpow2() ), das funktioniert problemlos, und liefert mindestens genau so gute, in der Regel bessere Ergebnisse.

  • Gar nicht, bzw., vergiss es einfach.

    Dieser "High-Resolution" Filter ist i.d.Praxis ziemlich nahe bei "Schlangenöl". ;)

    Für Upscaling im Zweifelsfall einfach die NNEDI3.dll nehmen (Filter NNEDI3_rpow2() ), das funktioniert problemlos, und liefert mindestens genau so gute, in der Regel bessere Ergebnisse.


    Nicht in der Regel sondern wirklich Besser. Aus Schrott (Scheiße) Gold machen gibt es nicht und wird es auch nie geben. Informationen die nicht da sind kann man nicht neu errechnen. Das wäre dann Schlaraffenland....
    Sogar ein Simples "Spline64Resize()" sieht gegenüber "Super Resolution" besser aus.

    Einmal editiert, zuletzt von Propaganda (16. Oktober 2014 um 21:12)

  • Anscheinend wurde meine Antwort nicht gepostet.

    Weil du mit weniger als 5 Beiträgen schon Links postest. Und die Moderatoren bekommen keine Nachricht darüber, wenn ein Post "freizuschalten ist"...

    Die Worte maximale Schärfe hatte ich gewählt. Von denen wurde das Skript als hohe Schärfe bezeichnet.

    Das ist ja schon im Ansatz falsch. Wer als Ausgangslage eine niedrige Auflösung hat, der hat die "Schärfe" schon verloren und wird sie nie wieder bekommen, egal mit welcher Technik da was hinzu-erfunden wird.

    Ich kann mich noch leicht daran erinnern wie mit HD geworben wurde. HD schärfer als die Realität usw.
    Wenn ich mir eine Blueray anschaue, frage ich mich desöfteren, wo sind denn die ganzen Details (Falten, Poren, usw.) die man angeblich sehen soll. Also mit schärfer als die Realität ist da nix.

    Wenn auf der Blu-ray nur hochskalierte Normalauflösung ist, also keine echte HD-Abtastung, kann das nicht besser aussehen.

  • Hi,


    danke fuer eure Antworten.


    Beim lesen der Antworten, ist mir aufgefallen, dass der Thread ein komplettes Missverstaendniss wird.


    Daher cut und Neustart.


    Ich schaue nur native 1080p und 720p videos auf einem 1080P Monitor.


    Da mir die Anzeigequalitaet der Videos aber noch nicht zu 100% gefaellt, bin ich auf der suche nach den besten Bildverbesserern fuer einen Windows Software Videoplayer.


    Das nicht mehr Bilddetails hinzugefuegt werden koennen als ueberhaupt vorhanden sind, ist mir vollkommen klar.


    Aber es gibt Bildverbesserer wie bei Fernseher und Blueray Player.


    Dadurch bin ich auf saemtliche tutorials im Internet gestossen, die alle mit ein und denselben Softwarebundle arbeiten.


    Unter anderem auch die 3 Avisynth/FFDShow Settings/Skripte auf den Bildern.


    Mein Gesamtziel ist 1 Setting/Skript aus den Vorteilen aller 3 Settings/Skripte zu vereinen. Oder noch einfacher gesagt, das beste Bildverbessererbundle zu bekommen.


    Wichtig dabei ist, eine cpu i5 2500k uebertaktet auf 5,2 GHZ und eine Grafikkarte Radeon R9 290x, sollten dann die Videos noch fluessig abspielen koennen.


    Aus interesse und eigeninitiative heraus, habe ich versucht alle 3 Skripte zu analysieren.


    Dabei bin ich auf folgendes gestossen.


    Fuer mich als Laie, wird in den ersten paar Zeilen der Skripte, die Videoaufloesung verdoppelt.


    Daraufhin habe ich mich im Internet auf die Suche nach dem qualitativ besten Videoaufloesungsverdoppeler oder Resizer fuer Avisynth gemacht.


    Superresolution wurde auf mehreren Foren und Webseiten als bester dargestellt. Und soll zudem noch sehr Ressourcensparend sein.


    Die darauf folgenden zeilen wie schaerfenplugins usw. kommen erst noch ran.


    Daher hatte ich nach dem Superresolution plugin gefragt.


    Vielleicht koenntet ihr mir auch schreiben wie das optimale skript aussieht und welche plugins ich verwenden sollte.


    Oder welcher der qualitativ Beste Videoaufloesungsverdoppeler / Resizer fuer Avisynth ist


    Ich hoffe das Verstaendnisproblem in diesem Thread, damit beseitigen zu koennen.


    Schoenes Wochenende euch allen und sorry fuer meine amerikanische Tastatur.

  • ... bin ich auf der suche nach den besten Bildverbesserern fuer einen Windows Software Videoplayer.
    ...

    Oder noch einfacher gesagt, das beste Bildverbessererbundle zu bekommen.
    ...

    Oder welcher der qualitativ Beste Videoaufloesungsverdoppeler / Resizer fuer Avisynth ist ...

    Wenn es einen besten gäbe, bräuchte man alle anderen nicht mehr.

    Aber der Ansatz an sich ist schon falsch, wenn man glaubt, man könne ein Bild "verbessern". Es gibt eigentlich objektiv (messbar) nur eine sinnvolle Strategie: Das Bild so wenig wie möglich zu verschlechtern (was eventuell schon damit beginnt, dass man möglichst hochwertiges Material hat, und dessen kann man sich noch nicht mal bei Blu-rays sicher sein, je nach Hersteller).

    Ob es subjektiv (fühlbar) angenehmer zu machen geht, hängt stark davon ab, was für den jeweiligen Betrachter angenehmer wirkt. Manche mögen es "so scharf wie möglich" und bemerken dabei nicht, dass das eigentlich gar keine Schärfe ist, sondern Kompressionsartefakte.

    Vielleicht gefällt dir das Ergebnis von SuperResolution, wo es bei leichter Bewegung tatsächlich ein wenig Informationen aus umliegenden Frames gewinnen kann (aber meistens kann es das nicht, v.a. wo keine Bewegung ist). Vielleicht gefällt dir das Ergebnis von NNEDI3 zur Auflösungsverdopplung mit Kanteninterpolation (die aber auch mal ein Muster falsch interpretieren kann). Und vielleicht gefallen dir auch die Ergebnisse mancher Schärfefilter (auch wenn die eher Ringe um Kanten erzeugen und im Original bereits vorhandene Kompressionsartefakte verstärken, also alles blockiger und krümeliger zeigen). Vielleicht wird das Bild für dich durch so etwas "besser", dann aber für manch andere eher nicht. Und je mehr Filter nacheinander das Bild noch besser und noch besser und noch besser machen sollen, umso weniger glaube ich persönlich an den Erfolg.

    Wenn überhaupt, sind dezentere Änderungen eher zu empfehlen, und halbwegs intelligente Funktionen, die ihre Wirksamkeit abhängig vom Bildinhalt steuern. Der Ansatz "mit EDI verdoppeln und danach verkleinern" ist eher für erhebliche Vergrößerungen geeignet, in denen ohnehin normale Skalierungsfunktionen entweder zu weich oder auffällig überschärft (mit Ringing) arbeitet. Bei geringeren Unterschieden oder gleicher Auflösung reicht wahrscheinlich schon LimitedSharpenFaster. Aber drei schärfende Funktionen nacheinander wird ziemlich sicher Übertreibung.

Jetzt mitmachen!

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