# HG changeset patch # User kraymer # Date 1138117822 0 # Node ID eba63d6c1e4e623f0904b2caef91e6b859a5d060 # Parent 526abfe304986382609b31b8aa47b62f544497a4 major update of x264encopts, credits go to Alex G«änsche < ag .«£t. zirona.com>, thank you! diff -r 526abfe30498 -r eba63d6c1e4e DOCS/man/de/mplayer.1 --- a/DOCS/man/de/mplayer.1 Tue Jan 24 11:34:24 2006 +0000 +++ b/DOCS/man/de/mplayer.1 Tue Jan 24 15:50:22 2006 +0000 @@ -2,7 +2,7 @@ .\" Diese Man-Page wurde/wird von Moritz Bunkus, Sebastian Krämer, .\" Tobias Diedrich gepflegt. .\" -.\" In sync with rev 1.1210 (except x264encopts, TODO!) +.\" In sync with rev 1.1210 (except for two x264encopts, TODO!) . .\" -------------------------------------------------------------------------- .\" Makrodefinitionen @@ -8878,355 +8878,628 @@ . .TP .B bitrate= -Setzt die durchschnittlich zu benutzende Bitrate in kbits/\:Sekunde (Standard: -deaktiviert). -Da eine lokale Bitrate variieren kann, kann dieser Durchschnitt für sehr kurze -Videos ungenau sein (siehe ratetol). -Konstante Bitrate kann erreicht werden, indem diese Option mit vbv_maxrate -kombiniert wird, was jedoch die Qualität signifikant verringert. -. -.TP -.B qp_constant=<1\-51> -Dies wählt die zu benutzende Quantisierung für P-Frames. -Intra- und B-Frames haben von diesem Wert einen Offset von ip_factor und -pb_factor respektive. +Setzt die durchschnittliche Bitrate auf kbits/\:Sekunde (Standard: aus). +Da die lokale Bitrate variieren kann, ist es möglich, dass dieser +Durchschnittswert für sehr kurze Videos ungenau berechnet wird (siehe ratetol). +Konstante Bitraten können erreicht werden, indem man diese Option mit +vbv_maxrate kombiniert, allerdings vermindert das die Qualität signifikant. +. +.TP +.B qp_constant=<0\-51> +Diese Option wählt den Quantizer für P-Frames. +Intra- und B-Frames werden mit diesem Wert jeweils durch ip_factor und +pb_factor verrechnet. 20\-40 ist ein brauchbarer Bereich (Standard: 26). -Niedrigerere Werte resultieren in besserer Wiedergabetreue aber höheren -Bitraten. -Beachte, dass Quantisierung in H.264 unterschiedlich zu MPEG-1/2/4 -funktioniert: -Quantisierungsparameter (QP) von H.264 werden logarithmisch skaliert. -Das Mapping beträgt ungefähr H264QP = 12 + 6*log2(MPEGQP). -Zum Beispiel ist MPEG bei QP=2 äquivalent zu H.264 bei QP=18. +Niedrigere Werte bewirken geringere Verlusten bei höheren Bitraten. +0 ist verlustfrei. +Beachte, dass die Quantisierung bei H.264 anders funktioniert als bei +MPEG-1/2/4: +Die Quantisierungsparameter (QP) von H.264 liegen auf einer logarithmischen +Skala. +Das Mapping ist ungefähr H264QP = 12 + 6*log2(MPEGQP). +Beispielsweise ist MPEG bei QP=2 vergleichbar mit H.264 bei QP=18. +. +.TP +.B crf=<1\-50> +Aktiviert den "constant quality mode" und legt die die Qualität fest. +Die Skala ist ähnlich der des QP. +Ähnlich wie die Bitraten-basierten Modi ermöglicht +dies, für jeden Frame einen anderen QP festzulegen, je nach dessen Komplexität. . .TP .B pass=<1\-3> -Aktiviert 2- oder 3-pass-Modus. -Es wird empfohlen, immer im 2- oder 3-pass-Modus zu encodieren, da es zu einer -besseren Zuteilung der Bits führt und die Qualität im Ganzen verbessert. +2- oder 3-pass-Modus (d.h. mit 2 oder 3 Durchläufen) aktivieren. +Es wird empfohlen, immer im 2- oder 3-pass-Modus zu enkodieren, da dies zu +einer besseren Bit-Verteilung und allgemein besseren Qualität führt. .PD 0 .RSs .IPs 1 -erster Durchlauf +Erster Durchlauf .IPs 2 -zweiter Durchlauf (bei Encodierung im two-pass-Modus) +Zweiter Durchlauf (bei Encodierung mit zwei Durchläufen) .IPs 3 -Nter Durchlauf (zweiter und dritter Durchlauf der three-pass-Encodierung) +n-ter Durchlauf (zweiter und dritter Durchlauf des 3-Durchläufe-Modus) +.RE +.RS +Und so funktioniert es bzw.\& so wird es angewandt: +.br +Der erste Durchlauf (pass=1) erstellt Statistiken über das Video und +schreibt diese in eine Datei. +Es bietet sich an, einige CPU-intensive Optionen zu deaktivieren; abgesehen von +denen, die als Voreinstellung aktiviert sind. +.br +Im 2-pass-Modus liest der zweite Durchlauf (pass=2) diese Datei wieder ein und +berechnet auf dieser Grundlage die Bitratenkontrolle. +.br +Im 3-pass-Modus tut der zweite Durchlauf (pass=3, dies ist kein Tippfehler) +beides: Zuerst liest er die Statistiken ein, dann überschreibt er sie. +Du kannst alle Optionen verwenden, außer vielleicht den sehr CPU-intensiven. +.br +Der dritte Durchlauf (pass=3) macht das gleiche wie der zweite Durchlauf, +außer dass er die Statisitiken des zweiten Durchlaufs verwendet. +Du kannst alle Optionen verwenden, einschließlich der sehr CPU-intensiven. +.br +Der erste Durchlauf kann entweder eine durchschnittliche Bitrate (ABR) oder +einen konstanten Quantizer verwenden. +ABR wird empfohlen, da dafür nicht das Ermitteln eines Quantizers nötig ist. +Nachfolgende Durchläufe sind ABR; es muss eine Bitrate angegeben werden. +.br +.I +Anmerkung: +Die Unterstützung für x264 mit drei Durchläufen ist eine recht neue Funktion +von MEncoder. +Daher würden wir uns freuen, wenn Du uns gute Kombinationen von x264-Optionen +(d.h. schnelle Encodierung in guter Qualität) mitteilen würdest. +.REss +. +.TP +.B turbo=<0\-2> +Schneller erster Durchlauf. +Während des ersten Durchlaufs des Encodierens mit mehreren Durchläufen kann +die Geschwindigkeit durch Deaktivieren einiger Optionen gesteigert werden \- +ohne bzw. ohne merkliche Minderung der Qualität des letzten Durchlaufs. +.PD 0 +.RSs +.IPs 0 +deaktiviert (Standard) +.IPs 1 +Reduziere subq und frameref und deaktiviere einige "inter macroblock partitions +analysis"-Modi. +.IPs 2 +Reduziere subq und frameref auf 1, verwende eine "diamond ME"-Suche und +deaktiviere alle "partitions analysis"-Modi. .RE .RS -Hier also wie es funktioniert und anzuwenden ist: -.br -Der erste Durchlauf (pass=1) sammelt Statistiken über das Video und schreibt -sie in eine Datei. -Du möchtest vielleicht manche CPU-intensive Optionen deaktivieren, abgesehen -von denen, die als Standardeinstellung aktiviert sind. -.br -Im Modus mit zwei Durchläufen liest der zweite Durchlauf (pass=2) die -Statistiken und steuert dementsprechend Entscheidungen der Bitratenkontrolle. -.br -Im Modus mit drei Durchläufen tut der zweite Durchlauf (pass=3, kein -Rechtschreibfehler) beides: Er liest zuerst die Statistiken und überschreibt -sie dann. -Du kannst alle Optionen für die Encodierung verwenden, außer den sehr -CPU-intensiven. -.br -Der dritte Durchlauf (pass=3) ist dasselbe wie der zweite, außer, dass er die -Statistiken des zweiten Durchlaufs zur Grundlage hat. -Du kannst alle Optionen für die Encodierung verwenden, auch die sehr -CPU-intensiven. -.br -Der erste Durchlauf kann entweder durchschnittlich Bitrate oder konstanten -Quantisierungsparameter verwenden. -ABR wird empfohlen, da er nicht darauf angewiesen ist, einen -Quantisierungsparameter zu ermitteln. -Aufeinanderfolgende Durchläufe sind ABR und müssen eine Bitrate angeben. -.br -.I ANMERKUNG: -Die Unterstützung für die Encodierung in drei Durchläufen für x264 ist neu in -MEncoder, wir freuen uns daher über jegliches Feedback, das du geben kannst -hinsichtlich guten Kombinationen von x264-Optionen, die sowohl schnell sind als -auch gute Qualität liefern. + +Stufe 1 kann die Geschwindigkeit des ersten Durchlaufs bis auf das Doppelte +erhöhen, ohne das globale PSNR im Vergleich zu einem vollen ersten Durchlauf zu +verändern. +.br +Stufe 2 kann die Geschwindigkeit des ersten Durchlaufs bis auf das Vierfache +erhöhen \- bei einer Veränderung des PSNR von ca. +/- 0.05dB im Vergleich zu +einem vollen ersten Durchlauf. .REss . .TP -.B qcomp=<0\-1> (ABR oder two-pass) -Kompression des Quantisierungsparameters (Standard: 0.6). -Ein niedrigerer Wert macht die Bitrate konstanter, während ein höherer Wert -die Quantisierungsparameter konstanter macht. +.B keyint= +Setzt das maximale Intervall zwischen IDR-Frames (Standard: 250). +Höhere Werte sichern Bits und erhöhen dadurch die Qualität auf Kosten der +Suchpräzision. +Anders als MPEG-1/2/4 ist H.264 nicht von DCT-Versatz bei hohen keyint-Werten +betroffen. +. +.TP +.B keyint_min=<1\-keyint/2> +Setzt das minimale Intervall zwischen IDR-Frames (Standard: 25). +Wenn innerhalb dieses Intervalls Szenenwechsel stattfinden, werden sie dennoch +als Intra-Frames encodiert, sie starten aber nicht mit einem neuen GOP. +In H.264 begrenzen Intra-frames nicht unbedingt einen geschlossen GOP, da ein +P-Frame durch mehrere als nur den vorangehenden Frame vorausberechnet werden +kann (siehe auch frameref). +Daher sind Intra-Frames nicht notwendigerweise spulbar. +IDR-Frames verhindern, dass nachfolgende P-Frames sich auf einen Frame vor dem +IDR-Frame beziehen. +. +.TP +.B scenecut=<-1\-100> +Legt fest, wie aggressiv zusätzliche Intra-Frames eingefügt werden (Standard: +40). +Mit geringen Werten für scenecut muß der Codec oft einen Intra-Frame einfügen, +wenn er den Wert für keyint übersteigen würde. +Gute Werte für scenecut finden evtl.\& eine bessere Position für Intra-Frames. +Hohe Werte setzen mehr Intra-Frames als nötig ein und verschwenden damit Bits. +-1 schaltet die scenecut-Erkennung ab, dadurch werden Intra-Frames nur einmal +pro jedem anderen keyint-Frame eingesetzt, sogar wenn ein Szenenwechsel früher +stattfindet. +Diese ist nicht empfehlenswert und verschwendet Bitraten, denn als scenecuts +enkodierte P-Frames sind genau so groß wie I-Frames, ohne dabei aber den +"keyint counter" zurückzusetzen. +. +.TP +.B frameref=<1\-16> +Die Anzahl der vorhergehenden Frames, die zum Vorausberechnen in B- und +P-Frames +verwendet werden (Standard: 1). +Das ist besonders effektiv bei animierten Filmen; bei Realfilm-Material nehmen +die Verbesserungen bei mehr als etwa 6 Referenz-Frames ziemlich schnell ab. +Dies hat keinen Einfluss auf die Dekodiergeschwindigkeit, erhöht aber den zum +Encodieren benötigten Speicherbedarf. +Einige Dekodierer können maximal 15 Referenz-Frames behandeln. +. +.TP +.B bframes=<0\-16> +maximale Anzahl aufeinanderfolgender B-Frames zwischen Intra- and P-Frames +(Standard: 0) +. +.TP +.B (no)b_adapt +Legt automatisch fest, wann und wieviele B-Frames verwendet werden, bis maximal +zum o.a. Wert (Standard: an). +Falls diese Option deaktiviert ist, wird die maximale Anzahl für B-Frames +verwendet. +. +.TP +.B b_bias=<-100\-100> +Erlaubt Einflussnahme auf die Funktion von b_adapt. +Ein höherer Wert für b_bias erzeugt mehr B-Frames (Standard: 0). +. +.TP +.B (no)b_pyramid +Ermöglicht die Verwendung von B-Frames als Referenz für die Vorhersage anderer +Frames. +Nehmen wir als Beispiel 3 aufeinanderfolgende Frames: I0 B1 B2 B3 P4. +Ohne diese Option verhalten sich B-Frames genau wie MPEG-[124]. +Sie werden also in der Reihenfolge I0 P4 B1 B2 B3 kodiert, und alle B-Frames +werden auf Grundlage von I0 und P4 berechnet. +Mit dieser Option werden sie als I0 P4 B2 B1 B3 encodiert. +B2 ist das gleiche wie oben, jedoch wird B1 aus I0 and B2 berechnet, während B3 +auf B2 und B4 basiert. +Das Ergebnis ist eine etwas bessere Komprimierung bei fast keinem +Geschwindigkeitsverlust. +Allerdings ist dies eine experimentelle Option: die Feinabstimmung fehlt noch, +und daher bringt sie möglicherweise keinen Vorteil. +Benötigt bframes >= 2. +Nachteil: Erhöht die Decodierungsverzögerung auf 2 Frames. +. +.TP +.B (no)deblock +Deblocking-Filter verwenden (Standard: an). +Da diese Option sehr wenig Zeit im Vergleich zum Qualitätsgewinn benötigt, +sollte sie nicht deaktiviert werden. +. +.TP +.B deblockalpha=<-6\-6> +AlphaC0-Parameter des Deblocking-Filters (Standard: 0). +Dieser regelt Schwellenwerte für den H.264-Inloop-Deblocking-Filter. +Zunächst legt dieser Parameter den Höchstwert für die Änderung fest, den der +Filter auf jeden einzelnen Pixel anwenden darf. +Weiterhin beeinflusst dieser Parameter den Schwellenwert für den Unterschied, +der über die Kante hinaus gefiltert wird. +Positive Werte reduzieren blockförmige Strukturen, verwischen aber auch +Details. +.br +Die Standardeinstellung des Filters erreicht fast immer optimale Qualität, +daher ist es am besten, keine oder nur geringe Änderungen vorzunehmen. +Falls allerdings dein Quellmaterial schon Blöcke oder Rauschen aufweist und Du +diese entfernen möchtest, kannst Du den Wert etwas erhöhen. +. +.TP +.B deblockbeta=<-6\-6> +Beta-Parameter des Deblocking-Filters (Standard: 0). +Beeinflusst den Schwellwert für Details. +Sehr detailreiche Blöcke werden nicht gefiltert, da das Glätten durch den +Filter stärker auffallen würde als die ursprünglichen Blöcke. +. +.TP +.B (no)cabac +Verwende CABAC (Context-Adaptive Binary Arithmetic Coding) (Standard: an). +Verlangsamt geringfügig die Encodierung und Decodierung, spart aber für +gewöhnlich 10-15% Bitrate. +Solange Du keinen großen Wert auf Geschwindigkeit bei der Decodierung legst, +solltest Du diese Option nicht deaktivieren. +. +.TP +.B qp_min=<1\-51> (ABR oder Modus mit zwei Durchläufen) +Minimaler Quantisierungsparameter, 10\-30 ist ein brauchbarer Bereich +(Standard: 10). +. +.TP +.B qp_max=<1\-51> (ABR oder Modus mit zwei Durchläufen) +Maximaler Quantisierungsparameter (Standard: 51) +. +.TP +.B qp_step=<1\-50> (ABR oder Modus mit zwei Durchläufen) +Maximaler Wert um den der Quantisierungsparameter zwischen Frames +erhöht/gesenkt werden kann (Standard: 2). +. +.TP +.B ratetol=<0.1\-100.0> (ABR oder Modus mit zwei Durchläufen) +Erlaubte Streuung der durchschnittlichen Bitrate (keine besonderen Einheiten) +. +.TP +.B vbv_maxrate= (ABR oder Modus mit zwei Durchläufen) +Maximale lokale Bitrate in kBits/\:Sekunde (Standard: deaktiviert) +. +.TP +.B vbv_bufsize= (ABR oder Modus mit zwei Durchläufen) +Mittelungsperiode für vbv_maxrate, in kBits +(Standard: keine, muss angegeben werden wenn vbv_maxrate aktiviert ist) +. +.TP +.B vbv_init=<0.0\-1.0> (ABR oder Modus mit zwei Durchläufen) +Anfängliche Pufferauslastung als Bruchteil von vbv_bufsize (Standard: 0.9) +. +.TP +.B ip_factor= +Quantizer-Faktor zwischen Intra- und P-Frames (Standard: 1.4) +. +.TP +.B pb_factor= +Quantizer-Faktor zwischen P- und B-Frames (Standard: 1.3) +. +.TP +.B qcomp=<0\-1> (ABR oder Modus mit zwei Durchläufen) +Komprimierung des Quantisierungsparameters (Standard: 0.6). +Ein niedrigerer Wert führt zu einer konstanteren Bitrate, während ein höherer +Wert zu einem konstanteren Quantisierungsparameter führt. +. +.TP +.B cplx_blur=<0\-999> (nur im Modus mit zwei Durchläufen) +Zeitliche Unschärfe der geschätzten Frame-Komplexität vor der +Kurvenkomprimierung (Standard: 20). +Niedrigere Werte ermöglichen einen volatileren Quantisierungsparameterwert, +höhere Werte forcieren sanftere Schwankungen. +cplx_blur stellt sicher, dass jeder Intra-Frame eine mit den nachfolgenden +P-Frames +vergleichbare Qualität hat. +Außerdem stellt diese Option sicher, dass abwechselnd hoch- und weniger +komplexe Frames (z.B. Animation mit wenigen fps) +keine Bits auf schwankende Quantizer verschwenden. +. +.TP +.B qblur=<0\-99> (nur im Modus mit zwei Durchläufen) +Zeitliche Unschärfe des Quantisierungsparameters nach der +Kurvenkomprimierung (Standard: 0.5). +Niedrigere Werte ermöglichen einen volatileren Quantisierungsparameterwert, +höhere Werte forcieren sanftere Schwankungen. +. +.TP +.B zones=[/\:[/\:...]] +Vom Benutzer festgelegte Qualität für besondere Abschnitte (Ende, Abspann, +...) +(ABR oder Modus mit zwei Durchläufen). +Jede Zone ist ,,