• Guten Tag

    Ich habe folgendes Problem, bei kammerafahrten horizontal durch den Raum hat das Bild in regelmäßigen abständen kleine "ruckler".
    Ein Leistungsproblem meines Computers ist das sicher nicht und es passiert auf jedem Computer.
    Es ist allgegenwärtig, ganz gleich welche avisynth script einstellungen ich vornehme, welches encoding setting profil ich verwende und was ich in diesem profilen eistelle. Quelle: DVD [PAL 576i50]. Ziel: x264.
    Hat jemand einmal das selbe problem gehabt? Eventuell begehe ich irgendwo einen oder mehrere fatale fehler, wie encodet ihr, was macht ihr alles vom ersten mausklick bis zum letzten?
    Meine vorgehensweise: DVD als TS Ordner auf die festplatte ablegen, über DG Creator ein d2v file erstellen, im AviSynth Script Creator alles einstellen [Dabei wird das vom DG Creator eingelesene und von mir so gewollte Bildformat beibehalten, so gut wie immer ITU 16:9 PAL, wie auch oben als quelle angegeben]. Dann ein passendes encoder profil wählen wie z.b. x264: Unrestricted 2pass Anime_Toons Balanced [wobei wie schon geschrieben es komplett egal ist welches profil ich verwende, das ruckeln bleibt], rechnen lassen, mit mkvmerge muxen, abgeschlossen.

    Sobald ihr mehr Informationen wollt sagt mir bescheid, ich werde mein möglichstes tun. Seid aber bitte präzise [auch wenn ich es eventuell nicht bin].

    Falls ich das Thema im falschen abteil eröffnet habe tut mir dies leid und wenn dieses Thema schon existiert oder zu den abgeschlossenen fällen gehört so habe ich es nicht gefunden, ich habe mich lange durch diese seiten bewegt und fand nichts ähnliches.

    Ich währe dankbar für hilfen.

  • Dein Bildschirm muss auch mit einem ganzzahligen Vielfachen der fps des Videos betrieben werden.

    D.h. für PAL-Filme (25fps) muss der Bildschirm auf 50, 75 der 100Hz laufen
    fpr NTSC FIlme (24fps) muss der Bildschitm auf 24, 48, 72, oder 96 Hz laufen
    für NTSC Video muss der Bilschairm auf 60, 90 oder 120 Hz laufen

  • Ich habe einen 1080p Bildschirm der bis 75 Hz betrieben werden kann, er arbeitet derzeit mit 60 Hz. Ich habe gerade 50 Hz getestet, keine änderung.
    Morgen werde ich ein beispeil-sample verlinken, dann wird bekannt wie das aussieht und was genau ich meine [springt sofort in´s Auge]. Dort sind dann Langsame als auch schnelle Fahrten durch den Raum, wobei mir aufgefallen ist dass vertikale genau wie horizontale betroffen sind.

    Könnte es sein dass es an den FPS liegt? Ob es mit 23.976 FPS besser funktioniert? Eigentlich will ich die 25 ja beibehalten...

  • Es kann auch sein, dass dein Video das Ergebnis einer Normwandlung ist (z.B. von Film = 24 fps auf PAL = 25 fps ohne Beschleunigung, sondern mit 24@25- bzw. 24:25-Pulldown, siehe exotisches Interlacing, Kap. 2.2.1b). Das ruckelt dann penetrant alle halbe Sekunde.

  • Hier Eine Demonstration.
    http://rapidshare.com/files/356216702/F001EM.mkv

    Ich Merke An Dass Ich Keinesfalls Ein Raubkopierer, Uploder Noch Sonstiges Bin.
    Bestimmt Denkt Ihr Nun Dass Dies Eine Außrede Währe. Ist Es Aber Nicht, Die Raubkopierer Konzentrieren Sich Darauf Einen Film Oder Drei Episonden Auf Eine 700 - 750 Megabyte Kleine CD Zu Bekommen, Für Mich Ist Das Irrelevant, Ich Mache Das Für Mich, Zur Sicherheit Und Bequemlichkeit.
    Klar Könnte Es Dennoch Eine Lüge Sein, Was Es Weiterhin, Nach Wie Vor, Früher Sowie Heute Und Auch In Zukunft Nicht Ist bzw Sein Wird.

  • Stinknormales Normwandlungsruckeln.

    Besser wäre es gewesen, du hättest das Originalmaterial statt des fertig Encodeten hochgeladen. So kann nämlich keiner sagen, wie man das korrigiert.

    Im Normalfall dürften da aber die üblichen Verdächtigen wie mrestore und restore24 helfen, ggf. noch Abwandlungen speziell für den Animation-Bereich.

  • Das importieren funktioniert nicht, wenn ich bei Megui auf File/ Import Presets gehe und dann R_pack.zip auswähle öffnet er zwar das fenster aber darin ist nichts enthalten.

    Einmal editiert, zuletzt von Denaturare (27. Februar 2010 um 14:46)

  • Hier ein stück aus dem original File.
    http://rapidshare.com/files/356647337/VTS_02_1-002.vob

    Es wurde mit MKVmerge geschnitten, falls es eine andere bessere Methode für solches gibt dann ist diese mir nicht bekannt. Falls ihr Tipps habt könnt ihr mir diese gerne, sehr gerne mitteilen. Das heißt, wenn euch irgendwo mal Auffällt dass ich irgendetwas vollkommen umständlich oder seltsam mache obwohl es besser oder einfacher geht dann könnt ihr mir ruhig sagen wie. Oder wenn ihr merkt dass ich von irgendetwas überhaupt keine Ahnung zu haben scheine, dann lasst mir euer wissen zu teil werden. [Bin Anfänger, weiß noch nicht so viel und freue mich über jegliche Information]

  • Der Inhalt des Archivs muss ins Plugin-Verzeichnis von Avisynth, die readme.txt bzw. sonstige Anleitungen die beiliegen müssen studiert werden (das ist ganz wichtig!), und dann muss srestore() an der richtigen Stelle per Hand ins Script eingebaut werden.

    Über irgendwelche "Frontends" mit klick/bunt gehts leider nicht, bzw. nicht ohne persönlichen Einsatz. Wichtig ist, dass man versteht, was die restoring-tools eigentlich tun.

  • Verstehe, ich habe nun den Inhalt in das Plugin Verzeichnis kopiert, das readme von srestore habe ich auch gelesen, dort wird angebeben:
    notwendige Plugins: - mt_masktools v2.0 (immer)
    es wird aber mit keinem Wort erwähnt wo man das einfügen soll, mir ordnern oder nur die files oder wie man das verwendet. Im readme von mt_masktools selbst wird auch kein wort darüber verloren wo es hin gehört und wie es verwendet wird. Und Avisynth gibt nun ein Error aus mit der begründung:
    I don´t know what "srestore" means. Vermutlich weil ich es nicht schaffe mt_masktool einzubinden.

    Mal so nebenbei, wie findet man herraus welche Form von interlace das wirklich ist und welchen deinterlacer man benötigt? In MediaInfo steht z.b. nur dass es interlace ist, nicht aber welches genau. Oder Doch? . . . Jedenfalls, ich hatte bis jetzt immer überall nur interlace stehen.

    Nun suche ich weiter nach Lösungen, wenn ich sie finde bevor ihr mir antworten könnt werde ich das schreiben.

  • Also das Skript sieht folgendermaßen aus:

    LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\DGDecode.dll")
    LoadPlugin("C:\...\...\...\...\...\mt_masktools-26.dll")
    Import("C:\Program Files (x86)\AviSynth 2.5\plugins\srestore.avs")
    mpeg2source("C:\...\...\...\...\...\...\D001.d2v")
    bob(tdeint(mode=1))
    srestore(mode=4,omode="pp3.blur(1)")
    crop(2, 4, -2, -2)
    return(last)

    Ergebnis war ein .264 File mit 100FPS, dieses konnte geöffnet aber nicht abgespielt werden, nach dem öffnen stieg die Auslastung von mindestens einem Rechenkern auf 100%, das Bild blieb schwarz und der Player gab keine Reaktion mehr. Tdeint war das einzige das geklappt hat. Die FPS soll man mit "Frate" ändern, klappt aber nicht. Was mache ich falsch? Wie soll ich frate einbinden?

  • TDeint(mode=1) bobbt ja selber schon. Und das bobbst du dann noch mal ... kein Wunder, dass dabei 100 fps entstehen.

    Und vermutlich könnte SRestore(mode=4) vielleicht daran schuld sein, dass die doppelte Framerate nicht wieder halbiert wird?! Aber das weiß ich nicht ohne den Quelltext bzw. die Dokumentation.

  • Mode=4 entfernt, selbes ergebnis. In der Log steht:

    --[NoImage] Standard error stream
    ---[NoImage] x264 [info]: 716x570 @ 100.00 fps
    ---[NoImage] x264 [info]: using SAR=12443/8572
    ---[NoImage] x264 [info]: using cpu capabilities: MMX2 SSE2Fast FastShuffle SSEMisalign LZCNT
    ---[NoImage] x264 [info]: profile High, level 3.2
    ---[NoImage]
    ---[NoImage] x264 [info]: frame I:684 Avg QP:21.37 size: 17344
    ---[NoImage] x264 [info]: frame P:35069 Avg QP:22.55 size: 2606
    ---[NoImage] x264 [info]: frame B:72111 Avg QP:27.04 size: 436
    ---[NoImage] x264 [info]: consecutive B-frames: 10.8% 13.7% 4.5% 13.0% 20.9% 36.9% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.2%
    ---[NoImage] x264 [info]: mb I I16..4: 30.7% 45.3% 24.0%
    ---[NoImage] x264 [info]: mb P I16..4: 3.1% 4.1% 0.5% P16..4: 21.0% 4.1% 1.0% 0.1% 0.1% skip:66.0%
    ---[NoImage] x264 [info]: mb B I16..4: 0.3% 0.6% 0.0% B16..8: 4.4% 0.2% 0.1% direct: 1.3% skip:93.0% L0:55.6% L1:38.9% BI: 5.6%
    ---[NoImage] x264 [info]: 8x8 transform intra:52.9% inter:49.0%
    ---[NoImage] x264 [info]: direct mvs spatial:80.2% temporal:19.8%
    ---[NoImage] x264 [info]: coded y,uvDC,uvAC intra: 36.2% 24.8% 5.8% inter: 3.5% 3.4% 0.1%
    ---[NoImage] x264 [info]: i16 v,h,dc,p: 47% 30% 9% 14%
    ---[NoImage] x264 [info]: i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 26% 20% 29% 4% 4% 6% 3% 5% 3%
    ---[NoImage] x264 [info]: i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 34% 15% 10% 5% 7% 10% 5% 9% 4%
    ---[NoImage] x264 [info]: Weighted P-Frames: Y:5.0%
    ---[NoImage] x264 [info]: ref P L0: 49.7% 16.4% 13.6% 7.1% 6.7% 5.8% 0.8%
    ---[NoImage] x264 [info]: ref B L0: 52.9% 17.2% 16.6% 13.2%
    ---[NoImage] x264 [info]: kb/s:998.95
    ---[NoImage] encoded 107864 frames, 20.75 fps, 998.95 kb/s

    Order war mit Dokumentation etwas anderes gemeint?

  • Mit "Dokumentation" meinte ich:

    Weißt du denn genau, was "mode=4" bei SRestore bewirkt, oder hast du das bloß irgendwo abgeschrieben?

    Das frag ich nur in Hinblick darauf, dass "mode=1" bei TDeint ja ein Bobben mit Verdopplung der Framerate bewirkt (25 => 50), und eventuell gibt es bei SRestore nun einen "mode"-Wert, der speziell gebobbtes Material verwendet und für eine anschließende Halbierung der Framerate gesorgt hätte. Aber vielleicht wäre das nicht Modus 4, sondern ein anderer gewesen.

    Aber dazu müsste ich erst mal die Dokumentation des SRestore-Skriptes suchen, die alle "mode"-Parameter-Werte erklärt...

  • sestore v2.7e - modified version by Gavino to fix memory leak problem
    - derived from srestore 2.7c by MOmonster


    ---------------
    Basis
    ---------------
    Lade die Funktion mit import("srestore.avs") in dein Skript und nutze sie wie in den folgenden Beispielen.

    Srestore ist eine AviSynth Skriptfunktion, die geschrieben wurde um Normwandlungen (mit Blends) rückgängig
    zu machen. Die neuste Version kann aber auch für viele andere Restoring-Aufgaben herhalten.

    notwendige Plugins: - mt_masktools v2.0 (immer)
    - TIVTC v1.04 or higher (nur bei cache>0)
    - RemoveGrain (nur für Doppel-Blend-Entfernung)
    - Average (nur für Doppel-Blend-Entfernung)


    ----------------
    srestore
    ----------------

    --------
    Gebrauch
    --------
    Code Beispiele:

    bobbed (or progressive) source

    srestore()


    ------
    oder:

    ord = last.getparity() ? 1 : 0

    leakkernelbob(ord,4,true,true)

    srestore(dclip=last.crop(8,16,-8,-24))


    ------
    oder:

    d = last.bob(-0.2,0.6).reduceflicker(strength=1)

    tdeint(mode=1) #or for example yadif(mode=1)

    srestore(mode=4,dclip=d)


    Parameter:

    srestore(clip source, float "frate", "omode", float "speed", int "mode", float "thresh", int "cache", clip "dclip")

    frate
    Bei Normwandlungen wird die Angabe der Ausgabeframerate nicht benötigt. Für andere seltene
    Blendwandlungen sowie andere Dezimierungsaufgaben muss die Ausgabeframerate jedoch gesetzt werden.
    Dafür muss man die gewollte Ausgabeframerate einfach mit 'frate' angeben.
    Ist der Dezimierungsfaktor (Eingabeframerate/frate) größer als fünf oder kleiner eins, wird die
    Framerate der Quelle nicht geändert. Das kann sinnvoll sein, falls man nur die Dup-Funktionalität
    von srestore nutzen möchte.

    omode
    Srestore kann als Blend-Dezimierungs-Funktion, als einfache Deblend-Funktion oder auch zum entfernen von
    Doppelblends genutzt werden.
    1 - deblend-mode 1 -> Blends werden mit den vorherigen Frame ersetzt
    2 - deblend-mode 2 -> das nächste Frame ersetzt die erkannten Blends
    3 - deblend-mode 3 -> das ähnlichste Nachbarframe wird statt dessen ausgegeben
    4 - deblend-mode 4 -> gibt den Nachbar mit der geringsten Blendwahrscheinlichkeit aus
    5 - deblend-special -> von fünf untersuchten Frames werden nur die mit der geringsten
    Blendwahrscheinlichkeit ausgegeben
    >5 - Blend-Dezimierung -> für alle Dezimierungsaufgaben (Standard)
    Die Ausgabemodi 1-5 entsprechen einfachen Deblendern, die Framerate der Source wird also nicht verändert.

    Für die Doppelblend-Entfernung muss man für omode einen String (Zeichenkette) setzen. Dieser String
    entscheidet zugleich über die verwendete Nachbearbeitungsmethode:
    pp0 -> die schnellste Methode, keine Nachbearbeitung
    pp1 -> nutzt Differenz-Masking, höhere Qualität aber etwas langsamer
    pp2 -> reduziert effektiv Artefakte mit Hilfe einer Blurring-Maske
    pp3 -> kombiniert Nachbearbeitung 1 und 2 -> am langsamsten
    Man kann auch noch seine eigenen Filter zu den obigen Methoden hinzufügen. Füge die Funktion einfach
    auf diese Weise hinzu:
    omode="pp3.blur(1)" -> pp3 + Weichzeichner (Radius=1)
    Falls man eine Funktion mit eigenen Stringparametern verwenden möchte, müssen drei Gänsefüße gesetzt werden:
    omode="""pp2.deen("a2d")"""

    Wichtig: Dieser Modus ändert ebenfalls nicht die Eingangsframerate. Er wurde nur zum Rückwandeln von
    Doppelblends, welche aufgrund von Blenddeinterlacing von Telecined Quellen entstanden sind, entwickelt.
    Zur Vollständigen Rückwandlung muss noch ein Dezimierer hinzugefügt werden:
    Source #progressive
    srestore(omode="pp0")
    decimate(cycle=5,quality=0) #empfohlene Dezimierung
    Standard - 6

    speed
    Dieser Parameter kann dazu genutzt werden die Erkennung von srestore zu beschleunigen. Im Gegenzug wird
    allerdings die Möglichkeit kleine Details in die Erkennung mit einfließen zu lassen verringert.
    Wird zum Beipel speed=16 gesetzt, dann wird nur ein Pixel von 16 (4*4 Matrix) zur Erkennung
    herangezogen.
    Es ist auch moeglich negative Werte zu setzen. Das kann bei Quellen mit hoher Qualitaet oder Aufloesung
    nuetzlich sein um auch kleinere Details mit in die Erkennung einzubeziehen.
    Standard - 9 (empfohlene Werte: 1-25, und natuerlich die entsprechenden negativen Werte)

    mode
    Mit dem mode Parameter kann man festlegen, ob der Farbkanal fuer die Erkennung verwendet werden soll und ob
    srestore die Duplikate zusammenrechnen soll oder einfach nur versucht das Duplikat mit der besseren Qualitaet auszugeben.
    1 - einfache Ausgabe ohne die Dezimierung zu veraendern
    2 - Dup-Moeglichkeit von srestore, versucht die Duplikate mit der besseren Qualitaet auszugeben
    3 - die Duplikate werden miteinander gemischt, um die Qualitaet zu erhoehen
    >3 - kombiniert mode 2 und 3
    Mit den passenden negative Werten ist es moeglich srestore anzuweisen auch die beiden Farbkanaele fuer die
    Erkennung zu verwenden.
    Fuer die Doppel-Blend-Erkennung hat dieser Parameter allerdings keine Bedeutung. Dieser Ausgabemodus kennt
    nur mode 1 und -1.
    Standard - 2

    thresh
    Die Erkennung von srestore ist ziemlich stabil, jedoch ist der Threshold immer noch wichtig um den
    Einfluss der Erkennung zu gewichten.
    Setze kleinere Werte bei Quellen mit weniger zeitlichen Artefakten (Bobbing Effekt, Aliasing, Blöcke, Rauschen, ...)
    und höhere Werte für den gegenteiligen Fall.
    Standard - 16 (empfohlen: 10-24)

    cache
    Mit cache>=0 nutzt srestore die RequestLinear Funktion (TIVTC) um bei nicht-linearen Frameabruf trotzdem
    alle notwendigen Werte für die Erkennung parat zu haben.
    Am besten macht man einen verlustlosen ersten Encoding Durchgang gleich nach den Aufruf von srestore
    Die restliche Filterung kann denn in folgenden Durchgängen vorgenommen werden.
    Hat man dafür nicht genug Speicherplatz zu Verfügung und kann den anschließenden nicht-linearen Frameabruf
    nicht vermeiden, sollte man einen cache Wert zwischen 5 und 10 setzen. Beachte jedoch, dass dies den
    Ramverbrauch erhöhen kann.
    Standard - -1

    dclip
    Der Erkennungsclip kann separat gesetzt werden, um zum Beispiel die Erkennung zu verbessern (Deblock, Smooth, ...)
    oder zu beschleunigen.
    Die hier gesetzte Videoquelle hat keinen Einfluss auf auf den ausgegebenen Clip, außer dass die Erkennung
    beeinflusst wird. Grundsätzlich ist es immer ratsam die Quelle für die Erkennung vorher zu beschneiden
    um den Einfluss der schwarzen Ränder zu minimieren.

Jetzt mitmachen!

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