Beiträge von MOmonster

    MacLeod
    1. zu srestore
    Die Funktion ist hier einfach falsch. Es liegt keine Normwandlung vor. Zudem verändert srestore grundsaetzlich nicht die Laufzeit des Videos. Ist so ja auch nicht gewollt. Verstehe also deine Frage nicht ganz.

    2. zum Sample
    Zum groeßten Teil handelt es sich um einfaches Telecining (3:2-Pulldown). Die Blends in einigen Szenen sind bei irgendeiner Nachbearbeitung entstanden (damit best. Szenen fluessiger aussehen usw.). Sie lassen sich nicht entfernen.
    moeglicher Ansatz:

    Code
    tdeint(mode=1,tryweave=true,full=true)
    tdecimate(rate=24000.0/1001.0,mode=7,chroma=false)


    Mode 1 oder 2 sollten mit den richtigen Parametern auch funktionieren (tdecimate). Die Einstellungen lassen sich natuerlich optimieren.
    Ansonsten bleibt noch die (aufwendigere) Moeglichkeit sich mit unterschiedlichen Frameraten rumzuschlagen.

    -TiLT-
    Lade am besten ein kleines Sample hoch. Der Effekt sollte eigentlich minimal sein, oder erzeugst du die Szenenwechsel selbst mit trim etc?

    MacLeod
    Ich verstehe deine Frage nicht so ganz. Srestore interessiert sich nicht für das resizing davor oder danach und aendert auch selbst nicht die Aufloesung.

    Code
    yadif(mode=1).srestore()

    geht also problemlos

    mbc
    Wozu benötigst du average? Der Doppelblend-Fall sollte in unserer Region eigentlich nicht vorkommen. Die dll ist irgendwo im englischen Forum zu finden, müsste jetzt aber erst danach suchen.
    Entschuldigung, aber dein zweites Problem verstehe ich einfach nicht, vielleicht kannst du ja einen kurzen Ausschnitt hochladen.

    Update
    Es hat mich einige Zei gekostet srestore nochmal zu verbessern. Die Funktion basiert immer noch auf den X-Core, bringt aber viele qualitative Verbesserungen mit sich um eine moeglichst fluessige Ausgabe zu gewaehrleisten.
    Vorerst bleibt es aber bei der 2.7pre Version. Um die anderen Funktionen kuemmere ich mich zur gegebener Zeit.

    MacLeod
    Der Interlacing2Reader haette auch mal dringend eine Ueberarbeitung notwendig. Naja, spaeter vielleicht.
    Die Funktion gibt keine Auskunft darueber, wie man srestore benutzt, sondern nur ob es ueberhaupt noetig ist.
    Sollte mal eine Methode zur Auswertung der Berechnungen aufschreiben, aber auch das muss erstmal warten.

    Zu dem Ergebnis laesst sich hier nicht so viel sagen. Gut möglich waeren eine DEFT-Wandlung (tdeint(mode=1).srestore(frate=25)) oder eine Normwandlung (tdeint(mode=1).srestore()).
    Den Bobber kannst du natuerlich durch deinen Favoriten ersetzen.

    Habe heute früh etwas mehr Muße. Hier ist das Skript:


    Effektiv werden im gesamten Sample vielleicht 20 bis 30 Frames leicht verändert. Das macht sich weder beim Schauen noch beim kodieren bemerkbar.
    Man kann die Funktion also auch weglassen. Da sie recht flott arbeitet spricht allerdings auch nichts dagegen sie zu verwenden.

    Eine typische DEFT-Wandlung ist das hier aber nicht. Falls man sowas wie typisch in diesen Zusammenhang überhaupt sagen darf.
    Dieses Skript arbeitet zumindest zufriedenstellend. Vielmehr ist aus der Source nicht rauszuholen:

    Code
    tdeint(mode=1,tryweave=true)
    tdecimate(rate=25,mode=2)


    Das Ghosting bleibt zwar, aber um gut erkennbare Mischbilder handelt es sich hier sowieso nicht.
    Du kannst natürlich die ganze Palette an möglichen Funktionen (repair_DEFT, unDEFTmatcher, mrestore und srestore) testen. Da deren Erkennung aber nur bedingt greift (falls überhaupt) und versucht wird irgendeinen Pattern zu folgen, kann ich jetzt schon sagen, dass du mit den Resultaten wohl weniger glücklich sein wirst.

    Update:
    Nachdem ich, angefangen mit Cdeint, nun schon einige Blenderkennungsmethoden (C-, D-, L-, M- und P-Core) durchlaufen bin, gibt es nun ein weiteres größeres Update (X-Core).
    Die neue Funktion srestore löst mrestore, Cdeblend, FixBlendIVTC und DupHQ ab. Zudem ist es mein erster Filter mit einer funktionierenden Patternerkennung.
    Aufgrund der gravierenden Neuerungen empfand ich eine weitere Umbennennung sinnvoll.

    Wichtig:
    - Mrestore 2.31 hatte einen gravierenden Bug und wurde deshalb aus dem Paket entfernt
    - in AviSynth 2.5.8 wird die Berechnung von changefps von round zu floor geändert. Ich werde srestore erst anpassen sobald diese Version Final ist.

    FixBlendIVTC und mrestore wurden wieder aktualisiert. Die Ausgabeframerate muss nun wieder direkt gesetzt werden, was den meisten hoffentlich sehr entgegenkommt. Das Problem der alten Ungenauigkeiten bei der Berechnung der changefps Ausgabe wurde mit diesen Release auch gleich beseitigt.

    Hab dich ganz schön warten lassen. Aber du kennst ja jetzt die Ursache. Außerdem gab es noch sehr viele andere Dinge zu tun.

    Code
    mrestore(numr=2,denm=5,mode=1,bf=1,rx=2.0,ry=2.0)


    Ganz optimal sind diese Einstellungen auch noch nicht, aber das Optimum lässt sich halt immer schwer finden. Die krumme Framerate ist zwar nicht schön, aber entspricht ziemlich genau dem, was die Quelle hergibt. Abgesehen von wenigen sehr kleinen Blends bei den Mundbewegungen, werden alle Blends entfernt.

    Aber teste selbst und urteile.;)

    Da hab ich Tage lang alle Samples, die ich auf den Rechner hatte, durch mrestore gejagt, damit alles was machbar ist auch gemacht wird (DEFT etc). Und denn kommst du mit so nen lausigen Sample und zeigst, dass mrestore letztendlich doch nur ein blöder Automat ist, den ein Student in seiner Freizeit geschrieben hat.;)
    Mrestore hat wirklich Probleme mit deiner Quelle. Das Sample wird auf jeden Fall für die nächste Version herhalten (ist allerdings noch nicht in Planung).

    Um dich aber nicht ganz im Regen stehen zu lassen:
    Mit diesen Einstellungen arbeitet mrestore hier gar nicht so schlecht, wenn auch nicht optimal:

    Code
    tdeint(mode=1)   #or Yadif
    mrestore(bf=0.3,mode=0,dup=-1,rx=2.0,ry=1.3,mthr=-4,chroma=true,dclip=last.crop(12,8,-8,0))
    #or same settings with mode=5


    Mode 5 hinterlässt mehr Blends ist vielleicht aber einen Ticken flüssiger. Rx und ry kann man vielleicht auch noch etwas kleiner wählen, aber naja, deine Quelle ist so oder so zu schwammig.

    Oh, stimmt ja, regnet ja gar nicht, das sind die Leute die über uns auf dem Balkon so schwitzen. Soviel zum Thema: Im Regen stehen lassen.;D