Beiträge von FatFaster

    Kann es sein das ich das:

    Zitat

    oldcount=framecount # this line must be before decimation

    oldfps=framerate
    averagefps=(float(framecount)/float(oldcount))*oldfps
    assumefps(averagefps).Nicefps()


    gar nicht brauche im script, weil es nur gebraucht wird um z.B. wenn ich eine bestimmte Dateigröße erreichen will. Wenn ich das benutze, dann steht bei der Framerate in vdub 22.09~ frames.


    Hab jetzt decimate mit etwas veränderten settings benutzt, scheint flüßig zu sein :D Habe das oben genannte script aber nicht verwendet, wie beim ersten mal

    Und noch was ist mir aufgefallen.... In der timecodes.txt stehn die angaben für mkvmerge gui, allerdings steht da immer nur eine framerate von exakt 20.833fps. Ich hatte eigentlich gedacht, dass es etwas mehr variabilität hätte :hm:

    hier ein kurzer auszug

    # timecode format v1
    Assume 25.000
    390,404,20.833
    465,469,20.833
    692,696,20.833
    703,707,20.833
    738,742,20.833
    779,783,20.833
    844,853,20.833
    860,864,20.833
    949,963,20.833
    1456,1500,20.833
    1507,1561,20.833
    ....

    Hallo Doom9 Gemeinde,

    ich bin nun auf ein für mich neues Thema gestoßen -> VFR
    Ich hab versucht ein Video mit Variabler Framerate zu erstellen, hat auch einigermaßen geklappt. Dabei bin ich diesem Guide gefolgt http://www.avisynth.org/mediawiki/wiki…o_vfr_.28mkv.29
    Zu Testzwecken habe ich einen Anime (interlaced + Blends) encodet.
    Das Resultat war, eine MKV im x264 format, die nahezu frei von Blends war.
    Das einzige Manko, es gibt oft Ruckler im Video, vor allem bei Kameraschwenks.

    Also ich hab erst die Methode 3.3.1 Decomb521VFR im Guide probiert:

    Code
    mpeg2source("Mein_Anime.d2v")FieldDeinterlace(blend=false)Decimate(mode=4, threshold=1.0, progress=true, timecodes="timecodes.txt", vfrstats="stats.txt")


    Nachdem Decomb521VFR die Dateien stats.txt und timecodes.txt erstellt hat hab ich folgendes verändert:

    Code
    mpeg2source("Mein_Anime.d2v")
    FieldDeinterlace(blend=false)
    oldcount=framecount
    Decimate(mode=4, threshold=1.0, progress=true, timecodes="timecodes.txt", vfrstats="stats.txt")
    oldfps=framerate
    averagefps=(float(framecount)/float(oldcount))*oldfps
    assumefps(averagefps).Nicefps()


    Wäre das den jetzt so richtig?

    Naja, danach hab ich die AVS wieder in Vdub geöffnet und encodet und mit Mkvtoolnix in eine MKV gemuxt. Dabei habe ich natürlich die Timecode.txt mitverwendet :)


    Wie kann ich den jetzt eine MKV ohne Ruckler bekommen? Sollte ich decimate vor oder nach dem Filtern (wie deen seesaw....) verwenden?
    Was für Nachteile/Vorteile hat eine VFR?

    MfG
    FatFaster

    Versuch die beiden Sachen mal:

    ##### TFF-Test #####
    AssumeTFF()
    SeparateFields()
    Bob()
    ##### TFF-Test #####

    ##### BFF-Test #####
    AssumeBFF()
    SeparateFields()
    Bob()
    ##### BFF-Test #####

    Sollte eines der beiden Scripte beim Ansehen mit VirtualDub ruckelnde Bilder erzeugen, dann weißt du, das die Field-Order falsch war.

    Zitat

    Anbei zwei Shots(bereits reencodet in MPEG2 ohne PixelPlus) des neuen Scripts.

    Zitat

    Auf jeden Fall sollte nicht das codierte Material für Shots genutzt werden. Man weiß denn nicht welche Artefakte der Encoder und welche die Funktion hervorruft.

    MOmonster meinte, du sollst die Screenshots nicht vom nochmals encodetem Material nehmen, sondern das script z.B. in Vdub(= Virtualdub) laden und dort einfach ein Screenshot machen :)


    Zitat

    Die Geschwindigkeit ist um etliches schneller als LimitedSharpen. Mit cropping kann ich das Ganze in Echtzeit abspielen.


    Sowas höre ich gerne.
    Schnelle Scripts sind gute Scripts :ani_lol:

    Ich würde mich noch freuen, wenn du auf der ersten Seite immer das aktuellste DEdgeSharpPP-script posten könntest ;)
    und... :welcome:

    Wieso eigentlich thinning=0 ? (FastLineDarken(strength=75,thinning=0))
    Der Anime hat schon ziemlich dicke Linien und mit thinnig=0 werden sie doch noch dicker und aWarpsharp(depth=8) macht die linien bei diesm kleinen depth-wert ja auch kaum dünner! Das resultat wären noch dickere Linien...

    Also hab mal folgendes getestet:

    Code
    #NR.1tdeint(0)# 25fpscdeblend(dmode=3)fdecimate(12)

    und einmal

    Code
    #NR.2
    tdeint(1)# 50fps
    cdeblend(dmode=3)
    fdecimate(12)

    Mit NR.1 waren sehr viele Blends weg, man sah nur noch ein paar "schwache" Blends. Allerdings hackte das video auch dann an ein paar stellen, so als ob ein bild einfach zu viel da war.
    Mit NR.2 war das ruckeln weg, jedoch sind ne menge blends aufgetaucht, die es bei NR.1 nicht gab. Wahrscheinlich sind es genau die stellen wo es bei NR.1 ruckelt :zunge:

    Also, bei mir sieht frame 319 so aus(ohne cdeblend!), frame 318/317 hatten keine blends bei mir:
    [Blockierte Grafik: http://img319.imageshack.us/img319/8703/ran17ml.th.png]


    Das mal schnell erstellte Script :D :

    2dclean gibts hier http://www.avisynth.org/warpenterprises/

    MOmonster
    Meinst du jetzt etwa, dass man mit Cdeblend das ganze auf 12 fps bringen soll!?
    Dachte sowas geht nicht Cdeblend oder meinst du Crestore ;)

    Und mir nur 12fps dauert das Encoden doch gleich nicht mehr so lange :ani_lol:

    Hab mir dein sample mal angeschaut. Also die "Artefakte", die du meinst sind wohl durch die vielen Blends entstanden. Kann man auch sehen, wenn man die vob abspielet und zwischen durch mal pause macht. Aber beim Abspielen selber sieht man sie eh nicht. Was stört sind eigentich mehr die blends^^

    Hab
    tdein(0) genommen und
    cdeblend() # damit einige blends verschwinden.

    Außerdem scheint _2dcleanyuy2 und warpsharp nicht schlecht bei dieser source zu sein. Ich werd später screens oder ein sample hochladen.

    Natürlich geht das nicht, egal ob durch vier teilbar. Denn, animate verändert kontinuirlich die Werte von crop. Bei dir steht Top=16, irgendwann setzt animaten den Wert auf Top=15 und das ist dann nicht mehr durch 4 teilbar!

    hmm, also so einen Befehl wie converttoyv24 kennt avisynth nicht.
    Man kann auch in den yuy2 farbraum wechseln, da muss nur die rechte und linke seite durch 2 teilbar sein. Wenn man nur oben und unten croppen will, dann gehts ganz gut, habs getestet.
    Kein Ahnung ob yuy2 besser ist, habe nämlich keine Ahnung von den ganzen Farbräumen :zunge:

    ich habe das ganze mal mit crop und addborders probiert

    Code
    Animate(0,100,"xyz",0,0,-0,-0,0,100,-0,-100)
    function xyz (clip x, int a, int b,int c,int d)
    {
    x
    crop(a,b,c,d)
    addborders(a,b,c*(-1),d*(-1))
    return last
    }


    Erst stürzte das Script bei mir auch die ganze Zeit ab. Dann kam mir die Idee. Im yv12 farbraum kann crop nur die werte verarbeiten die durch 4 teilbar sind.
    crop(3,0,-0,-0) geht also nicht :so-nicht:
    Also habe ich converttorgb32() davorgesetzt. Dann gings ohne Probleme :D