XVID Encoding Speed und trallalla

  • Hallo Leutz vom Gleitz- und Doom9-Board,

    erstmal ein hoch auf eure mühen wegen dem board, auf das es bald wieder steht...ich vermisse es!!! (es war auch so schön schlicht) :D


    aber nun zu meiner eigentlichen frage:

    ich encode seit ewig langer zeit mal wieder ein filmchen und hab dazu beschlossen doch endlich mal xvid zu nehmen...also hab ich mich durch einige tuts durchgelesen um alle features in erfahrung bringen zu können
    ich hab mit gk dann das script gebastelt und vdmod angeschmissen
    meine xvid einstellungen sind dann folgende geworden:

    Encoding Mode : 2 Pass - 2nd pass Int.
    Desired Size : 1337020 KB

    Global

    [Global Settings]
    Motion Search Precision : 6 - Ultra
    Quantization Type : MPEG (soll ja das bild ein tick schärfer machen oder??)
    FourCC Used : XVID
    VHQ Mode : 4 - Wide Serach
    Max I-frame Interval : 175
    Min I-frame Interval : 2
    Lumimasking : Off
    Greyscale : Off
    Interlacing : Off
    Chroma Motion : On
    Quarterpel : Off
    Global Motion Compensation : Off

    [B-frame control]
    Max B-frames : 2
    B-frames Quantizer Ratio : 140%
    B-frames Quantizer Offset : 100
    B-frame threshold : -10
    DX50 B-VOP Compatibility : On
    Packed Bitstream : Off
    Print debug info on each frame : Off

    Quantization

    [Quantizer Restrictions]
    Min I-frame Quantizer : 2
    Max I-frame Quantizer : 31
    Min I-frame Quantizer : 2
    Max I-frame Quantizer : 31

    Two Pass

    [Two-Pass Tuning]
    I-frame Boost : 10%
    Discard first pass : Off
    Dummy Second Pass : Off
    Below I-frame Distance : 10%
    I-frame Bitrate Reduction : 20%

    [Curve compression]
    High Bitrate Scenes : 0%
    Low Bitrate Scenes : 0%
    Bitrate Payback Delay : 250 frames
    Bitrate Payback Method : Payback with bias

    Hinted Motion Estimation : Off

    Alt. Curve

    [use Alternative Curve System] : Off
    ...
    ...
    ...
    ...
    ...
    ...
    Max Bitrate (Kilobit/s) : 10000 kbps
    Max Overflow Improvement : 60%
    Max Overflow Degradation : 60%

    Credits

    complete Off (war nicht nur Text!!)

    Debug

    [Performance Optimizations]
    Automatically detect optimizations : On

    Chroma Optimizer : On
    Use trellis R-D quantisation : On
    Frame Drop Ratio : 0


    Die binary die ich dazu genommen habe ist die letzte unstable von Koepi: XviD-24062003-1.exe


    Jetzt mein klitzekleines Problem: ich hab ein encoding speed von ca. 8 frames/s (grob über den daumen gepeilt, es waren auch mal kurzzeitig 30 fps) und eine 2600+ cpu am werkeln...kann das sein, daß das nun so langsam ist?

    der film, den ich encode heißt übrigens "Blues Brothers 2000" und ist ca. 2 Stunden lang

    was sagt ihr eigentlich zu den settings...sind die ok oder habt ihr noch paar verbesserungsvorschläge??? ?(


    und dann doch noch ne letzte frage, die sich bei mir auftut, wenn ich den thread "XviD: dev-4-api" lese...was ist "dev-4-api" bzw. "dev-3-api" ...sind das verschiedene builds???


    so...das wars nun...wäre scheen, wenn sich ein paar fachkundige leutz aka Selur, LigH & Co. vielleicht der einen oder anderen frage mal annehmen könnten :D

    Vielen DANK!!!!

  • VHQ = 4 - kein Wunder, dass es so langsam wird (schnell bis 30 fps bleibt es bei Bildern ohne bedeutenden Inhalt bzw. Bewegung).

    Trellis R-D soll wohl nur mit H.263-Quantisierung richtig funktionieren (oder war das Schnee von gestern?); MPEG-Matrix lohnt sich nur bei ausreichend Bitrate (2-CD-Kopie). Ansonsten hab ich in der Kürze nicht viel zu meckern gesehen.

  • LigH: Ne, hast schon recht trellis sollte bei aktuellen Versionen nur mti h263 benutzt werden, syskin schreib für dev-api-4 aber wohl auch an trellis für mpeg matrizen ;)

    ....


    Dev-api-3 = Sind die aktuellen builds von Xvid
    Dev-api-4 = ist noch mitten in der Mache und wird mit Xvid 1.0 offiziell erscheinen. (Momentan nur für Entwickler und Tester interessant)
    (dev= developer/Entwickler, api = Methoden wie man auf den Codec zugreifen kann, 3 bzw. 4 = die aktuelle Version der API)

    Würde auch eher VHQ=1 empfehlen, den B-frame threshold auf 2 stellen undd as maximum IFrame intervall was höher setzen (so 250), aber em wichtigsten für den Speed ist auf jeden Fall VHQ ;)

    Cu Selur

  • Juhu die Meister :))

    also erstmal an LigH:

    Zitat

    Trellis R-D soll wohl nur mit H.263-Quantisierung richtig funktionieren (oder war das Schnee von gestern?)

    ja so hab ich auch gedacht und mir gesagt, daß das was ich da lese sicher nicht mehr ganz aktuell ist und daher vielleicht auch mit MPEG funktioniert...na ich werds wohl mal wieder raus nehmen

    und nun an euch beide:

    ich hab die MPEG-Matrix genommen, da ich einen 2 CD Rip mit ca. 1500 kb/s gemacht habe...ab welcher bitrate sollte man denn die H.263-Matrix nehmen...ich frage da ich generell 2 CD rips mit ac3-sound mache...lohnt es sich von daher?

    wegen VHQ = 4 ...da ich ja nun weis woran es liegt, bin ich ja beruhigt, daß es keine andere ursache hat...aber da ich stets auf die höchst mögliche qualität aus bin, dachte ich mir nehme ich VHQ = 4 ...würde VHQ = 1 nicht ein "schlechteres" ergebnis liefern?
    nehmt ihr immer VHQ = 1 etwa?


    warum den b-frame treshold auf 2 ...ich denke bei höheren bitraten ruhig etwas niedriger gehn "(so -20)" [o-ton Selur]


    :]

  • hab mich verschrieben meinte "0" ;)
    (Aber das ist ne Geschmackssache, persönlich deaktivier ich B-Frames normalerweise bei 2CD Rips komplett aber ich benutz auch ogg vorbis udn ncht ac3 Sound ;) )

    Und ja, VHQ 1 liefert eventuell 'schlechtere' Ergebnisse als VHQ 4 allerdings ist der Unterschied wirklich nicht sehr hoch und da muss man eben abwägen,... (vorallem da der Geschwindikgeitsgewinn von VHQ1 zu VHQ4 wirklich enorm ist,..)

    Cu Selur

  • juhu Selur!

    erstmal die frage: wie deaktivierst du die b-frames? ...etwa alle 4 punkte unter "B-frame control" auf 0 setzen und die restlichen 3 häckechen raus nehmen?

    was haben im übrigen die b-frames mit ogg vorbis bzw. ac-3 sound zu tun? ...meinst du wegen dem platz? ...wann sollte man die raus nehmen?


    und nochmal zu VHQ ...wie siehts in sachen geschwindigkeit mit VHQ = 3 oder 2 aus bzw. in sachen qualität?
    kannst du abschätzen wie hoch der qualitäts unterschied von 1 zu 4 ist? ...man bedenke dabei stets bitraten von mindestens 1000 kb/s ...wie siehts da aus?

    :))

  • Zitat

    wie deaktivierst du die b-frames?


    "Maximum B-frames" auf 0 oder -1 deaktiviert b-frames, empfehlen würde ich aber 0, da es sonst dazukommt das eventuell das "Max I-frame Interval" nicht eingehalten wird. (die anderen B-Frame settings werden dann ignoriert)

    Zitat

    was haben im übrigen die b-frames mit ogg vorbis bzw. ac-3 sound zu tun? ...meinst du wegen dem platz? ...wann sollte man die raus nehmen?"


    Yo, wegen dem Platz, persönlich benutz ich nur B-frames wenn ich sonst mit der Auflösung unter 640*xy gehen müsste um noch ein akzptables bit/pixel Verhältnis zu erhalten,... => meistens sind sie also deaktiviert.
    (ist aber ne reine Geschmackssache, muss man denk ich selber entscheiden,...)

    Wegen dem VHQ:
    Für normale Filme denke ich kann man bei ner Datenrate von mindestens 1000kb/s beruhigt VHQ 1 nehmen. Unterscheiden tun sich die VHQ Stufen alle nicht sehr in der Qualität die sie produzieren, gibt immer mal nen Film wo man nen Unterschied 'ahnen' kann, aber bei relativ hohen Datenraten und normalen DVD Auflösungen (HDTV ist wieder was ganz anderes), kann man denke ich ruhigen Gewissens VHQ 1 nehmen,...
    (Ist alles immer ein bissel spekulativ, da Qualität halt doch immer was subjektiv ist,... soweit ich mich entsinne heißt höherer VHQ aber immer höherer PSNR-Wert (musste mal im doom9.org forum suchen, da wurde mal groß darüber diskutiert ob udn was VHQ so bringt))

    Cu Selur

    Ps.: Hoffe meine Kommenatre haben ein bissel geholfen udn das ganze nicht noch unklarer erscheinen lassen. ;)

  • alles vom feinsten Selur!!!!

    vielen dank für die umfassende hilfe...hat mir echt geholfen :]

    ich hab allerdings noch eine andere frage...ich hab irgendwo gelesen, daß ab avisynth 2 ein plugin mit dem namen tweak.dll mit dabei sein soll...ich kann das bei mir allerdings beim besten willen nicht finden (ich wollts nur mal ausprobieren)...wo kann ich es finden?

    das führt mich zu einer nächsten frage die sicher subjektiv zu beantworten ist (und hoffe nicht fehl am platz ist)...benutzt ihr noch irgend welche plugins um den rip "aufzupolieren"?...mein avisynth script hat bisher immer nur 4 zeilen:

    LoadPlugin("F:\*:*\mpeg2dec3.dll")
    mpeg2source("F:\bluesbrothers2000.d2v")
    crop(0,14,720,550)
    LanczosResize(672,352)

    ich frag mich dabei ob ich da nicht noch was machen könnte um den rip noch besser aussehen lassen zu können?

    :)

  • @ hippoth:

    Hast du falsch verstanden - es gab bei Donald Graft ein Plugin "Tweak", welches den VirtualDub-Filter "H/S/I adjust" nachgebildet hat, aber in AviSynth wesentlich sinnvoller arbeiten konnte, weil solche Funktionen in YUV besser funktionieren als in RGB.

    Aber seit einer bestimmten AviSynth-Version (2.05, glaube ich - steht in meiner MIB-Anleitung) sind die Funktionen aus der externen "tweak.dll" bereits in den AviSynth-Kernel eingebaut. Du brauchst also kein Plugin mehr zu laden, die Funktion "Tweak(...)" steht immer zur Verfügung. So steht es auch sicher in der AviSynth-Dokumentation.
    __

    Da ich mir meine AVIs grundsätzlich nur am PC-Monitor anschauen kann, benutze ich gern den Tweak- und den Levels-Filter, um Gammakorrektur, Sättigungs- und Kontrastverstärkung zu erreichen (das MPEG2 der DVD wurde ja limitiert für Fernsehausgabe, diese Limitierung führe ich für einen Monitor wieder zurück).

    Dadurch läßt sich der Film zwar etwas schlechter komprimieren, aber vielen Leuten werden ihre Filme ja sowieso "zu klein" (besonders mit DivX 5), wenn sie auf 2 CDs zielen. Übrigens ist mir Lanczos zu scharf, der provoziert meiner Meinung nach zu starke Ringartefakte. Ich bleibe meist bei Neutral Bicubic; aber das ist sicher Geschmackssache.

    ...
    Levels(0,1.4,255,8,248) # 1.4 ist der Gamma-Wert
    Tweak(sat=1.2,cont=1.1) # sat=1.2 verstärkt die Farbsättigung, cont=1.1 den Kontrast

  • Guten Morgen LigH 8)

    ja du hast recht, ich hab das wirklich falsch interpretiert...ich hätte die doku zu avisynth mal lesen sollen!

    wegen Lanczos: ich mag das bild schön scharf...ich mach mir da auch keine sorgen wegen den ringartefakten, denn bei höheren bitraten treten die ja um so weniger auf...aber wie du schon sagst - alles "geschmacksache"

    da ich genau wie du meine filme alle auf dem pc monitor oder mal auf einem beamer anschaue, werd ich diese zwei filter mal probieren...ich weis jetzt nur nicht wo ich die in das avisynthscript einbauen soll...kommen die noch vor das croppen und resizen oder dahinter? ...ist ja schließlich auch eine frage der qualität dabei oder?

    und...was denkst du wie hoch ist der verlust an komprimierung?


    Vielen Dank für Eure Hilfe!!!!

  • Ich glaube kaum, dass die Unterschiede wirklich überragend sind, ob man die Filter nun vor dem Resizen oder danach anwendet - die Verluste durch die Quantisierung dürften wesentlich höher sein. Nur wenn man VobSub-Untertitel hat, sollten diese nicht mit durch die Gamma-Korrektur laufen (oder man beschränkt "weiß" auf "hellgrau").

    Durch die breitere Aussteuerung der Helligkeits- und Farbwerte werden die zu speichernden Werte unterschiedlicher / verschiedener, wodurch die Huffman-Komprimierung nicht mehr so effizient arbeitet. Der Film dürfte also bei konstantem Quantisierungsfaktor (wie im 1st-pass) bis zu 1/3 mehr Bitrate fordern - mal so grob geschätzt.

  • ok damit ist alles klar...mit den werten von "levels" und "tweak" werd ich ein wenig rumspielen, da ich gesehn habe, daß sie nicht ganz meinen ansprüchen entsprechen


    und...nochmals Vielen Dank!!! an euch beide für die nette und kompetente hilfe :]

Jetzt mitmachen!

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