EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

ffmpeg-filters – Online in der Cloud

Führen Sie ffmpeg-Filter im kostenlosen OnWorks-Hosting-Anbieter über Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator aus

Dies ist der Befehl ffmpeg-filters, der im kostenlosen OnWorks-Hosting-Provider mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


ffmpeg-filter - FFmpeg-filter

BESCHREIBUNG


Dieses Dokument beschreibt Filter, Quellen und Senken, die von der libavfilter-Bibliothek bereitgestellt werden.

FILTERUNG EINFÜHRUNG


Das Filtern in FFmpeg wird durch die Bibliothek libavfilter aktiviert.

In libavfilter kann ein Filter mehrere Eingänge und mehrere Ausgänge haben. Um das zu veranschaulichen
Dinge möglich sind, betrachten wir den folgenden Filtergraphen.

[Main]
Input --> Split ------------------> Overlay --> Output
| ^
|[tmp] [umdrehen]|
+-----> Zuschneiden --> Vflip -------+

Dieser Filtergraph teilt den Eingabestream in zwei Streams auf und sendet dann einen Stream durch die
Crop-Filter und den vflip-Filter, bevor Sie ihn wieder mit dem anderen Stream zusammenführen, indem Sie
darüber legen. Um dies zu erreichen, können Sie den folgenden Befehl verwenden:

ffmpeg -i INPUT -vf "split [main][tmp]; [tmp] crop=iw:ih/2:0:0, vflip [flip]; [main][flip] overlay=0:H/2" OUTPUT

Das Ergebnis ist, dass die obere Hälfte des Videos auf die untere Hälfte des Videos gespiegelt wird
Video ausgeben.

Filter in derselben linearen Kette werden durch Kommas getrennt, und unterschiedliche lineare Ketten von
Filter werden durch Semikolon getrennt. In unserem Beispiel, zuschneiden,vflip befinden sich in einer linearen Kette,
gespalten und Auflage sind getrennt in einem anderen. Die Punkte, an denen sich die linearen Ketten verbinden, sind
mit Namen in eckigen Klammern gekennzeichnet. Im Beispiel erzeugt der Splitfilter
zwei Ausgänge, die den Labels zugeordnet sind [Main] und [tmp].

Der an den zweiten Ausgang von gesendete Stream gespalten, beschriftet als [tmp], wird verarbeitet durch die
Ernte Filter, der die untere Hälfte des Videos wegschneidet und dann vertikal
umgedreht. Die Auflage filter nimmt in input die erste unveränderte Ausgabe des Splitfilters
(die als gekennzeichnet wurde [Main]) und überlagern seine untere Hälfte mit der Ausgabe, die von der
zuschneiden,vflip Filterkette.

Einige Filter nehmen als Eingabe eine Liste von Parametern auf: Sie werden nach dem Filternamen angegeben
und ein Gleichheitszeichen und werden durch einen Doppelpunkt voneinander getrennt.

Es gibt sogenannte Quelle Filter die keinen Audio-/Videoeingang haben, und Waschbecken
Filter die keinen Audio/Video-Ausgang haben.

GRAPH


Das graph2dot Programm im FFmpeg . enthalten Werkzeuge Verzeichnis kann verwendet werden, um a . zu analysieren
Filtergraph Beschreibung und geben Sie eine entsprechende Textdarstellung im Punkt aus
Sprache.

Rufen Sie den Befehl auf:

graph2dot -h

um zu sehen, wie man es benutzt graph2dot.

Sie können die Punktbeschreibung dann an die Punkt Programm (aus der graphviz-Suite von
Programme) und erhalten eine grafische Darstellung des Filtergraphen.

Zum Beispiel die Befehlsfolge:

Echo | \
tools/graph2dot -o graph.tmp && \
Punkt -Tpng graph.tmp -o graph.png && \
grafik anzeigen.png

kann verwendet werden, um ein Bild zu erstellen und anzuzeigen, das den von der
GRAPH_DESCRIPTION Schnur. Beachten Sie, dass diese Zeichenfolge ein vollständiger in sich abgeschlossener Graph sein muss.
mit seinen Ein- und Ausgängen explizit definiert. Zum Beispiel, wenn Ihre Befehlszeile von . ist
die Form:

ffmpeg -i Infile -vf Scale=640:360 Outfile

Ihre GRAPH_DESCRIPTION String muss die Form haben:

nullsrc,scale=640:360,nullsenke

Möglicherweise müssen Sie auch die nullsrc Parameter und fügen Sie a . hinzu Format filtern, um
eine bestimmte Eingabedatei simulieren.

FILTERGRAFIK BESCHREIBUNG


Ein Filtergraph ist ein gerichteter Graph verbundener Filter. Es kann Zyklen enthalten, und da
können mehrere Verknüpfungen zwischen einem Filterpaar sein. Jeder Link hat ein Eingabepad auf einer Seite
Verbinden Sie es mit einem Filter, von dem es seinen Eingang nimmt, und einem Ausgangs-Pad auf dem anderen
Seite, die es mit einem Filter verbindet, der seinen Ausgang akzeptiert.

Jeder Filter in einem Filtergraph ist eine Instanz einer Filterklasse, die im
Anwendung, die die Funktionen und die Anzahl der Eingangs- und Ausgangspads des
Filter.

Ein Filter ohne Eingangspads wird als "Quelle" bezeichnet und ein Filter ohne Ausgangspads ist
als "Senke" bezeichnet.

Filtergrafik Syntax
Ein Filtergraph hat eine textuelle Darstellung, die von der . erkannt wird -Filter/-vf/-N und
-filter_komplex Optionen in ffmpeg und -vf/-N in ffplayUnd durch die
"avfilter_graph_parse_ptr()" Funktion definiert in libavfilter/avfilter.h.

Eine Filterkette besteht aus einer Folge verbundener Filter, von denen jeder mit dem
vorherige in der folge. Eine Filterkette wird durch eine Liste von ","-getrennten
Beschreibungen filtern.

Ein Filtergraph besteht aus einer Folge von Filterketten. Eine Folge von Filterketten ist
dargestellt durch eine Liste von ";"-getrennten Filterkettenbeschreibungen.

Ein Filter wird durch eine Zeichenfolge der Form dargestellt:
[in_link_1]...[in_link_N]Filtername=Argumente[out_link_1]...[out_link_M]

Filtername ist der Name der Filterklasse, von der der beschriebene Filter eine Instanz ist
of, und muss der Name einer der im Programm registrierten Filterklassen sein. Die
dem Namen der Filterklasse folgt optional ein String "=Argumente".

Argumente ist ein String, der die Parameter enthält, die zum Initialisieren des Filters verwendet werden
Beispiel. Es kann eine von zwei Formen haben:

· Eine ':'-getrennte Liste von Schlüssel=Wert Paaren.

· Eine ':'-getrennte Liste von Wert. In diesem Fall wird davon ausgegangen, dass die Schlüssel die Option sind
Namen in der Reihenfolge, in der sie deklariert werden. ZB der Filter "fade" deklariert drei Optionen in
diese Bestellung -- tippe, start_frame und nb_frames. Dann die Parameterliste in:0:30 Mittel
dass der Wert in ist der Option zugeordnet tippe, 0 zu start_frame und 30 zu
nb_frames.

· Eine ':'-getrennte Liste von gemischten Direkten Wert und lang Schlüssel=Wert Paare. Die direkte Wert
muss dem vorangehen Schlüssel=Wert Paare, und folgen der gleichen Nebenbedingungsreihenfolge der
vorheriger Punkt. Folgende Schlüssel=Wert Paare können in beliebiger Reihenfolge eingestellt werden.

Wenn der Optionswert selbst eine Liste von Elementen ist (z. B. nimmt der Filter "Format" eine Liste von
Pixelformate), werden die Elemente in der Liste normalerweise durch getrennt |.

Die Liste der Argumente kann mit dem Zeichen zitiert werden ' als Anfangs- und Endzeichen, und
der Charakter \ um die Zeichen innerhalb des zitierten Textes zu maskieren; ansonsten das argument
string gilt als beendet, wenn das nächste Sonderzeichen (zur Menge gehörend)
[]=;,) begegnet.

Dem Namen und den Argumenten des Filters wird optional eine Liste von vorangestellt und gefolgt
Link-Etiketten. Ein Link-Label ermöglicht es, einen Link zu benennen und ihn einer Filterausgabe zuzuordnen
oder Eingabepad. Die vorhergehenden Etiketten in_link_1 ... in_link_N, sind dem Filter zugeordnet
Eingabepads, die folgenden Beschriftungen out_link_1 ... out_link_M, sind dem Ausgang zugeordnet
Pads.

Wenn im Filtergraph zwei Linklabels mit demselben Namen gefunden werden, wird ein Link zwischen den
entsprechende Eingabe- und Ausgabe-Pad erstellt.

Wenn ein Ausgangs-Pad nicht beschriftet ist, wird es standardmäßig mit dem ersten unbeschrifteten Eingang verknüpft
Pad des nächsten Filters in der Filterkette. Zum Beispiel in der Filterkette

nullsrc, split[L1], [L2]overlay, nullsink

die Split-Filter-Instanz hat zwei Ausgangs-Pads und die Overlay-Filter-Instanz zwei Eingänge
Pads. Das erste Output-Pad von Split ist mit "L1" gekennzeichnet, das erste Input-Pad von Overlay ist
mit "L2" beschriftet, und das zweite Ausgangs-Pad von Split ist mit dem zweiten Eingangs-Pad von verbunden
Overlay, die beide unbeschriftet sind.

Wenn in einer Filterbeschreibung das Eingabelabel des ersten Filters nicht angegeben ist, ist "in"
vermutet; wenn das Ausgabelabel des letzten Filters nicht angegeben ist, wird "out" angenommen.

In einer vollständigen Filterkette müssen alle unbeschrifteten Eingangs- und Ausgangspads des Filters
in Verbindung gebracht. Ein Filtergraph gilt als gültig, wenn alle Filtereingangs- und -ausgangspads von
alle Filterketten sind verbunden.

Libavfilter wird automatisch eingefügt Treppe Filter, bei denen eine Formatkonvertierung erforderlich ist.
Es ist möglich, swscale-Flags für diese automatisch eingefügten Scaler zu spezifizieren von
"sws_flags= ." voranstellenFlaggen;" zur Beschreibung des Filtergraphen.

Hier ist eine BNF-Beschreibung der Filtergraph-Syntax:

::= Folge von alphanumerischen Zeichen und '_'
::= "[" "]"
::= [ ]
::= Zeichenfolge (evtl. zitiert)
::= [ ] ["=" ] [ ]
::= [, ]
::= [sws_flags= ;] [; ]

Notizen on Filtergrafik Flucht
Die Zusammensetzung der Filtergraph-Beschreibung umfasst mehrere Escape-Ebenen. Sehen "Zitieren
und Flucht" Abschnitt in ffmpeg-utils(1) manuell Weitere Informationen über die
Fluchtverfahren eingesetzt.

Ein Escape der ersten Ebene wirkt sich auf den Inhalt jedes Filteroptionswerts aus, der Folgendes enthalten kann:
das Sonderzeichen ":" zum Trennen von Werten oder eines der Escape-Zeichen "\'".

Eine zweite Ebene Escaping betrifft die gesamte Filterbeschreibung, die die
Escape-Zeichen "\'" oder die Sonderzeichen "[],;" vom Filtergraph verwendet
Beschreibung.

Wenn Sie schließlich einen Filtergraph auf einer Shell-Befehlszeile angeben, müssen Sie Folgendes ausführen:
Escape der dritten Ebene für die darin enthaltenen Shell-Sonderzeichen.

Betrachten Sie beispielsweise die folgende Zeichenfolge als eingebettet in die Zeichentext Filter
Beschreibung Text Wert:

dies ist eine 'Zeichenfolge': kann ein oder mehrere Sonderzeichen enthalten

Diese Zeichenfolge enthält das Escape-Sonderzeichen "'" und das Sonderzeichen ":", also
es muss auf diese Weise entkommen werden:

text=dies ist ein \'string\'\: kann ein oder mehrere Sonderzeichen enthalten

Beim Einbetten der Filterbeschreibung in a . ist eine zweite Escape-Ebene erforderlich
filtergraph description, um alle Sonderzeichen des Filtergraphen zu maskieren. Daher
das obige Beispiel wird:

drawtext=text=dies ist ein \\\'string\\\'\\: kann ein\ oder mehrere\ Sonderzeichen enthalten

(beachten Sie, dass zusätzlich zu den "\'"-Escape-Sonderzeichen auch "," angegeben werden muss
entkam).

Schließlich wird beim Schreiben der Filtergraph-Beschreibung eine zusätzliche Escape-Ebene benötigt
in einem Shell-Befehl, der von den Escape-Regeln der übernommenen Shell abhängt. Zum Beispiel,
unter der Annahme, dass "\" etwas Besonderes ist und mit einem anderen "\" maskiert werden muss, die vorherige Zeichenfolge
ergibt sich schließlich:

-vf "drawtext=text=dies ist ein \\\\\\'string\\\\\\'\\\\: kann ein oder mehrere\\ Sonderzeichen enthalten"

ZEITPLAN BEARBEITEN


Einige Filter unterstützen eine generische ermöglichen Möglichkeit. Für die Filter, die die Zeitachsenbearbeitung unterstützen,
Diese Option kann auf einen Ausdruck gesetzt werden, der ausgewertet wird, bevor ein Frame an den . gesendet wird
Filter. Bei einer Bewertung ungleich Null wird der Filter aktiviert, andernfalls wird der Rahmen
wird unverändert an den nächsten Filter im Filtergraph gesendet.

Der Ausdruck akzeptiert die folgenden Werte:

t Zeitstempel in Sekunden ausgedrückt, NAN, wenn der Eingabezeitstempel unbekannt ist

n fortlaufende Nummer des Eingaberahmens, beginnend bei 0

Post die Position in der Datei des Eingabeframes, NAN falls unbekannt

w
h Breite und Höhe des Eingabeframes bei Video

Darüber hinaus unterstützen diese Filter eine ermöglichen Befehl, der verwendet werden kann, um die
Ausdruck.

Wie jede andere Filteroption ist die ermöglichen Option folgt den gleichen Regeln.

Um beispielsweise einen Unschärfefilter zu aktivieren (intelligente Unschärfe) von 10 Sekunden bis 3 Minuten und a
Kurven Filter ab 3 Sekunden:

smartblur = enable='zwischen(t,10,3*60)',
Kurven = enable='gte(t,3)' : Preset=cross_process

AUDIO FILTER


Wenn Sie Ihren FFmpeg-Build konfigurieren, können Sie jeden der vorhandenen Filter mit . deaktivieren
"--filter deaktivieren". Die Konfigurationsausgabe zeigt die Audiofilter an, die in Ihrem
bauen.

Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Audiofilter.

überblenden
Wenden Sie Crossfade von einem Eingangsaudiostream auf einen anderen Eingangsaudiostream an. Das Kreuz
Fade wird für die angegebene Dauer gegen Ende des ersten Streams angewendet.

Der Filter akzeptiert die folgenden Optionen:

nb_proben, ns
Geben Sie die Anzahl der Samples an, für die der Crossfade-Effekt andauern soll. Am Ende
des Crossfade-Effekts ist das erste Eingangsaudio völlig stumm. Standard ist
44100

Dauer, d
Geben Sie die Dauer des Crossfade-Effekts an. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax. Standardmäßig ist die Dauer festgelegt
by nb_proben. Wenn gesetzt, wird diese Option anstelle von verwendet nb_proben.

Überlappung, o
Sollte das Ende des ersten Streams mit dem Start des zweiten Streams überlappen. Standard ist aktiviert.

Kurve1
Legen Sie die Kurve für den Crossfade-Übergang für den ersten Stream fest.

Kurve2
Legen Sie die Kurve für den Crossfade-Übergang für den zweiten Stream fest.

Beschreibung der verfügbaren Kurventypen siehe verblassen Beschreibung des Filters.

Beispiele

· Crossfade von einem Eingang zum anderen:

ffmpeg -i erste.flac -i zweite.flac -filter_complex acrossfade=d=10:c1=exp:c2=exp Ausgabe.flac

· Crossfade von einem Eingang zum anderen, aber ohne Überlappung:

ffmpeg -i first.flac -i second.flac -filter_complex acrossfade=d=10:o=0:c1=exp:c2=exp output.flac

eine Verzögerung
Einen oder mehrere Audiokanäle verzögern.

Samples im verzögerten Kanal sind mit Stille gefüllt.

Der Filter akzeptiert die folgende Option:

Verzögerungen
Legen Sie eine Liste der Verzögerungen in Millisekunden für jeden Kanal fest, getrennt durch '|'. Mindestens ein
Verzögerung größer als 0 sollte bereitgestellt werden. Ungenutzte Verzögerungen werden stillschweigend ignoriert. Wenn
Anzahl der gegebenen Verzögerungen ist kleiner als die Anzahl der Kanäle alle verbleibenden Kanäle werden
nicht verzögert werden.

Beispiele

· Verzögern Sie den ersten Kanal um 1.5 Sekunden, den dritten Kanal um 0.5 Sekunden und lassen Sie den
zweiten Kanal (und alle anderen Kanäle, die vorhanden sein können) unverändert.

Verzögerung=1500|0|500

Echo
Wenden Sie Echos auf das Eingangsaudio an.

Echos sind reflektierter Schall und können natürlich zwischen Bergen auftreten (und manchmal groß)
Gebäude) beim Sprechen oder Rufen; digitale Echoeffekte emulieren dieses Verhalten und sind
wird oft verwendet, um den Klang eines einzelnen Instruments oder Gesangs auszufüllen. Der Zeitunterschied
zwischen dem Originalsignal und der Reflexion ist die "Verzögerung", und die Lautstärke des
reflektiertes Signal ist der "Zerfall". Mehrere Echos können unterschiedliche Verzögerungen und Abklingzeiten aufweisen.

Eine Beschreibung der akzeptierten Parameter folgt.

in_gain
Stellen Sie die Eingangsverstärkung des reflektierten Signals ein. Der Standardwert ist 0.6.

out_gain
Stellen Sie die Ausgangsverstärkung des reflektierten Signals ein. Der Standardwert ist 0.3.

Verzögerungen
Liste der Zeitintervalle in Millisekunden zwischen Originalsignal und Reflexionen einstellen
getrennt durch '|'. Der zulässige Bereich für jede "Verzögerung" ist "(0 - 90000.0]). Der Standardwert ist 1000.

verfällt
Stellen Sie die Liste der Lautstärken der reflektierten Signale ein, die durch '|' getrennt sind. Zulässiger Bereich für jeden
"Zerfall" ist "(0 - 1.0)". Der Standardwert ist 0.5.

Beispiele

· Lassen Sie es so klingen, als ob es doppelt so viele Instrumente gibt, wie tatsächlich gespielt werden:

Echo=0.8:0.88:60:0.4

· Wenn die Verzögerung sehr kurz ist, klingt es wie ein (metallischer) Roboter, der Musik spielt:

Echo=0.8:0.88:6:0.4

· Eine längere Verzögerung klingt wie ein Open-Air-Konzert in den Bergen:

Echo=0.8:0.9:1000:0.3

· Wie oben, jedoch mit einem weiteren Berg:

aecho=0.8:0.9:1000|1800:0.3|0.25

eval
Ändern Sie ein Audiosignal gemäß den angegebenen Ausdrücken.

Dieser Filter akzeptiert einen oder mehrere Ausdrücke (einen für jeden Kanal), die ausgewertet werden
und verwendet, um ein entsprechendes Audiosignal zu modifizieren.

Es akzeptiert die folgenden Parameter:

ausdrücken
Legen Sie die durch '|' getrennte Liste der Ausdrücke für jeden einzelnen Kanal fest. Wenn die Anzahl der
Eingangskanäle ist größer als die Anzahl der Ausdrücke, die zuletzt angegebene
Ausdruck wird für die verbleibenden Ausgangskanäle verwendet.

Kanal_Layout, c
Legen Sie das Layout des Ausgangskanals fest. Wenn nicht angegeben, wird das Kanallayout durch die
Anzahl von Ausdrücken. Wenn auf eingestellt gleich, wird standardmäßig der gleiche Eingangskanal verwendet
Layout.

Jeder Ausdruck in ausdrücken kann die folgenden Konstanten und Funktionen enthalten:

ch Kanalnummer des aktuellen Ausdrucks

n Nummer der ausgewerteten Probe, beginnend bei 0

s Beispielrate

t Zeit der ausgewerteten Probe in Sekunden

nb_in_channels
nb_out_channels
Ein- und Ausgangsanzahl der Kanäle

Wert(CH)
der Wert des Eingangskanals mit Nummer CH

Hinweis: Dieser Filter ist langsam. Für eine schnellere Verarbeitung sollten Sie einen dedizierten Filter verwenden.

Beispiele

· Halbe Lautstärke:

aeval=val(ch)/2:c=gleich

· Phase des zweiten Kanals invertieren:

aeval=Welle(0)|-Welle(1)

verblassen
Wenden Sie den Ein-/Ausblendeffekt auf das Eingangsaudio an.

Eine Beschreibung der akzeptierten Parameter folgt.

Art, t
Geben Sie den Effekttyp an, kann entweder "in" für ein Fade-In oder "out" für ein Fade-Out sein
Wirkung. Standard ist "in".

start_sample, ss
Geben Sie die Nummer des Start-Samples für den Beginn der Anwendung des Fade-Effekts an. Standard
ist 0.

nb_proben, ns
Geben Sie die Anzahl der Samples an, für die der Fade-Effekt andauern soll. Am Ende von
Einblendeffekt hat das Ausgangsaudio die gleiche Lautstärke wie das Eingangsaudio, bei der
Am Ende des Fade-Out-Übergangs ist die Audioausgabe stumm. Der Standardwert ist 44100.

Startzeit, st
Geben Sie die Startzeit des Fade-Effekts an. Standard ist 0. Der Wert muss angegeben werden
als Zeitdauer; sehen Uhrzeit Dauer Abschnitt in ffmpeg-utils(1) manuell für
die akzeptierte Syntax. Wenn gesetzt, wird diese Option anstelle von verwendet start_sample.

Dauer, d
Geben Sie die Dauer des Fade-Effekts an. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax. Am Ende des Einblendeffekts wird der
Ausgangsaudio hat die gleiche Lautstärke wie das Eingangsaudio am Ende der Ausblendung
Übergang wird die Audioausgabe stumm sein. Standardmäßig wird die Dauer bestimmt durch
nb_proben. Wenn gesetzt, wird diese Option anstelle von verwendet nb_proben.

Kurve
Kurve für Fade-Übergang einstellen.

Es akzeptiert die folgenden Werte:

drei Wählen Sie dreieckige, lineare Steigung (Standard)

qsin
Wählen Sie ein Viertel der Sinuswelle

hsin
Wählen Sie die Hälfte der Sinuswelle

Inspiration
Wählen Sie die exponentielle Sinuswelle

Log logarithmisch auswählen

ipar
invertierte Parabel auswählen

hier Quadratisch auswählen

Würfel kubisch auswählen

squ Quadratwurzel wählen

cbr Kubikwurzel auswählen

von Parabel auswählen

exp wählen Sie exponentiell

iqsin
Wählen Sie invertiertes Viertel der Sinuswelle

ihsin
Wählen Sie die invertierte Hälfte der Sinuswelle

dess
Wählen Sie einen doppelt exponentiellen Sitz

desi
wähle doppelexponentielles Sigmoid

Beispiele

· Einblenden der ersten 15 Sekunden des Audios:

afade=t=in:ss=0:d=15

· Blenden Sie die letzten 25 Sekunden eines 900-Sekunden-Audios aus:

afade=t=aus:st=875:d=25

aformat
Legen Sie Einschränkungen des Ausgabeformats für das Eingabeaudio fest. Der Rahmen wird am meisten verhandeln
geeignetes Format, um Konvertierungen zu minimieren.

Es akzeptiert die folgenden Parameter:

sample_fmts
Eine durch '|' getrennte Liste der angeforderten Beispielformate.

Sampleraten
Eine durch '|' getrennte Liste der angeforderten Abtastraten.

Kanallayouts
Eine durch '|' getrennte Liste von angeforderten Kanallayouts.

See Kanal Layout Abschnitt in ffmpeg-utils(1) manuell für die erforderliche Syntax.

Wird ein Parameter weggelassen, sind alle Werte zulässig.

Erzwingen Sie die Ausgabe entweder auf 8-Bit- ohne Vorzeichen oder auf 16-Bit-Stereo mit Vorzeichen

aformat=sample_fmts=u8|s16:channel_layouts=stereo

Allpass
Anwenden eines zweipoligen Allpassfilters mit Mittenfrequenz (in Hz) Frequenz, und Filter-
Breite Breite. Ein Allpassfilter ändert die Frequenz des Audios in die Phasenbeziehung
ohne seine Frequenz-zu-Amplituden-Beziehung zu ändern.

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Frequenz in Hz einstellen.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an.

eine Zusammenführung
Kombinieren Sie zwei oder mehr Audiostreams zu einem einzigen Mehrkanalstream.

Der Filter akzeptiert die folgenden Optionen:

Eingänge
Stellen Sie die Anzahl der Eingänge ein. Standard ist 2.

Wenn die Kanallayouts der Eingänge unzusammenhängend und damit kompatibel sind, wird der Kanal
Layout der Ausgabe wird entsprechend eingestellt und die Kanäle werden neu geordnet als
notwendig. Wenn die Kanallayouts der Eingänge nicht disjunkt sind, hat der Ausgang alle
die Kanäle des ersten Eingangs, dann alle Kanäle des zweiten Eingangs, in dieser Reihenfolge,
und das Kanallayout des Ausgangs ist der Standardwert, der dem Gesamtwert entspricht
Anzahl der Kanäle.

Wenn beispielsweise der erste Eingang in 2.1 (FL+FR+LF) und der zweite Eingang FC+BL+BR ist,
dann erfolgt die Ausgabe in 5.1, mit den Kanälen in der folgenden Reihenfolge: a1, a2, b1, a3,
b2, b3 (a1 ist der erste Kanal des ersten Eingangs, b1 ist der erste Kanal des zweiten
Eingang).

Wenn hingegen beide Eingänge in Stereo sind, sind die Ausgangskanäle in der Standardeinstellung
Reihenfolge: a1, a2, b1, b2, und das Kanallayout wird willkürlich auf 4.0 gesetzt, was oder
möglicherweise nicht der erwartete Wert.

Alle Eingänge müssen die gleiche Abtastrate und das gleiche Format haben.

Wenn die Eingaben nicht die gleiche Dauer haben, stoppt die Ausgabe mit der kürzesten.

Beispiele

· Zwei Mono-Dateien zu einem Stereo-Stream zusammenführen:

amovie=left.wav [l] ; amovie=rechts.mp3 [r] ; [l] [r] verschmelzen

· Mehrere Zusammenführungen unter der Annahme von 1 Videostream und 6 Audiostreams in input.mkv:

ffmpeg -i input.mkv -filter_complex "[0:1][0:2][0:3][0:4][0:5][0:6] amerge=inputs=6" -c:a pcm_s16le Ausgabe.mkv

eine Mischung
Mischt mehrere Audioeingänge zu einem einzigen Ausgang.

Beachten Sie, dass dieser Filter nur Float-Samples unterstützt (die eine Zusammenführung und Pfanne Audiofilter
viele Formate unterstützen). Wenn die eine Mischung Eingang hat dann ganzzahlige Samples eine Probe wird sein
automatisch eingefügt, um die Umwandlung in Float-Samples durchzuführen.

Zum Beispiel

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 AUSGANG

mischt 3 Eingangs-Audiostreams zu einem einzigen Ausgang mit der gleichen Dauer wie der erste
Eingang und einer Dropout-Übergangszeit von 3 Sekunden.

Es akzeptiert die folgenden Parameter:

Eingänge
Die Anzahl der Eingänge. Wenn nicht angegeben, wird standardmäßig 2 verwendet.

Dauer
So bestimmen Sie das Ende des Streams.

am längsten
Die Dauer der längsten Eingabe. (Ursprünglich)

kürzeste
Die Dauer der kürzesten Eingabe.

zuerst
Die Dauer der ersten Eingabe.

dropout_transition
Die Übergangszeit in Sekunden für die Volumenrenormierung, wenn ein Eingabestream endet.
Der Standardwert beträgt 2 Sekunden.

annull
Übergeben Sie die Audioquelle unverändert an den Ausgang.

ein Polster
Füllen Sie das Ende eines Audiostreams mit Stille.

Dies kann zusammen mit verwendet werden ffmpeg -kürzeste um Audiostreams auf die gleiche Länge zu verlängern
als Videostream.

Eine Beschreibung der akzeptierten Optionen folgt.

Paketgröße
Legen Sie die Paketgröße für die Stille fest. Der Standardwert ist 4096.

pad_len
Legen Sie die Anzahl der Stille-Samples fest, die am Ende hinzugefügt werden sollen. Nachdem der Wert erreicht ist,
der Stream wird beendet. Diese Option schließt sich gegenseitig aus mit ganz_len.

ganz_len
Legen Sie die minimale Gesamtanzahl von Samples im Ausgabeaudiostream fest. Wenn der Wert ist
länger als die Eingangsaudiolänge, wird am Ende Stille hinzugefügt, bis der Wert . ist
erreicht. Diese Option schließt sich gegenseitig aus mit pad_len.

Wenn weder die pad_len noch das ganz_len Option gesetzt ist, fügt der Filter Stille hinzu
Ende des Eingabestroms auf unbestimmte Zeit.

Beispiele

· Fügen Sie 1024 Stille-Samples am Ende der Eingabe hinzu:

apad=pad_len=1024

· Stellen Sie sicher, dass die Audioausgabe mindestens 10000 Samples enthält, füllen Sie die Eingabe mit
Stille bei Bedarf:

apad=whole_len=10000

· Verwenden ffmpeg um den Audioeingang mit Stille aufzufüllen, damit der Videostream immer
Ergebnis am kürzesten und wird bei Verwendung bis zum Ende in die Ausgabedatei konvertiert
kürzeste Option:

ffmpeg -i VIDEO -i AUDIO -filter_complex "[1:0]apad" -kürzeste AUSGABE

Aphaser
Fügen Sie dem Eingangsaudio einen Phaseneffekt hinzu.

Ein Phaser-Filter erzeugt eine Reihe von Spitzen und Tälern im Frequenzspektrum. Die
Die Position der Spitzen und Täler werden so moduliert, dass sie sich im Laufe der Zeit ändern, wodurch ein
schwungvolle Wirkung.

Eine Beschreibung der akzeptierten Parameter folgt.

in_gain
Eingangsverstärkung einstellen. Der Standardwert ist 0.4.

out_gain
Ausgangsverstärkung einstellen. Standard ist 0.74

verzögern
Verzögerung in Millisekunden einstellen. Der Standardwert ist 3.0.

Verfall
Verfall einstellen. Der Standardwert ist 0.4.

Geschwindigkeit
Modulationsgeschwindigkeit in Hz einstellen. Der Standardwert ist 0.5.

tippe
Modulationsart einstellen. Standard ist dreieckig.

Es akzeptiert die folgenden Werte:

dreieckig, t
sinusförmig, s

eine Probe
Resample das Eingangsaudio mit den angegebenen Parametern mithilfe der Bibliothek libswresample. Wenn
keine angegeben sind, konvertiert der Filter automatisch zwischen seiner Eingabe und
Ausgabe.

Dieser Filter ist auch in der Lage, die Audiodaten zu dehnen/zusammenzudrücken, damit sie den Zeitstempeln entsprechen
oder um Stille einzufügen / Audio auszuschneiden, damit es mit den Zeitstempeln übereinstimmt, machen Sie eine Kombination von
beides oder keines von beiden.

Der Filter akzeptiert die Syntax [Beispielrate:]resampler_optionen, Wobei Beispielrate drückt aus
eine Abtastrate und resampler_optionen ist eine Liste von Schlüssel=Wert Paare, getrennt durch ":". Sehen
die vollständige Liste der unterstützten Optionen finden Sie im Handbuch zu ffmpeg-resampler.

Beispiele

· Resample das Eingangsaudio auf 44100 Hz:

aresample=44100

· Dehnen/Squeezen von Samples auf die angegebenen Zeitstempel, mit maximal 1000 Samples pro
zweite Entschädigung:

aresample=async=1000

asetsamples
Legen Sie die Anzahl der Samples pro Ausgabe-Audioframe fest.

Das letzte Ausgabepaket kann eine andere Anzahl von Samples enthalten, da der Filter spült
alle verbleibenden Samples, wenn das Eingangsaudiosignal zu Ende ist.

Der Filter akzeptiert die folgenden Optionen:

nb_out_samples, n
Legen Sie die Anzahl der Frames pro Ausgabe-Audioframe fest. Die Nummer ist als
Anzahl von Beispielen für jeder Kanal. Der Standardwert ist 1024.

Pad, p
Wenn der Wert auf 1 gesetzt ist, füllt der Filter den letzten Audioframe mit Nullen auf, sodass der letzte
Frame enthält die gleiche Anzahl von Samples wie die vorherigen. Standardwert ist
1.

Um beispielsweise die Anzahl der Samples pro Frame auf 1234 zu setzen und das Padding für die zu deaktivieren
letzter Frame, verwenden Sie:

asetsamples=n=1234:p=0

getrennt
Stellen Sie die Abtastrate ein, ohne die PCM-Daten zu ändern. Dies führt zu einer Geschwindigkeitsänderung
und Pitch.

Der Filter akzeptiert die folgenden Optionen:

Beispielrate, r
Stellen Sie die Ausgabe-Sample-Rate ein. Der Standardwert ist 44100 Hz.

ashowinfo
Zeigen Sie eine Zeile mit verschiedenen Informationen für jeden eingegebenen Audio-Frame an. Das Eingangsaudio ist
Nicht modifiziert.

Die angezeigte Zeile enthält eine Folge von Schlüssel/Wert-Paaren der Form Schlüssel:Wert.

In der Ausgabe werden folgende Werte angezeigt:

n Die (laufende) Nummer des Eingabeframes, beginnend bei 0.

pts Der Präsentationszeitstempel des Eingabeframes in Zeitbasiseinheiten; die Zeitbasis
hängt vom Filtereingangspad ab und beträgt normalerweise 1/Beispielrate.

pts_time
Der Präsentationszeitstempel des Eingabeframes in Sekunden.

Post Position des Frames im Eingabestream, -1 wenn diese Information nicht verfügbar ist
und/oder bedeutungslos (zum Beispiel bei synthetischem Audio)

fmt Das Beispielformat.

Chlayout
Das Kanallayout.

Rate
Die Abtastrate für den Audio-Frame.

nb_proben
Die Anzahl der Samples (pro Kanal) im Frame.

Prüfsumme
Die Adler-32-Prüfsumme (in hexadezimal gedruckt) der Audiodaten. Für planares Audio,
die Daten werden so behandelt, als ob alle Ebenen verkettet wären.

plane_checksums
Eine Liste von Adler-32-Prüfsummen für jede Datenebene.

Statistiken
Zeigen Sie statistische Informationen im Zeitbereich zu den Audiokanälen an. Statistiken sind
für jeden Audiokanal berechnet und angezeigt und ggf. eine Gesamtzahl
ist auch gegeben.

Es akzeptiert die folgende Option:

Länge
Kurze Fensterlänge in Sekunden, verwendet für Spitzen- und Tiefstwert-RMS-Messungen. Standard ist
0.05 (50 Millisekunden). Zulässiger Bereich ist "[0.1 - 10]".

Metadaten
Legen Sie die Metadateninjektion fest. Alle Metadatenschlüssel haben das Präfix "lavfi.astats.X",
wobei "X" die Kanalnummer beginnend mit 1 oder die Zeichenfolge "Overall" ist. Standard ist deaktiviert.

Verfügbare Schlüssel für jeden Kanal sind: DC_offset Min_level Max_level Min_difference
Max_difference Mean_difference Peak_level RMS_peak RMS_Trog Crest_factor Flat_factor
Peak_count Bit_Tiefe

und für Gesamt: DC_offset Min_level Max_level Min_difference Max_difference
Mittelwertdifferenz Peak_level RMS_level RMS_peak RMS_Trog Flat_factor Peak_count
Bit_Tiefe Anzahl_der_Beispiele

Zum Beispiel sieht der vollständige Schlüssel so aus "lavfi.astats.1.DC_offset" oder so
"lavfi.astats.Overall.Peak_count".

Für eine Beschreibung, was jede Taste bedeutet, lesen Sie unten.

zurückstellen
Legen Sie die Anzahl der Frames fest, nach denen die Statistiken neu berechnet werden. Standard ist
behindert.

Es folgt eine Beschreibung jedes angezeigten Parameters:

DC Offset
Mittlere Amplitudenverschiebung von Null.

Min. Grad des
Minimaler Probenpegel.

Max Grad des
Maximale Probenmenge.

Min. Unterschied
Minimaler Unterschied zwischen zwei aufeinanderfolgenden Proben.

Max Unterschied
Maximaler Unterschied zwischen zwei aufeinanderfolgenden Proben.

Bedeuten Unterschied
Mittlere Differenz zwischen zwei aufeinanderfolgenden Stichproben. Der Durchschnitt jeder Differenz
zwischen zwei aufeinanderfolgenden Proben.

Haupt Grad des dB
RMS Grad des dB
Standard-Peak- und RMS-Pegel gemessen in dBFS.

RMS Haupt dB
RMS Trog dB
Spitzen- und Tiefstwerte für RMS-Pegel, gemessen über ein kurzes Fenster.

Crest Faktor
Standardverhältnis von Spitzen- zu RMS-Pegel (Hinweis: nicht in dB).

Flache Schaltflächen Faktor
Flachheit (dh aufeinanderfolgende Abtastungen mit dem gleichen Wert) des Signals an seiner Spitze
Ebenen (dh entweder Min. Grad des or Max Grad des ).

Haupt zählen
Anzahl der Gelegenheiten (nicht die Anzahl der Abtastungen), die das Signal entweder erreicht hat Min.
Grad des or Max Grad des .

Bit Tiefe
Gesamtbittiefe des Audios. Anzahl der Bits, die für jeden Abtastwert verwendet werden.

astreamsync
Leiten Sie zwei Audiostreams weiter und steuern Sie die Reihenfolge, in der die Puffer weitergeleitet werden.

Der Filter akzeptiert die folgenden Optionen:

Ausdruck, e
Legen Sie den Ausdruck fest, der entscheidet, welcher Stream als nächstes weitergeleitet werden soll: wenn das Ergebnis . ist
negativ, der erste Stream wird weitergeleitet; wenn das Ergebnis positiv oder null ist, die Sekunde
Stream weitergeleitet wird. Es kann die folgenden Variablen verwenden:

b1 b2
Anzahl der Puffer, die bisher in jedem Stream weitergeleitet wurden

s1 s2
Anzahl der Samples, die bisher in jedem Stream weitergeleitet wurden

t1 t2
aktueller Zeitstempel jedes Streams

Der Standardwert ist "t1-t2", was bedeutet, dass immer der Stream weitergeleitet wird, der a . hat
kleinerer Zeitstempel.

Beispiele

Stresstest "amerge" durch zufälliges Senden von Puffern an den falschen Eingang, während gleichzeitig vermieden wird
eine ziemliche Desynchronisation:

amovie=datei.ogg [a] ; amovie=Datei.mp3 [b] ;
[a] [b] astreamsync=(2*zufällig(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] fusionieren

asynct
Synchronisieren Sie Audiodaten mit Zeitstempeln, indem Sie sie zusammendrücken/dehnen und/oder fallen lassen
Samples/Hinzufügen von Stille, wenn nötig.

Dieser Filter ist nicht standardmäßig erstellt, bitte verwenden Sie eine Probe quetschen/dehnen.

Es akzeptiert die folgenden Parameter:

kompensieren
Aktivieren Sie das Dehnen/Squeezen der Daten, damit sie mit den Zeitstempeln übereinstimmen. Deaktiviert von
Ursprünglich. Wenn deaktiviert, werden Zeitlücken mit Stille überdeckt.

min_delta
Die minimale Differenz zwischen Zeitstempeln und Audiodaten (in Sekunden) zum Auslösen
Hinzufügen/Entfernen von Samples. Der Standardwert ist 0.1. Wenn Sie eine unvollständige Synchronisierung mit erhalten
dieser Filter, versuchen Sie, diesen Parameter auf 0 zu setzen.

max_komp
Die maximale Kompensation in Samples pro Sekunde. Nur relevant bei kompensieren=1. Die
Standardwert ist 500.

erste_Punkte
Angenommen, der erste PTS sollte diesen Wert haben. Die Zeitbasis beträgt 1 / Abtastrate. Dies
ermöglicht das Auffüllen/Trimmen am Anfang des Streams. Standardmäßig ist keine Annahme
über den erwarteten PTS des ersten Frames erstellt, so dass kein Auffüllen oder Trimmen erfolgt. Zum
Dies könnte beispielsweise auf 0 gesetzt werden, um den Anfang mit Stille aufzufüllen, wenn ein Audiostream
startet nach dem Videostream oder um Samples mit negativem PTS aufgrund von
Verzögerung des Encoders.

Tempo
Passen Sie das Audiotempo an.

Der Filter akzeptiert genau einen Parameter, das Audiotempo. Wenn nicht angegeben, dann die
Filter nimmt ein nominales 1.0-Tempo an. Das Tempo muss im Bereich [0.5, 2.0] liegen.

Beispiele

· Audio auf 80 % Tempo verlangsamen:

Tempo=0.8

· So beschleunigen Sie Audio auf 125% Tempo:

Tempo=1.25

atrim
Trimmen Sie die Eingabe, sodass die Ausgabe einen fortlaufenden Unterteil der Eingabe enthält.

Es akzeptiert die folgenden Parameter:

Anfang
Zeitstempel (in Sekunden) des Anfangs des beizubehaltenden Abschnitts. Dh das Hörbeispiel mit
der Zeitstempel Anfang wird das erste Sample in der Ausgabe sein.

Ende Geben Sie die Zeit des ersten Audiosamples an, das gelöscht wird, dh das Audiosample
unmittelbar vor dem mit dem Zeitstempel Ende wird die letzte Probe in der
Ausgabe.

start_pts
Das gleiche wie Anfang, außer dass diese Option den Startzeitstempel in Samples anstatt in setzt
Sekunden.

end_pts
Das gleiche wie Ende, außer dass diese Option den Endzeitstempel in Samples statt in Sekunden festlegt.

Dauer
Die maximale Dauer der Ausgabe in Sekunden.

start_sample
Die Nummer des ersten Samples, das ausgegeben werden soll.

end_sample
Die Nummer der ersten Probe, die gelöscht werden soll.

Anfang, Ende und Dauer werden als Zeitdauerspezifikationen ausgedrückt; sehen Uhrzeit
Dauer Abschnitt in ffmpeg-utils(1) manuell.

Beachten Sie, dass die ersten beiden Sätze der Start-/Endoptionen und die Dauer Option schau dir die an
Frame-Zeitstempel, während die _sample-Optionen einfach die Samples zählen, die durch die
Filter. start/end_pts und start/end_sample liefern also unterschiedliche Ergebnisse, wenn die
Zeitstempel sind falsch, ungenau oder beginnen nicht bei Null. Beachten Sie auch, dass dieser Filter nicht
ändern Sie die Zeitstempel. Wenn Sie möchten, dass die Ausgabezeitstempel bei Null beginnen, fügen Sie das
asetpts-Filter nach dem atrim-Filter.

Wenn mehrere Start- oder Endoptionen festgelegt sind, versucht dieser Filter gierig zu sein und alle zu behalten
Stichproben, die mindestens einer der angegebenen Einschränkungen entsprechen. Um nur den Teil zu behalten, der
entspricht allen Einschränkungen auf einmal, verketten Sie mehrere Atrim-Filter.

Die Standardeinstellungen sind so, dass alle Eingaben beibehalten werden. So ist es zB möglich, nur die
Endwerte, um alles vor der angegebenen Zeit zu behalten.

Beispiele:

· Alles außer der zweiten Minute der Eingabe löschen:

ffmpeg -i EINGANG -af atrim=60:120

· Bewahren Sie nur die ersten 1000 Proben auf:

ffmpeg -i EINGANG -af atrim=end_sample=1000

Bandpass
Wenden Sie einen zweipoligen Butterworth-Bandpassfilter mit Mittenfrequenz an Frequenz und
(3dB-Punkt) Bandbreite. Die csg Option wählt eine konstante Randverstärkung (Spitzenverstärkung =
Q) statt der Vorgabe: konstant 0dB Spitzenverstärkung. Der Filter rollt bei 6 dB pro Oktave ab
(20dB pro Jahrzehnt).

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Stellen Sie die Mittenfrequenz des Filters ein. Standard ist 3000.

csg Konstante Randverstärkung, wenn auf 1 eingestellt. Standardmäßig auf 0.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an.

Bandabweisung
Wenden Sie einen zweipoligen Butterworth-Bandsperrfilter mit Mittenfrequenz an Frequenz und
(3dB-Punkt) Bandbreite Breite. Der Filter rollt bei 6 dB pro Oktave (20 dB pro Dekade) ab.

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Stellen Sie die Mittenfrequenz des Filters ein. Standard ist 3000.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an.

Bass
Verstärken oder senken Sie die Bassfrequenzen (niedrigeren) des Audios mit einem zweipoligen Shelving-Filter
mit einem ähnlichen Ansprechverhalten wie die Klangregler einer Standard-HiFi-Anlage. Dies ist auch bekannt als
Shelving-Entzerrung (EQ).

Der Filter akzeptiert die folgenden Optionen:

gewinnen, g
Geben Sie die Verstärkung bei 0 Hz an. Sein nützlicher Bereich liegt zwischen -20 (für einen großen Schnitt) bis +20 (für a
großer Schub). Achten Sie auf Clipping, wenn Sie eine positive Verstärkung verwenden.

Frequenz, f
Stellen Sie die Mittenfrequenz des Filters ein und können so verwendet werden, um die
Frequenzbereich angehoben oder abgesenkt werden. Der Standardwert ist 100 Hz.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Bestimmen Sie, wie steil der Shelf-Übergang des Filters ist.

Biquad
Wenden Sie einen Biquad-IIR-Filter mit den angegebenen Koeffizienten an. Woher b0, b1, b2 und a0, a1, a2
sind die Zähler- und Nennerkoeffizienten.

bs2b
Bauer-Stereo-zu-Binaural-Transformation, die das Hören von Stereo über Kopfhörer verbessert
Audioaufzeichnungen.

Es akzeptiert die folgenden Parameter:

profile
Vordefinierte Quervorschubebene.

Standard
Standardstufe (fcut=700, feed=50).

cmoy
Chu Moy-Schaltung (fcut=700, feed=60).

jmeier
Jan Meier Schaltung (fcut=650, feed=95).

fcut
Cut-Frequenz (in Hz).

Feed
Speisepegel (in Hz).

Kanalkarte
Ordnen Sie Eingangskanäle neuen Positionen zu.

Es akzeptiert die folgenden Parameter:

Kanal_Layout
Das Kanallayout des Ausgabestreams.

Karte Ordnen Sie Kanäle vom Eingang zum Ausgang zu. Das Argument ist eine durch '|' getrennte Liste von Zuordnungen,
jeweils in der "in_channel-out_channel" or in_channel Form. in_channel kann entweder das sein
Name des Eingangskanals (zB FL für vorne links) oder dessen Index im Eingangskanal
Layout. out_channel ist der Name des Ausgabekanals oder sein Index in der Ausgabe
Kanal-Layout. Wenn out_channel nicht gegeben ist, ist es implizit ein Index, beginnend
mit null und für jede Abbildung um eins erhöht.

Wenn kein Mapping vorhanden ist, ordnet der Filter implizit die Eingangskanäle dem Ausgang zu
Kanäle unter Beibehaltung von Indizes.

Angenommen beispielsweise eine 5.1+Downmix-Eingangs-MOV-Datei,

ffmpeg -i in.mov -filter 'channelmap=map=DL-FL|DR-FR' out.wav

erstellt eine als Stereo markierte Ausgabe-WAV-Datei aus den Downmix-Kanälen des Eingangs.

So beheben Sie ein 5.1-WAV, das falsch in der nativen Kanalreihenfolge von AAC codiert ist

ffmpeg -i in.wav -filter 'channelmap=1|2|0|5|3|4:5.1' out.wav

Kanalspaltung
Teilen Sie jeden Kanal eines Eingangsaudiostreams in einen separaten Ausgangsstream auf.

Es akzeptiert die folgenden Parameter:

Kanal_Layout
Das Kanallayout des Eingabestreams. Die Vorgabe ist "Stereo".

Angenommen, eine MP3-Datei mit Stereoeingang

ffmpeg -i in.mp3 -filter_complexchannelsplitout.mkv

erstellt eine Matroska-Ausgabedatei mit zwei Audiostreams, von denen einer nur den linken enthält
Kanal und der andere der rechte Kanal.

Teilen Sie eine 5.1 WAV-Datei in Pro-Kanal-Dateien auf:

ffmpeg -i in.wav -filter_komplex
'channelsplit=channel_layout=5.1[FL][FR][FC][LFE][SL][SR]'
-map '[FL]' front_left.wav -map '[FR]' front_right.wav -map '[FC]'
front_center.wav -map '[LFE]' lfe.wav -map '[SL]' side_left.wav -map '[SR]'
side_right.wav

Chor
Fügen Sie dem Audio einen Chorus-Effekt hinzu.

Kann eine einzelne Stimme wie einen Chorus klingen lassen, kann aber auch auf Instrumentierung angewendet werden.

Chorus ähnelt einem Echoeffekt mit einer kurzen Verzögerung, während bei Echo die Verzögerung
konstant, mit Chorus, wird durch Sinus- oder Dreiecksmodulation variiert. Die
Modulationstiefe definiert den Bereich, in dem das modulierte Delay vor oder nach dem
verzögern. Daher ertönt der verzögerte Ton langsamer oder schneller, das ist der verzögerte Ton
um das Original gestimmt, wie in einem Refrain, in dem einige Vocals leicht verstimmt sind.

Es akzeptiert die folgenden Parameter:

in_gain
Eingangsverstärkung einstellen. Der Standardwert ist 0.4.

out_gain
Ausgangsverstärkung einstellen. Der Standardwert ist 0.4.

Verzögerungen
Legen Sie Verzögerungen fest. Eine typische Verzögerung beträgt etwa 40 ms bis 60 ms.

verfällt
Set verfällt.

Geschwindigkeiten
Geschwindigkeiten einstellen.

Tiefe
Tiefen einstellen.

Beispiele

· Eine einzelne Verzögerung:

chorus=0.7:0.9:55:0.4:0.25:2

· Zwei Verzögerungen:

chorus=0.6:0.9:50|60:0.4|0.32:0.25|0.4:2|1.3

· Voller klingender Chorus mit drei Delays:

chorus=0.5:0.9:50|60|40:0.4|0.32|0.3:0.25|0.4|0.3:2|2.3|1.3

Kompanie
Komprimieren oder erweitern Sie den Dynamikbereich des Audios.

Es akzeptiert die folgenden Parameter:

Attacken
verfällt
Eine Liste der Zeiten in Sekunden für jeden Kanal, über die der momentane Pegel des
Eingangssignal wird gemittelt, um seine Lautstärke zu bestimmen. Attacken bezieht sich auf Volumenzunahme
und verfällt bezieht sich auf die Abnahme des Volumens. In den meisten Situationen ist die Angriffszeit
(Reaktion auf lauter werdendes Audio) sollte kürzer als die Decay-Zeit sein, weil
Das menschliche Ohr reagiert empfindlicher auf plötzliches lautes Audio als auf plötzliches leises Audio. Ein typisches
Der Attack-Wert beträgt 0.3 Sekunden und der typische Decay-Wert 0.8 Sekunden. Wenn
Die angegebene Anzahl von Attacks & Decays ist niedriger als die Anzahl der Kanäle, der letzte Satz
Attack/Decay wird für alle verbleibenden Kanäle verwendet.

Punkte
Eine Liste von Punkten für die Übertragungsfunktion, angegeben in dB relativ zum Maximum
mögliche Signalamplitude. Jede Schlüsselpunktliste muss wie folgt definiert werden
Syntax: "x0/y0|x1/y1|x2/y2|..." oder "x0/y0 x1/y1 x2/y2 ...."

Die Eingabewerte müssen streng aufsteigend sein, aber die Übertragungsfunktion tut es
müssen nicht monoton steigend sein. Der Punkt „0/0“ wird angenommen, kann aber überschrieben werden
(durch "0/out-dBn"). Typische Werte für die Übertragungsfunktion sind "-70/-70|-60/-20".

weiches Knie
Stellen Sie den Kurvenradius in dB für alle Gelenke ein. Der Standardwert ist 0.01.

gewinnen
Stellen Sie die zusätzliche Verstärkung in dB ein, die an allen Punkten der Übertragungsfunktion angewendet werden soll.
Dies ermöglicht eine einfache Einstellung der Gesamtverstärkung. Es ist standardmäßig 0.

Volumen
Stellen Sie eine Anfangslautstärke in dB ein, die für jeden Kanal angenommen werden soll, wenn die Filterung beginnt.
Dadurch kann der Anwender zunächst einen Nennfüllstand liefern, so dass beispielsweise a
eine sehr große Verstärkung wird nicht auf die anfänglichen Signalpegel angewendet, bevor die Kompandierung abgeschlossen ist
in Betrieb genommen. Ein typischer Wert für anfangs leises Audio ist -90 dB. Es
standardmäßig auf 0.

verzögern
Legen Sie eine Verzögerung in Sekunden fest. Das Eingangsaudio wird sofort analysiert, aber das Audio wird verzögert
bevor sie dem Lautstärkeregler zugeführt werden. Angeben einer Verzögerung ungefähr gleich der
Attack/Decay-Zeiten ermöglichen es dem Filter, effektiv prädiktiv zu arbeiten, anstatt
reaktiver Modus. Es ist standardmäßig 0.

Beispiele

· Machen Sie Musik mit sowohl leisen als auch lauten Passagen, die sich zum Hören in lauter Umgebung eignen
Umgebung:

compand=.3|.3:1|1:-90/-60|-60/-40|-40/-30|-20/-20:6:0:-90:0.2

Ein weiteres Beispiel für Audio mit Flüster- und Explosionsanteilen:

compand=0|0:1|1:-90/-900|-70/-70|-30/-9|0/-3:6:0:0:0

· Ein Noise Gate, wenn das Rauschen niedriger ist als das Signal:

compand=.1|.1:.2|.2:-900/-900|-50.1/-900|-50/-50:.01:0:-90:.1

· Hier ist ein weiteres Noise Gate, dieses Mal, wenn das Rauschen einen höheren Pegel hat als der
Signal (was es in gewisser Weise ähnlich wie Squelch macht):

compand=.1|.1:.1|.1:-45.1/-45.1|-45/-900|0/-900:.01:45:-90:.1

dcshift
Wenden Sie eine DC-Verschiebung auf das Audio an.

Dies kann nützlich sein, um einen DC-Offset zu entfernen (verursacht möglicherweise durch ein Hardwareproblem im
Aufnahmekette) aus dem Audio. Der Effekt eines DC-Offsets reduziert den Headroom und somit
Volumen. Die Statistiken Filter kann verwendet werden, um zu bestimmen, ob ein Signal einen DC-Offset hat.

verschieben
Legen Sie die DC-Verschiebung fest, der zulässige Bereich ist [-1, 1]. Es gibt den Betrag an, um den die
Audio.

Begrenzerverstärkung
Optional. Es sollte einen Wert von viel weniger als 1 haben (z. B. 0.05 oder 0.02) und wird verwendet, um
Clipping verhindern.

Dynaudnorm
Dynamischer Audionormalizer.

Dieser Filter wendet eine gewisse Verstärkung auf das Eingangsaudio an, um seinen Spitzenwert zu erreichen
Magnitude auf einen Zielpegel (zB 0 dBFS). Im Gegensatz zu "einfacheren"
Normalisierungsalgorithmen passt der Dynamic Audio Normalizer *dynamisch* die Verstärkung neu an
Faktor zum Eingangsaudio. Dies ermöglicht eine zusätzliche Verstärkung in den "ruhigen" Abschnitten von
das Audio, während Verzerrungen oder das Abschneiden der "lauten" Abschnitte vermieden werden. Mit anderen Worten: Die
Dynamic Audio Normalizer gleicht die Lautstärke leiser und lauter Passagen aus, in der
spüren, dass die Lautstärke jedes Abschnitts auf den gleichen Zielpegel gebracht wird. Beachten Sie jedoch,
dass der Dynamic Audio Normalizer dieses Ziel *ohne* Anwendung von "Dynamikbereich" erreicht
komprimieren". Es behält 100 % des Dynamikbereichs *innerhalb* jedes Abschnitts des Audios bei
Datei.

f Legen Sie die Framelänge in Millisekunden fest. Im Bereich von 10 bis 8000 Millisekunden. Standard
beträgt 500 Millisekunden. Der Dynamic Audio Normalizer verarbeitet das Eingangsaudio in kleinen
Blöcke, die als Frames bezeichnet werden. Dies ist erforderlich, da eine Spitzengröße keine
Bedeutung für nur einen einzelnen Abtastwert. Stattdessen müssen wir den Peak bestimmen
Betrag für eine zusammenhängende Folge von Abtastwerten. Während ein "Standard"-Normalisierer
würde einfach die Spitzengröße der gesamten Datei verwenden, den Dynamic Audio Normalizer
bestimmt die Spitzengröße individuell für jeden Frame. Die Länge eines Rahmens beträgt
in Millisekunden angegeben. Standardmäßig verwendet der Dynamic Audio Normalizer einen Frame
Länge von 500 Millisekunden, was bei den meisten Dateien zu guten Ergebnissen führt.
Beachten Sie, dass die genaue Framelänge in Anzahl der Samples bestimmt wird
automatisch, basierend auf der Abtastrate der einzelnen Audio-Eingangsdatei.

g Legen Sie die Fenstergröße des Gauß-Filters fest. Im Bereich von 3 bis 301, muss eine ungerade Zahl sein.
Der Standardwert ist 31. Der wahrscheinlich wichtigste Parameter des Dynamic Audio Normalizer
ist die "Fenstergröße" des Gaußschen Glättungsfilters. Die Fenstergröße des Filters beträgt
in Frames angegeben, zentriert um den aktuellen Frame. Der Einfachheit halber,
das muss eine ungerade Zahl sein. Folglich berücksichtigt der Standardwert von 31
den aktuellen Frame sowie die 15 vorhergehenden Frames und die 15 nachfolgenden Frames.
Die Verwendung eines größeren Fensters führt zu einem stärkeren Glättungseffekt und damit zu weniger Verstärkung
Variation, dh langsamere Verstärkungsanpassung. Umgekehrt führt die Verwendung eines kleineren Fensters zu
einen schwächeren Glättungseffekt und damit mehr Gain-Variation, dh schnellere Gain
Anpassung. Mit anderen Worten, je mehr Sie diesen Wert erhöhen, desto mehr Dynamik
Audio Normalizer verhält sich wie ein "herkömmlicher" Normalisierungsfilter. Auf der
im Gegenteil, je mehr Sie diesen Wert verringern, desto stärker wird der Dynamic Audio Normalizer
verhalten sich wie ein Dynamikkompressor.

p Stellen Sie den Ziel-Spitzenwert ein. Dies gibt die höchstzulässige Magnitudenstufe für
der normalisierte Audioeingang. Dieser Filter versucht, sich der Zielspitzengröße anzunähern
so nah wie möglich, stellt aber gleichzeitig sicher, dass die normalisierten
Signal wird niemals die Spitzengröße überschreiten. Der maximale lokale Verstärkungsfaktor eines Frames ist
direkt von der Zielspitzengröße auferlegt. Der Standardwert ist 0.95 und somit
lässt einen Headroom von 5%*. Es wird nicht empfohlen, diesen Wert zu überschreiten.

m Stellen Sie den maximalen Verstärkungsfaktor ein. Im Bereich von 1.0 bis 100.0. Der Standardwert ist 10.0. Die Dynamik
Audio Normalizer bestimmt den maximal möglichen (lokalen) Verstärkungsfaktor für jeden Eingang
Frame, dh der maximale Verstärkungsfaktor, der nicht zu Clipping oder Verzerrung führt.
Der maximale Verstärkungsfaktor wird durch die Abtastung mit der höchsten Größe des Rahmens bestimmt.
Der Dynamic Audio Normalizer begrenzt jedoch zusätzlich die maximale Verstärkung des Frames
Faktor um einen vorgegebenen (globalen) maximalen Verstärkungsfaktor. Dies geschieht, um zu vermeiden
übermäßige Verstärkungsfaktoren in "stillen" oder fast lautlosen Frames. Standardmäßig ist das Maximum
Verstärkungsfaktor ist 10.0. Für die meisten Eingänge sollte der Standardwert ausreichend sein und es
Normalerweise wird nicht empfohlen, diesen Wert zu erhöhen. Für die Eingabe mit einem extrem
bei geringer Gesamtlautstärke kann es erforderlich sein, noch höhere Verstärkungsfaktoren zuzulassen. Notiz,
dass der Dynamic Audio Normalizer jedoch nicht einfach einen "harten" Schwellenwert anwendet
(dh Cut-off-Werte über dem Schwellenwert). Stattdessen eine "Sigmoid"-Schwellenfunktion
Wird angewendet werden. Auf diese Weise nähern sich die Verstärkungsfaktoren sanft dem Schwellenwert
Wert, aber überschreiten Sie diesen Wert nie.

r Legen Sie den Ziel-RMS fest. Im Bereich von 0.0 bis 1.0. Standard ist 0.0 - deaktiviert. Standardmäßig,
der Dynamic Audio Normalizer führt eine "Peak"-Normalisierung durch. Dies bedeutet, dass die
Der maximale lokale Verstärkungsfaktor für jeden Frame wird (nur) durch den höchsten . des Frames definiert
Größenordnung Probe. Auf diese Weise können die Proben so weit wie möglich amplifiziert werden, ohne dass
Überschreitung des maximalen Signalpegels, dh ohne Clipping. Optional kann jedoch die
Dynamic Audio Normalizer kann auch den quadratischen Mittelwert des Frames berücksichtigen,
abgekürzt RMS. In der Elektrotechnik wird der RMS häufig verwendet, um die
Leistung eines zeitveränderlichen Signals. Es wird daher davon ausgegangen, dass der RMS besser ist
Annäherung an die "wahrgenommene Lautheit" als nur auf den Peak des Signals zu schauen
Größe. Folglich wird durch Einstellen aller Frames auf einen konstanten RMS-Wert ein einheitliches
"wahrgenommene Lautheit" festgestellt werden. Wenn ein Ziel-RMS-Wert angegeben wurde, a
Der lokale Verstärkungsfaktor des Rahmens ist als der Faktor definiert, der genau das ergeben würde
Effektivwert. Beachten Sie jedoch, dass der maximale lokale Verstärkungsfaktor immer noch durch
das Sample mit der höchsten Größe des Frames, um Clipping zu vermeiden.

n Aktivieren Sie die Kanalkopplung. Standardmäßig ist aktiviert. Standardmäßig ist das dynamische Audio
Normalizer verstärkt alle Kanäle um den gleichen Betrag. Das bedeutet den gleichen Gewinn
Faktor wird auf alle Kanäle angewendet, dh der maximal mögliche Verstärkungsfaktor ist
bestimmt durch den "lautesten" Kanal. Bei manchen Aufnahmen kann es jedoch vorkommen, dass
die Lautstärke der verschiedenen Kanäle ist ungleichmäßig, zB kann ein Kanal "leiser" sein als
die Anderen). In diesem Fall kann diese Option verwendet werden, um den Kanal zu deaktivieren
Kupplung. Auf diese Weise wird der Verstärkungsfaktor für jeden Kanal unabhängig bestimmt,
hängt nur von der stärksten Abtastung des einzelnen Kanals ab. Dies ermöglicht
Harmonisierung der Lautstärke der verschiedenen Kanäle.

c Aktivieren Sie die DC-Bias-Korrektur. Standardmäßig ist deaktiviert. Ein Audiosignal (in der Zeit
domain) ist eine Folge von Beispielwerten. Im Dynamic Audio Normalizer sind diese Beispiele
Werte werden im Bereich von -1.0 bis 1.0 dargestellt, unabhängig von der ursprünglichen Eingabe
Format. Normalerweise sollte das Audiosignal oder die "Wellenform" um die Null zentriert sein
Punkt. Das heißt, wenn wir den Mittelwert aller Stichproben in einer Datei berechnen, oder in a
Einzelbild, dann sollte das Ergebnis 0.0 oder zumindest sehr nahe an diesem Wert sein. Wenn,
es gibt jedoch eine signifikante Abweichung des Mittelwertes von 0.0, entweder in
positive oder negative Richtung, dies wird als DC-Bias oder DC-Offset bezeichnet. Seit einem
DC-Bias ist eindeutig unerwünscht, der Dynamic Audio Normalizer bietet optional DC-Bias
Korrektur. Wenn die DC-Bias-Korrektur aktiviert ist, wird der Dynamic Audio Normalizer
Bestimmen Sie den Mittelwert oder "DC-Korrektur"-Offset jedes Eingaberahmens und subtrahieren
dieser Wert aus allen Sample-Werten des Frames, der sicherstellt, dass diese Samples
wieder um 0.0 zentriert. Um auch "Lücken" an den Rahmengrenzen zu vermeiden,
Die Offset-Werte der DC-Korrektur werden glatt zwischen benachbarten Frames interpoliert.

b Aktivieren Sie den alternativen Begrenzungsmodus. Standardmäßig ist deaktiviert. Das dynamische Audio
Der Normalizer berücksichtigt eine bestimmte Umgebung um jeden Frame. Das beinhaltet
die vorhergehenden Frames sowie die nachfolgenden Frames. Aber für die "Grenze"
Frames, die sich ganz am Anfang und ganz am Ende der Audiodatei befinden, nicht alle
Nachbarrahmen sind vorhanden. Insbesondere für die ersten paar Frames im
Audiodatei, die vorhergehenden Frames sind nicht bekannt. Und in ähnlicher Weise für die letzten paar
Frames in der Audiodatei sind die nachfolgenden Frames nicht bekannt. Also die Frage
ergibt sich, welche Verstärkungsfaktoren für die fehlenden Frames im "Boundary" angenommen werden sollen
Region. Der Dynamic Audio Normalizer implementiert zwei Modi, um mit dieser Situation umzugehen.
Der Standard-Boundary-Modus geht von einem Verstärkungsfaktor von genau 1.0 für die fehlenden Frames aus,
was zu einem sanften "Einblenden" und "Ausblenden" am Anfang und am Ende des
Eingabe bzw.

s Stellen Sie den Komprimierungsfaktor ein. Im Bereich von 0.0 bis 30.0. Der Standardwert ist 0.0. Standardmäßig ist die
Dynamic Audio Normalizer wendet keine "herkömmliche" Komprimierung an. Dies bedeutet, dass
Signalspitzen werden nicht beschnitten und somit bleibt der volle Dynamikumfang erhalten
in jedem Ortsteil. In einigen Fällen kann es jedoch wünschenswert sein, zu kombinieren
der Normalisierungsalgorithmus des Dynamic Audio Normalizer mit einem "traditionelleren"
Kompression. Dazu bietet der Dynamic Audio Normalizer eine optionale
Kompressionsfunktion (Schwellenwert). Wenn (und nur wenn) die Komprimierungsfunktion . ist
aktiviert, werden alle Eingangsframes zuvor von einer Soft-Knie-Schwellenwertfunktion verarbeitet
zum eigentlichen Normalisierungsprozess. Einfach ausgedrückt, die Schwellenwertfunktion wird
Beschneiden Sie alle Stichproben, deren Größe einen bestimmten Schwellenwert überschreitet. Allerdings ist die
Dynamic Audio Normalizer wendet nicht einfach einen festen Schwellenwert an. Stattdessen ist die
Schwellenwert wird für jeden einzelnen Frame angepasst. Im Allgemeinen kleiner
Parameter führen zu einer stärkeren Kompression und umgekehrt. Werte unter 3.0 sind nicht
empfohlen, da hörbare Verzerrungen auftreten können.

Ohrenschmalz
Erleichtern Sie das Hören von Audio über Kopfhörer.

Dieser Filter fügt dem 44.1-kHz-Stereo-Audio (dh im Audio-CD-Format) „Cues“ hinzu, sodass beim
über Kopfhörer abgehört wird das Stereobild aus dem Inneren Ihres Kopfes (Standard für
Kopfhörer) nach außen und vor den Hörer (Standard bei Lautsprechern).

Von SoX portiert.

Ausgleich
Wenden Sie einen zweipoligen Peaking-Entzerrungsfilter (EQ) an. Bei diesem Filter wird der Signalpegel bei
und um eine ausgewählte Frequenz erhöht oder verringert werden, während (im Gegensatz zu Bandpass und
Bandsperrfilter), die bei allen anderen Frequenzen unverändert ist.

Um komplexe Entzerrungskurven zu erzeugen, kann dieser Filter mehrfach angegeben werden,
jeweils mit einer anderen Mittenfrequenz.

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Stellen Sie die Mittenfrequenz des Filters in Hz ein.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an.

gewinnen, g
Stellen Sie die erforderliche Verstärkung oder Dämpfung in dB ein. Achten Sie bei der Verwendung eines Positivs auf Clipping
zu gewinnen.

Beispiele

· 10 dB bei 1000 Hz dämpfen, mit einer Bandbreite von 200 Hz:

Equalizer=f=1000:width_type=h:width=200:g=-10

· 2 dB Verstärkung bei 1000 Hz mit Q 1 anwenden und 5 dB bei 100 Hz mit Q 2 dämpfen:

equalizer=f=1000:width_type=q:width=1:g=2,equalizer=f=100:width_type=q:width=2:g=-5

Flanger
Wenden Sie einen Flanger-Effekt auf das Audio an.

Der Filter akzeptiert die folgenden Optionen:

verzögern
Stellen Sie die Basisverzögerung in Millisekunden ein. Bereich von 0 bis 30. Der Standardwert ist 0.

Tiefe
Legen Sie die zusätzliche Sweep-Verzögerung in Millisekunden fest. Bereich von 0 bis 10. Der Standardwert ist 2.

regen
Prozentuale Regeneration einstellen (verzögerte Signalrückmeldung). Bereich von -95 bis 95. Standard
Wert ist 0.

Breite
Stellen Sie den Prozentsatz des verzögerten Signals ein, das mit dem Original gemischt wird. Bereich von 0 bis 100. Standard
Wert ist 71.

Geschwindigkeit
Sweeps pro Sekunde (Hz) einstellen. Bereich von 0.1 bis 10. Der Standardwert ist 0.5.

gestalten
Gepfeilte Wellenform einstellen, kann sein dreieckig or sinusförmig. Standardwert ist sinusförmig.

Phase
Stellen Sie die prozentuale Verschiebung der Wobbelwelle für Mehrkanal ein. Bereich von 0 bis 100. Standardwert
ist 25.

interp
Delay-Line-Interpolation einstellen, linear or quadratisch. Standard ist linear.

Hochpass
Wenden Sie einen Hochpassfilter mit einer Punktfrequenz von 3 dB an. Der Filter kann entweder einpolig,
oder zweipolig (Standard). Der Filter rollt bei 6dB pro Pol pro Oktave (20dB pro
Pol pro Jahrzehnt).

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Frequenz in Hz einstellen. Standard ist 3000.

Stangen, p
Anzahl der Pole einstellen. Standard ist 2.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an. Gilt nur für Doppelpol
Filter. Der Standardwert ist 0.707q und gibt eine Butterworth-Antwort aus.

join
Verbinden Sie mehrere Eingabestreams zu einem Mehrkanalstream.

Es akzeptiert die folgenden Parameter:

Eingänge
Die Anzahl der Eingabestreams. Es ist standardmäßig auf 2.

Kanal_Layout
Das gewünschte Ausgangskanal-Layout. Es ist standardmäßig auf Stereo eingestellt.

Karte Ordnen Sie Kanäle von den Eingängen zum Ausgang zu. Das Argument ist eine durch '|' getrennte Liste von Zuordnungen,
jeweils in der "input_idx.in_channel-out_channel" Form. input_idx ist der 0-basierte Index von
der Eingangsstrom. in_channel kann entweder der Name des Eingangskanals sein (zB FL für
vorne links) oder seinen Index im angegebenen Eingabestrom. out_channel ist der Name des
Ausgangskanal.

Der Filter versucht, die Zuordnungen zu erraten, wenn sie nicht explizit angegeben werden. Es
tut dies, indem zuerst versucht wird, einen nicht verwendeten passenden Eingangskanal zu finden, und wenn dies fehlschlägt
wählt den ersten ungenutzten Eingangskanal.

Verbinden Sie 3 Eingänge (mit richtig eingestellten Kanallayouts):

ffmpeg -i INPUT1 -i INPUT2 -i INPUT3 -filter_complex join=inputs=3 AUSGANG

Erstellen Sie eine 5.1-Ausgabe aus 6 Einzelkanal-Streams:

ffmpeg -i fl -i fr -i fc -i sl -i sr -i lfe -filter_complex
'join=inputs=6:channel_layout=5.1:map=0.0-FL|1.0-FR|2.0-FC|3.0-SL|4.0-SR|5.0-LFE'


ladspa
Laden Sie ein LADSPA-Plugin (Linux Audio Developer's Simple Plugin API).

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit "--enable-ladspa" konfigurieren.

Datei, f
Gibt den Namen der zu ladenden LADSPA-Plugin-Bibliothek an. Wenn die Umgebungsvariable
LADSPA_PFAD definiert ist, wird das LADSPA-Plugin in jedem der Verzeichnisse gesucht
angegeben durch die durch Doppelpunkte getrennte Liste in LADSPA_PFAD, sonst im Standard LADSPA
Pfade, die in dieser Reihenfolge sind: HOME/.ladspa/lib/, /usr/local/lib/ladspa/,
/usr/lib/ladspa/.

Plugin, p
Gibt das Plugin innerhalb der Bibliothek an. Einige Bibliotheken enthalten nur ein Plugin, aber
andere enthalten viele davon. Wenn dies nicht eingestellt ist, listet der Filter alle verfügbaren Plugins auf
innerhalb der angegebenen Bibliothek.

Kontrollen, c
Setzen Sie das '|' getrennte Liste von Steuerelementen, die null oder mehr Gleitkommawerte sind
die das Verhalten des geladenen Plugins bestimmen (zum Beispiel Delay, Threshold oder
gewinnen). Steuerelemente müssen mit der folgenden Syntax definiert werden:
c0=value0|c1=value1|c2=value2|..., wo wert ist der Wert auf dem i-te Kontrolle.
If Steuerung auf "Hilfe" gesetzt ist, sind alle verfügbaren Steuerelemente und ihre gültigen Bereiche
gedruckt.

Beispielrate, s
Geben Sie die Abtastrate an, Standard ist 44100. Wird nur verwendet, wenn das Plugin keine Eingänge hat.

nb_proben, n
Legen Sie die Anzahl der Samples pro Kanal und jedes Ausgabeframe fest, der Standardwert ist 1024. Nur
Wird verwendet, wenn das Plugin keine Eingänge hat.

Dauer, d
Legen Sie die Mindestdauer der Audioquelle fest. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax. Beachten Sie, dass die resultierende Dauer möglicherweise
länger als die angegebene Dauer sein, da das generierte Audio immer am
Ende eines kompletten Rahmens. Wenn nicht angegeben oder die angegebene Dauer negativ ist, wird die
Audio soll für immer generiert werden. Wird nur verwendet, wenn das Plugin null Eingänge hat.

Beispiele

· Listen Sie alle verfügbaren Plugins in der AMP-Bibliothek (LADSPA-Beispiel-Plugin) auf:

ladspa=Datei=amp

· Listen Sie alle verfügbaren Steuerelemente und ihre gültigen Bereiche für das "vcf_notch"-Plugin von "VCF" auf
Bibliothek:

ladspa=f=vcf:p=vcf_notch:c=Hilfe

· Simulieren Sie Audiogeräte von geringer Qualität mit dem Plugin "Computer Music Toolkit" (CMT)
Bibliothek:

ladspa=file=cmt:plugin=lofi:controls=c0=22|c1=12|c2=12

· Fügen Sie dem Audio mit TAP-Plugins (Toms Audio Processing Plugins) Nachhall hinzu:

ladspa=file=tap_reverb:tap_reverb

· Weißes Rauschen mit 0.2 Amplitude erzeugen:

ladspa=file=cmt:noise_source_white:c=c0=.2

· Erzeuge 20 bpm Klicks mit dem Plugin "C* Click - Metronome" aus dem "C* Audio Plugin"
Suite" (CAPS) Bibliothek:

ladspa=file=caps:Klick:c=c1=20'

· Wenden Sie den Effekt "C* Eq10X2 - Stereo 10-Band-Equalizer" an:

ladspa=caps:Eq10X2:c=c0=-48|c9=-24|c3=12|c4=2

Befehle

Dieser Filter unterstützt die folgenden Befehle:

cN ändern Sie die N-ten Kontrollwert.

Wenn der angegebene Wert nicht gültig ist, wird er ignoriert und der vorherige Wert beibehalten.

Tiefpass
Wenden Sie einen Tiefpassfilter mit einer Punktfrequenz von 3 dB an. Der Filter kann entweder einpolig oder
zweipolig (Standard). Der Filter rollt bei 6dB pro Pol pro Oktave ab (20dB pro Pol
pro Jahrzehnt).

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Frequenz in Hz einstellen. Standard ist 500.

Stangen, p
Anzahl der Pole einstellen. Standard ist 2.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Geben Sie die Bandbreite eines Filters in width_type-Einheiten an. Gilt nur für Doppelpol
Filter. Der Standardwert ist 0.707q und gibt eine Butterworth-Antwort aus.

Pfanne
Mischen Sie Kanäle mit bestimmten Verstärkungsstufen. Der Filter akzeptiert das Ausgangskanallayout
gefolgt von einer Reihe von Kanaldefinitionen.

Dieser Filter wurde auch entwickelt, um die Kanäle eines Audiostreams effizient neu zuzuordnen.

Der Filter akzeptiert Parameter der Form: "l|outdef|outdef|..."

l Ausgangskanallayout oder Anzahl der Kanäle

outdef
Spezifikation des Ausgangskanals in der Form:
"out_name=[gewinnen*]in_name[+[gewinnen*]in_name...]"

out_name
Ausgangskanal zu definieren, entweder einen Kanalnamen (FL, FR, etc.) oder eine Kanalnummer
(c0, c1, usw.)

gewinnen
multiplikativer Koeffizient für den Kanal, 1 bei unveränderter Lautstärke

in_name
zu verwendender Eingangskanal, siehe out_name für Details; Es ist nicht möglich, benannte und zu mischen
nummerierte Eingangskanäle

Wenn das `=' in einer Kanalangabe durch `<' ersetzt wird, dann die Verstärkung dafür
Spezifikation wird renormiert, so dass die Summe 1 ist, wodurch Clipping-Rauschen vermieden werden.

Vermischung Beispiele

Wenn Sie beispielsweise von Stereo auf Mono heruntermischen möchten, jedoch mit einem größeren Faktor für die
linker Kanal:

pan=1c|c0=0.9*c0+0.1*c1

Ein benutzerdefinierter Downmix zu Stereo, der automatisch für 3-, 4-, 5- und 7-Kanäle funktioniert
umgeben:

pan=stereo| FL < FL + 0.5*FC + 0.6*BL + 0.6*SL | FR < FR + 0.5*FC + 0.6*BR + 0.6*SR

Beachten Sie, dass ffmpeg integriert ein Standard-Down-Mix- (und -Up-Mix-) -System, das
bevorzugt (siehe Option "-ac"), es sei denn, Sie haben sehr spezielle Anforderungen.

Neuzuordnung Beispiele

Die Neuzuordnung des Kanals ist nur dann wirksam, wenn:

*
*

Wenn alle diese Bedingungen erfüllt sind, benachrichtigt der Filter den Benutzer ("Reinkanal
Mapping erkannt") und verwenden Sie eine optimierte und verlustfreie Methode, um die Neuzuordnung durchzuführen.

Wenn Sie beispielsweise eine 5.1-Quelle haben und einen Stereo-Audiostream wünschen, indem Sie das Extra weglassen
Kanäle:

pan="stereo| c0=FL | c1=FR"

Bei gleicher Quelle können Sie auch die Kanäle vorne links und vorne rechts umschalten und behalten
das Layout des Eingangskanals:

pan="5.1| c0=c1 | c1=c0 | c2=c2 | c3=c3 | c4=c4 | c5=c5"

Wenn der Eingang ein Stereo-Audiostream ist, können Sie den vorderen linken Kanal stumm schalten (und trotzdem behalten
das Stereo-Kanal-Layout) mit:

pan="stereo|c1=c1"

Immer noch mit einem Stereo-Audiostream-Eingang können Sie den rechten Kanal sowohl vorne links kopieren
und rechts:

pan="stereo| c0=FR | c1=FR"

noch einmal spielen
ReplayGain-Scannerfilter. Dieser Filter nimmt einen Audiostream als Eingabe und gibt ihn aus
unverändert. Am Ende der Filterung werden "track_gain" und "track_peak" angezeigt.

resample
Konvertieren Sie das Audio-Sample-Format, die Sample-Rate und das Kanal-Layout. Es soll nicht sein
direkt verwendet.

Seitenkettenkomprimierung
Dieser Filter verhält sich wie ein normaler Kompressor, kann aber das erkannte Signal komprimieren
zweites Eingangssignal verwenden. Es benötigt zwei Eingabeströme und gibt einen Ausgabestrom zurück.
Der erste Eingangsstrom wird abhängig vom zweiten Stromsignal verarbeitet. Die gefilterte
Das Signal kann dann in späteren Verarbeitungsstufen mit anderen Filtern gefiltert werden. Sehen Pfanne und
eine Zusammenführung Filter.

Der Filter akzeptiert die folgenden Optionen:

Schwelle
Wenn ein Signal des zweiten Streams über diesen Pegel ansteigt, beeinflusst dies die Verstärkungsreduzierung
des ersten Stroms. Standardmäßig ist 0.125. Der Bereich liegt zwischen 0.00097563 und 1.

Verhältnis
Stellen Sie ein Verhältnis ein, um das das Signal reduziert wird. 1:2 bedeutet, dass bei einer Erhöhung des Pegels um 4dB
oberhalb des Schwellenwerts liegt er nach der Reduzierung nur noch 2 dB darüber. Standard ist 2.
Der Bereich liegt zwischen 1 und 20.

Attacke
Millisekunden, die das Signal über den Schwellenwert ansteigen muss, bevor die Verstärkung erreicht wird
Reduktion beginnt. Der Standardwert ist 20. Der Bereich liegt zwischen 0.01 und 2000.

Release
Millisekunden, die das Signal unter den Schwellenwert fallen muss, bevor die Reduzierung erfolgt
wieder abgenommen. Der Standardwert ist 250. Der Bereich liegt zwischen 0.01 und 9000.

Make-up
Stellen Sie den Betrag ein, um den das Signal nach der Verarbeitung verstärkt wird. Standard ist 2.
Der Bereich reicht von 1 bis 64.

Knie
Biegen Sie das scharfe Knie um den Schwellenwert, um die Verstärkungsreduktion sanfter einzugeben.
Der Standardwert ist 2.82843. Der Bereich liegt zwischen 1 und 8.

Link
Wählen Sie, ob der "durchschnittliche" Pegel zwischen allen Kanälen des Side-Chain-Streams oder der
ein lauter("maximum") Kanal des Sidechain-Streams beeinflusst die Reduzierung. Standard ist
"Durchschnitt".

Erkennung
Soll bei "peak" das genaue Signal genommen werden oder bei "rms" ein RMS-Signal.
Standard ist "rms", was hauptsächlich glatter ist.

Beispiele

· Vollständiges ffmpeg-Beispiel mit 2 Audioeingängen, der erste Eingang wird je nach komprimiert
Signal des 2. Eingangs und später komprimiertes Signal, das mit dem 2. Eingang zusammengeführt werden soll:

ffmpeg -i main.flac -i sidechain.flac -filter_complex "[1:a]asplit=2[sc][mix];[0:a][sc]sidechaincompress[compr];[compr][mix]amerge"

Stilledetektieren
Stille in einem Audiostream erkennen.

Dieser Filter protokolliert eine Nachricht, wenn er erkennt, dass die Eingangslautstärke kleiner oder gleich ist
ein Rauschtoleranzwert für eine Dauer größer oder gleich dem minimal erkannten Rauschen
Dauer.

Die gedruckten Zeiten und Dauer werden in Sekunden angegeben.

Der Filter akzeptiert die folgenden Optionen:

Dauer, d
Legen Sie die Dauer der Stille bis zur Benachrichtigung fest (Standard ist 2 Sekunden).

Lärm, n
Rauschtoleranz einstellen. Kann in dB angegeben werden (falls "dB" an die angegebene . angehängt wird
Wert) oder Amplitudenverhältnis. Der Standardwert ist -60 dB oder 0.001.

Beispiele

· Erkennen Sie 5 Sekunden Stille mit -50dB Rauschtoleranz:

Stilledetect=n=-50dB:d=5

· Komplettes Beispiel mit ffmpeg um Stille mit 0.0001 Rauschtoleranz in . zu erkennen
Stille.mp3:

ffmpeg -i silent.mp3 -af silentdetect=noise=0.0001 -f null -

Stilleentfernen
Entfernen Sie die Stille am Anfang, in der Mitte oder am Ende des Audios.

Der Filter akzeptiert die folgenden Optionen:

start_perioden
Dieser Wert wird verwendet, um anzugeben, ob Audio am Anfang des Audios getrimmt werden soll. EIN
Der Wert Null zeigt an, dass von Anfang an keine Stille getrimmt werden sollte. Wann
Wenn Sie einen Wert ungleich Null angeben, wird das Audio so lange getrimmt, bis keine Stille gefunden wird. Normalerweise,
beim Trimmen der Stille vom Anfang des Audios die start_perioden wird 1 sein, aber es kann
auf höhere Werte erhöht werden, um alle Audiodaten bis zu einer bestimmten Anzahl von Nicht-Stille zu trimmen
Perioden. Der Standardwert ist 0.

start_dauer
Geben Sie an, wie lange keine Stille erkannt werden muss, bevor das Trimmen beendet wird
Audio. Durch Erhöhen der Dauer können Geräuschausbrüche als Stille behandelt werden und
abgeschnitten. Der Standardwert ist 0.

Startschwelle
Dies gibt an, welcher Abtastwert als Stille behandelt werden soll. Für digitales Audio, a
Wert von 0 mag in Ordnung sein, aber für Audio, das von analog aufgenommen wurde, möchten Sie möglicherweise erhöhen
der Wert, um Hintergrundgeräusche zu berücksichtigen. Kann in dB angegeben werden (falls "dB" ist
an den angegebenen Wert angehängt) oder Amplitudenverhältnis. Der Standardwert ist 0.

stop_periods
Legen Sie die Anzahl für das Trimmen der Stille am Ende des Audios fest. Um die Stille aus dem zu entfernen
Mitte einer Datei, spezifizieren Sie a stop_periods das ist negativ. Dieser Wert wird dann behandelt
als positiver Wert und wird verwendet, um anzuzeigen, dass der Effekt die Verarbeitung neu starten sollte, wie
spezifiziert durch start_perioden, wodurch es zum Entfernen von Stilleperioden im
mitten im Audio. Der Standardwert ist 0.

stop_duration
Geben Sie eine Dauer der Stille an, die vorhanden sein muss, bevor Audio nicht mehr kopiert wird. Durch
Bei Angabe einer höheren Dauer kann die gewünschte Stille im Audio gelassen werden.
Der Standardwert ist 0.

stop_threshold
Dies ist das gleiche wie Startschwelle aber zum Trimmen der Stille am Ende des Audios.
Kann in dB (wenn "dB" an den angegebenen Wert angehängt wird) oder Amplitude angegeben werden
Verhältnis. Der Standardwert ist 0.

Leave_silence
Dies weist darauf hin, dass stop_duration Länge des Audios sollte intakt gelassen werden
Beginn jeder Stilleperiode. Wenn Sie beispielsweise lange Pausen entfernen möchten
zwischen Wörtern, möchten aber die Pausen nicht vollständig entfernen. Der Standardwert ist 0.

Beispiele

· Das folgende Beispiel zeigt, wie dieser Filter verwendet werden kann, um eine Aufnahme zu starten, die
enthalten nicht die Verzögerung beim Start, die normalerweise zwischen dem Drücken der Schallplatte auftritt
Taste und Beginn der Aufführung:

Silenceremove=1:5:0.02

Diskant
Erhöhen oder senken Sie die Höhen (obere) Frequenzen des Audios mit einem zweipoligen Shelving-Filter mit
ein Ansprechverhalten ähnlich dem der Klangregler einer Standard-Hi-Fi-Anlage. Dies ist auch bekannt als
Shelving-Entzerrung (EQ).

Der Filter akzeptiert die folgenden Optionen:

gewinnen, g
Geben Sie die Verstärkung bei dem niedrigeren Wert von ~22 kHz und der Nyquist-Frequenz an. Es ist
Der nützliche Bereich liegt zwischen -20 (für einen großen Schnitt) bis +20 (für einen großen Boost). Vorsicht vor
Clipping bei Verwendung einer positiven Verstärkung.

Frequenz, f
Stellen Sie die Mittenfrequenz des Filters ein und können so verwendet werden, um die
Frequenzbereich angehoben oder abgesenkt werden. Der Standardwert ist 3000 Hz.

width_type
Legen Sie die Methode fest, um die Bandbreite des Filters anzugeben.

h Hz

q Q-Faktor

o Oktave

s Hang

Breite, w
Bestimmen Sie, wie steil der Shelf-Übergang des Filters ist.

Volumen
Passen Sie die Audio-Eingangslautstärke an.

Es akzeptiert die folgenden Parameter:

Volumen
Legen Sie den Ausdruck für die Audiolautstärke fest.

Ausgabewerte werden auf den Maximalwert abgeschnitten.

Die Audioausgabelautstärke ergibt sich aus der Beziehung:

= *

Der Standardwert für Volumen ist "1.0".

Präzision
Dieser Parameter repräsentiert die mathematische Genauigkeit.

Es legt fest, welche Eingabe-Sample-Formate zulässig sind, was sich auf die Genauigkeit auswirkt
der Lautstärkeskalierung.

fixiert
8-Bit-Festkomma; dies begrenzt das Eingabe-Sample-Format auf U8, S16 und S32.

schweben
32-Bit-Gleitkomma; dies begrenzt das Eingabe-Sample-Format auf FLT. (Ursprünglich)

doppelt
64-Bit-Gleitkomma; dies begrenzt das Eingabe-Sample-Format auf DBL.

noch einmal spielen
Wählen Sie das Verhalten beim Antreffen von ReplayGain-Seitendaten in Eingabeframes.

fallen lassen
Entfernen Sie ReplayGain-Seitendaten und ignorieren Sie deren Inhalt (Standard).

ignorieren
Ignorieren Sie ReplayGain-Seitendaten, aber lassen Sie sie im Rahmen.

verfolgen sind
Bevorzugen Sie die Spurverstärkung, falls vorhanden.

Album
Bevorzugen Sie die Albumverstärkung, falls vorhanden.

replaygain_preamp
Vorverstärkungsverstärkung in dB, die auf die ausgewählte Replaygain-Verstärkung angewendet wird.

Standardwert für replaygain_preamp ist 0.0.

eval
Wird gesetzt, wenn der Volumenausdruck ausgewertet wird.

Es akzeptiert die folgenden Werte:

einmal
Ausdruck nur einmal während der Filterinitialisierung auswerten, oder wenn die Volumen
Befehl wird gesendet

Rahmen
evaluiere den Ausdruck für jeden eingehenden Frame

Standardwert ist einmal.

Der Volumenausdruck kann die folgenden Parameter enthalten.

n Bildnummer (beginnend bei Null)

nb_channels
Anzahl der Kanäle

nb_consumed_samples
Anzahl der vom Filter verbrauchten Samples

nb_proben
Anzahl der Samples im aktuellen Frame

Post ursprüngliche Frameposition in der Datei

pts Rahmen PTS

Beispielrate
Beispielrate

beginnt
PTS zu Beginn des Streams

starte
Uhrzeit zu Beginn des Streams

t Rahmenzeit

tb Zeitstempel-Zeitbasis

Volumen
zuletzt eingestellter Lautstärkewert

Beachten Sie das wann eval eingestellt ist einmal nur die Beispielrate und tb Variablen sind verfügbar,
alle anderen Variablen werden zu NAN ausgewertet.

Befehle

Dieser Filter unterstützt die folgenden Befehle:

Volumen
Ändern Sie den Volumenausdruck. Der Befehl akzeptiert die gleiche Syntax wie der
entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

replaygain_noclip
Verhindern Sie Clipping, indem Sie die angewendete Verstärkung begrenzen.

Standardwert für replaygain_noclip ist 1.

Beispiele

· Halbiere die Eingangslautstärke:

Volumen = Volumen = 0.5
Volumen=Volumen=1/2
Lautstärke = Lautstärke = -6.0206 dB

In allen obigen Beispielen ist der benannte Schlüssel für Volumen kann weggelassen werden, zum Beispiel wie in:

Volumen = 0.5

· Erhöhen Sie die Audioeingangsleistung um 6 Dezibel mit Festkomma-Präzision:

Lautstärke=Lautstärke=6dB:Präzision=Fest

· Fade-Lautstärke nach Zeit 10 mit einer Vernichtungszeit von 5 Sekunden:

volume='if(lt(t,10),1,max(1-(t-10)/5,0))':eval=frame

Lautstärke erkennen
Ermitteln Sie die Lautstärke des Eingangsvideos.

Der Filter hat keine Parameter. Die Eingabe wird nicht geändert. Statistiken über das Volumen werden
im Protokoll gedruckt werden, wenn das Ende des Eingabestroms erreicht ist.

Es zeigt insbesondere das mittlere Volumen (root mean square), das maximale Volumen (auf einer
Stichprobenbasis) und den Beginn eines Histogramms der registrierten Volumenwerte (aus dem
Maximalwert auf ein kumuliertes 1/1000 der Stichproben).

Alle Lautstärken sind in Dezibel bezogen auf den maximalen PCM-Wert.

Beispiele

Hier ein Auszug der Ausgabe:

[Parsed_volumedetect_0 0xa23120] mittlere_Lautstärke: -27 dB
[Parsed_volumedetect_0 0xa23120] max_volume: -4 dB
[Parsed_volumedetect_0 0xa23120] histogram_4db: 6
[Parsed_volumedetect_0 0xa23120] histogram_5db: 62
[Parsed_volumedetect_0 0xa23120] histogram_6db: 286
[Parsed_volumedetect_0 0xa23120] histogram_7db: 1042
[Parsed_volumedetect_0 0xa23120] histogram_8db: 2551
[Parsed_volumedetect_0 0xa23120] histogram_9db: 4609
[Parsed_volumedetect_0 0xa23120] histogram_10db: 8409

Es bedeutet, dass:

· Die mittlere quadratische Energie beträgt ungefähr -27 dB oder 10^-2.7.

· Das größte Sample liegt bei -4 dB, genauer gesagt zwischen -4 dB und -5 dB.

· Es gibt 6 Samples bei -4 dB, 62 bei -5 dB, 286 bei -6 dB usw.

Mit anderen Worten, eine Erhöhung der Lautstärke um +4 dB verursacht kein Clipping, eine Erhöhung um +5
dB verursacht Clipping für 6 Samples usw.

AUDIO QUELLEN


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Audioquellen.

ein Puffer
Puffern Sie Audioframes und stellen Sie sie der Filterkette zur Verfügung.

Diese Quelle ist hauptsächlich für eine programmatische Verwendung gedacht, insbesondere durch die Schnittstelle
definiert in libavfilter/asrc_abuffer.h.

Es akzeptiert die folgenden Parameter:

Zeitbasis
Die Zeitbasis, die für Zeitstempel der übermittelten Frames verwendet wird. Es muss entweder sein
eine Gleitkommazahl oder in Zähler/Nenner Form.

Beispielrate
Die Abtastrate der eingehenden Audiopuffer.

sample_fmt
Das Sample-Format der eingehenden Audiopuffer. Entweder ein Beispielformatname oder seine
entsprechende Integer-Darstellung aus der Aufzählung AVSampleFormat in
libavutil/samprefmt.h

Kanal_Layout
Das Kanallayout der eingehenden Audiopuffer. Entweder ein Kanal-Layout-Name von
channel_layout_map ein libavutil/channel_layout.c oder seine entsprechende ganze Zahl
Darstellung aus den AV_CH_LAYOUT_* Makros in libavutil/channel_layout.h

Kanäle
Die Anzahl der Kanäle der eingehenden Audiopuffer. Wenn beides Kanäle und
Kanal_Layout angegeben werden, müssen sie konsistent sein.

Beispiele

abuffer=sample_rate=44100:sample_fmt=s16p:channel_layout=stereo

weist die Quelle an, planares 16-Bit-Stereo mit Vorzeichen bei 44100 Hz zu akzeptieren. Seit der
Sample-Format mit dem Namen "s16p" entspricht der Nummer 6 und dem "Stereo"-Kanal-Layout
entspricht dem Wert 0x3, dies entspricht:

abuffer=sample_rate=44100:sample_fmt=6:channel_layout=0x3

aevalsrc
Generieren Sie ein Audiosignal, das durch einen Ausdruck angegeben wird.

Diese Quelle akzeptiert als Eingabe einen oder mehrere Ausdrücke (einen für jeden Kanal), die
ausgewertet und zur Generierung eines entsprechenden Audiosignals verwendet.

Diese Quelle akzeptiert die folgenden Optionen:

ausdrücken
Legen Sie die durch '|' getrennte Liste der Ausdrücke für jeden einzelnen Kanal fest. Falls die
Kanal_Layout Option nicht angegeben ist, hängt das ausgewählte Kanallayout von der
Anzahl der bereitgestellten Ausdrücke. Andernfalls wird der zuletzt angegebene Ausdruck angewendet auf
die restlichen Ausgangskanäle.

Kanal_Layout, c
Stellen Sie das Kanallayout ein. Die Anzahl der Kanäle im angegebenen Layout muss gleich sein
auf die Anzahl der angegebenen Ausdrücke.

Dauer, d
Legen Sie die Mindestdauer der Audioquelle fest. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax. Beachten Sie, dass die resultierende Dauer möglicherweise
länger als die angegebene Dauer sein, da das generierte Audio immer am
Ende eines kompletten Rahmens.

Wenn nicht angegeben oder die angegebene Dauer negativ ist, soll das Audio sein
für immer generiert.

nb_proben, n
Legen Sie die Anzahl der Samples pro Kanal und jedes Ausgabeframe fest, standardmäßig auf 1024.

Beispielrate, s
Geben Sie die Abtastrate an, standardmäßig ist 44100.

Jeder Ausdruck in ausdrücken kann folgende Konstanten enthalten:

n Nummer der ausgewerteten Probe, beginnend bei 0

t Zeit der ausgewerteten Probe in Sekunden, beginnend bei 0

s Beispielrate

Beispiele

· Stille erzeugen:

aevalsrc=0

· Erzeuge ein Sinussignal mit einer Frequenz von 440 Hz, setze die Abtastrate auf 8000 Hz:

aevalsrc="/sin(440*2*PI*t):s=8000"

· Generieren Sie ein Zweikanalsignal, legen Sie das Kanallayout fest (Front Center + Back
Mitte) explizit:

aevalsrc="/sin(420*2*PI*t)|cos(430*2*PI*t):c=FC|BC"

· Weißes Rauschen erzeugen:

aevalsrc="/-2+zufällig(0) "

· Ein amplitudenmoduliertes Signal erzeugen:

aevalsrc="/sin(10*2*PI*t)*sin(880*2*PI*t)"

· Erzeuge binaurale 2.5-Hz-Beats auf einem 360-Hz-Träger:

aevalsrc="/0.1*sin(2*PI*(360-2.5/2)*t) | 0.1*sin(2*PI*(360+2.5/2)*t)"

annullsrc
Die Null-Audioquelle gibt unverarbeitete Audioframes zurück. Es ist hauptsächlich als Vorlage nützlich
und zur Verwendung in Analyse-/Debugging-Tools oder als Quelle für Filter, die
ignorieren Sie die Eingabedaten (zum Beispiel den Sox-Synth-Filter).

Diese Quelle akzeptiert die folgenden Optionen:

Kanal_Layout, cl
Gibt das Kanallayout an und kann entweder eine ganze Zahl oder eine Zeichenfolge sein, die a . darstellt
Kanal-Layout. Der Standardwert von Kanal_Layout ist "Stereo".

Überprüfen Sie die channel_layout_map-Definition in libavutil/channel_layout.c für die Kartierung
zwischen Strings und Kanallayoutwerten.

Beispielrate, r
Gibt die Abtastrate an und ist standardmäßig 44100.

nb_proben, n
Legen Sie die Anzahl der Samples pro angeforderten Frames fest.

Beispiele

· Stellen Sie die Abtastrate auf 48000 Hz und das Kanallayout auf AV_CH_LAYOUT_MONO ein.

anullsrc=r=48000:cl=4

· Führen Sie die gleiche Operation mit einer offensichtlicheren Syntax aus:

anullsrc=r=48000:cl=mono

Alle Parameter müssen explizit definiert werden.

flite
Synthetisieren Sie eine Sprachäußerung mit der libflite-Bibliothek.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit konfigurieren
"--enable-libflite".

Beachten Sie, dass die Flite-Bibliothek nicht threadsicher ist.

Der Filter akzeptiert die folgenden Optionen:

list_voices
Wenn auf 1 gesetzt, listen Sie die Namen der verfügbaren Stimmen auf und beenden Sie sofort. Standard
Wert ist 0.

nb_proben, n
Legen Sie die maximale Anzahl von Samples pro Frame fest. Der Standardwert ist 512.

Textdatei
Legen Sie den Dateinamen fest, der den zu sprechenden Text enthält.

Text
Stellen Sie den Text auf Sprechen ein.

Stimme, v
Stellen Sie die Stimme ein, die für die Sprachsynthese verwendet werden soll. Der Standardwert ist "kal". Siehe auch die
list_voices .

Beispiele

· Aus Datei lesen sprache.txt, und synthetisieren den Text mit der Standard-Flite-Stimme:

flite=textdatei=speech.txt

· Lesen Sie den angegebenen Text, indem Sie die "slt"-Stimme auswählen:

flite=text='Lebe wohl, armer Teufel von einem Sub-Sub, dessen Kommentator ich bin':voice=slt

· Text in ffmpeg eingeben:

ffmpeg -f lavfi -i flite=text='Lebe wohl, armer Teufel von einem Sub-Sub, dessen Kommentator ich bin':voice=slt

· Machen ffplay Sprechen Sie den angegebenen Text mit "flite" und dem "lavfi"-Gerät:

ffplay -f lavfi flite=text='Nicht mehr trauern, was du getan hast.'

Weitere Informationen zu libflite finden Sie unter:http://www.speech.cs.cmu.edu/flite/>

ihre
Generieren Sie ein Audiosignal aus einer Sinuswelle mit einer Amplitude von 1/8.

Das Audiosignal ist bitgenau.

Der Filter akzeptiert die folgenden Optionen:

Frequenz, f
Stellen Sie die Trägerfrequenz ein. Der Standardwert ist 440 Hz.

beep_faktor, b
Aktivieren Sie jede Sekunde einen periodischen Piepton mit der Frequenz beep_faktor mal der träger
Frequenz. Der Standardwert ist 0, was bedeutet, dass der Signalton deaktiviert ist.

Beispielrate, r
Geben Sie die Abtastrate an, der Standardwert ist 44100.

Dauer, d
Geben Sie die Dauer des generierten Audiostreams an.

Samples_per_Frame
Legen Sie die Anzahl der Samples pro Ausgabeframe fest, der Standardwert ist 1024.

Beispiele

· Erzeuge eine einfache 440 Hz Sinuswelle:

ihre

· Erzeuge eine 220-Hz-Sinuswelle mit einem 880-Hz-Piepton pro Sekunde für 5 Sekunden:

Sinus=220:4:d=5
Sinus=f=220:b=4:d=5
Sinus=Frequenz=220:Beep_Faktor=4:Dauer=5

AUDIO SPÜLEN


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Audiosenken.

Puffersink
Puffern Sie Audioframes und stellen Sie sie am Ende der Filterkette zur Verfügung.

Diese Senke ist hauptsächlich für den programmatischen Gebrauch gedacht, insbesondere über die Schnittstelle
definiert in libavfilter/buffersink.h oder das Optionssystem.

Es akzeptiert einen Zeiger auf eine AVABufferSinkContext-Struktur, die den eingehenden . definiert
Pufferformate, die als undurchsichtiger Parameter an "avfilter_init_filter" übergeben werden für
Initialisierung.

annullsink
Null-Audiosenke; tun absolut nichts mit dem Eingangsaudio. Es ist hauptsächlich nützlich als
Vorlage und zur Verwendung in Analyse-/Debugging-Tools.

VIDEO FILTER


Wenn Sie Ihren FFmpeg-Build konfigurieren, können Sie jeden der vorhandenen Filter mit . deaktivieren
"--filter deaktivieren". Die Konfigurationsausgabe zeigt die Videofilter an, die in Ihrem . enthalten sind
bauen.

Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Videofilter.

Alphaextrakt
Extrahieren Sie die Alpha-Komponente aus der Eingabe als Graustufenvideo. Das ist besonders praktisch
an. Nach der Installation können Sie HEIC-Dateien mit der Alphamerge Filter.

Alphamerge
Addiere oder ersetze die Alphakomponente der primären Eingabe durch den Graustufenwert von a
zweiter Eingang. Dies ist für die Verwendung mit Alphaextrakt um die Übertragung zu ermöglichen oder
Speicherung von Frame-Sequenzen mit Alpha in einem Format, das Alpha nicht unterstützt
Kanal.

Um beispielsweise Vollbilder aus einem normalen YUV-codierten Video und einem separaten
Video erstellt mit Alphaextrakt, könnten Sie verwenden:

Film=in_alpha.mkv[alpha]; [in][alpha] alphamerge [aus]

Da dieser Filter für die Rekonstruktion ausgelegt ist, arbeitet er mit Frame-Sequenzen ohne
unter Berücksichtigung von Zeitstempeln und endet, wenn eine der Eingaben das Ende des Streams erreicht. Dieser Wille
Probleme verursachen, wenn Ihre Codierungspipeline Frames auslässt. Wenn Sie versuchen, ein Bild anzuwenden
als Overlay zu einem Videostream, betrachten Sie die Auflage stattdessen filtern.

Arsch
Gleich wie die Untertitel filter, außer dass libavcodec und libavformat nicht erforderlich sind, um
arbeiten. Andererseits ist es auf ASS-Untertiteldateien (Advanced Substation Alpha) beschränkt.

Dieser Filter akzeptiert die folgende Option zusätzlich zu den üblichen Optionen aus dem
Untertitel Filter:

Gestaltung
Stellen Sie die Shaping-Engine ein

Verfügbare Werte sind:

Auto
Die Standard-Libass-Shaping-Engine, die die beste verfügbare ist.

einfach
Schneller, schriftunabhängiger Shaper, der nur Ersetzungen durchführen kann

Komplex
Langsamerer Shaper mit OpenType für Ersetzungen und Positionierung

Die Vorgabe ist "automatisch".

Atadenoise
Wenden Sie einen adaptiven zeitlichen Mittelwert-Denoiser auf den Videoeingang an.

Der Filter akzeptiert die folgenden Optionen:

0a Schwellwert A für die 1. Ebene einstellen. Der Standardwert ist 0.02. Gültiger Bereich ist 0 bis 0.3.

0b Schwellwert B für die 1. Ebene einstellen. Der Standardwert ist 0.04. Gültiger Bereich ist 0 bis 5.

1a Schwellwert A für 2. Ebene einstellen. Der Standardwert ist 0.02. Gültiger Bereich ist 0 bis 0.3.

1b Schwellenwert B für 2. Ebene einstellen. Der Standardwert ist 0.04. Gültiger Bereich ist 0 bis 5.

2a Schwellenwert A für 3. Ebene einstellen. Der Standardwert ist 0.02. Gültiger Bereich ist 0 bis 0.3.

2b Schwellenwert B für 3. Ebene einstellen. Der Standardwert ist 0.04. Gültiger Bereich ist 0 bis 5.

Threshold A reagiert auf abrupte Änderungen des Eingangssignals und Threshold B
ist darauf ausgelegt, auf kontinuierliche Änderungen des Eingangssignals zu reagieren.

s Stellen Sie den Filter für die Anzahl der Frames ein, der für die Mittelwertbildung verwendet wird. Der Standardwert ist 33. Muss eine ungerade Zahl sein
im Bereich [5, 129].

bbox
Berechnen Sie den Begrenzungsrahmen für die nicht schwarzen Pixel in der Luminanzebene des Eingabebildes.

Dieser Filter berechnet den Begrenzungsrahmen, der alle Pixel mit einem Luminanzwert enthält
größer als der zulässige Mindestwert. Die Parameter, die die Bounding Box beschreiben, sind
auf dem Filterprotokoll gedruckt.

Der Filter akzeptiert die folgende Option:

min_val
Stellen Sie den minimalen Luminanzwert ein. Standard ist 16.

schwarz erkennen
Erkennen Sie Videointervalle, die (fast) vollständig schwarz sind. Kann nützlich sein, um Kapitel zu erkennen
Übergänge, Werbespots oder ungültige Aufnahmen. Ausgabezeilen enthalten die Zeit für die
Beginn, Ende und Dauer des erkannten Schwarzintervalls, ausgedrückt in Sekunden.

Um die Ausgabezeilen anzuzeigen, müssen Sie den Loglevel mindestens auf den
AV_LOG_INFO-Wert.

Der Filter akzeptiert die folgenden Optionen:

schwarze_min_dauer, d
Stellen Sie die minimale erkannte Schwarzdauer in Sekunden ein. Es muss ein Nicht-
negative Gleitkommazahl.

Der Standardwert ist 2.0.

picture_black_ratio_th, Bild_th
Legen Sie den Schwellenwert fest, um ein Bild als "schwarz" zu betrachten. Drücken Sie den Mindestwert für aus
das Verhältnis:

/

für die ein Bild als schwarz gilt. Der Standardwert ist 0.98.

pixel_schwarz_th, pix_th
Legen Sie den Schwellenwert fest, um ein Pixel als "schwarz" zu betrachten.

Der Schwellenwert drückt den maximalen Pixelluminanzwert aus, für den ein Pixel
gilt als "schwarz". Der bereitgestellte Wert wird nach folgender Gleichung skaliert:

= + *

Luminanzbereich_Größe und luminance_minimum_value hängen vom Eingangsvideoformat ab, die
Bereich ist [0-255] für YUV-Vollbereichsformate und [16-235] für YUV-Nicht-Vollbereich
Formate.

Der Standardwert ist 0.10.

Das folgende Beispiel setzt den maximalen Pixelschwellenwert auf den minimalen Wert und erkennt
nur schwarze Intervalle von 2 oder mehr Sekunden:

blackdetect=d=2:pix_th=0.00

schwarzer Rahmen
Erkennen Sie Frames, die (fast) vollständig schwarz sind. Kann nützlich sein, um Kapitel zu erkennen
Übergänge oder Werbung. Ausgabezeilen bestehen aus der Framenummer des erkannten
Frame, der Schwarzanteil, die Position in der Datei, falls bekannt oder -1 und die
Zeitstempel in Sekunden.

Um die Ausgabezeilen anzuzeigen, müssen Sie den Loglevel mindestens auf den
AV_LOG_INFO-Wert.

Es akzeptiert die folgenden Parameter:

Betrag
Der Prozentsatz der Pixel, die unter dem Schwellenwert liegen müssen; es ist standardmäßig auf 98 eingestellt.

Schwelle, dreschen
Der Schwellenwert, unterhalb dessen ein Pixelwert als schwarz betrachtet wird; es ist standardmäßig 32.

Mischung, tblend
Mischen Sie zwei Videoframes ineinander.

Der Filter "blend" nimmt zwei Input-Streams und gibt einen Stream aus, der erste Input ist der
"obere" Ebene und die zweite Eingabe ist "untere" Ebene. Ausgang endet bei kürzestem Eingang
beendet.

Der Filter "tblend" (Time Blend) nimmt zwei aufeinanderfolgende Frames aus einem einzigen Stream und
gibt das Ergebnis aus, das durch Mischen des neuen Frames über dem alten Frame erhalten wurde.

Eine Beschreibung der akzeptierten Optionen folgt.

c0_mode
c1_mode
c2_mode
c3_mode
all_mode
Legen Sie den Mischmodus für eine bestimmte Pixelkomponente oder alle Pixelkomponenten fest, falls
all_mode. Standardwert ist "normal".

Verfügbare Werte für Komponentenmodi sind:

Zusatz
und
durchschnittlich
brennen
verdunkeln
Unterschied
Unterschied128
aufteilen
Ausweichen
Ausschluss
glühen
hartes Licht
hartmix
aufhellen
lineares Licht
multiplizieren
Negation
normal
or
Auflage
Phönix
Nadellicht
reflektieren
Bildschirm
Sanftes Licht
subtrahieren
Strahlendes Licht
xor
c0_opacity
c1_opacity
c2_opacity
c3_opacity
all_opacity
Legen Sie die Deckkraft der Mischung für eine bestimmte Pixelkomponente oder alle Pixelkomponenten fest, falls
all_opacity. Wird nur in Kombination mit Pixelkomponenten-Mischmodi verwendet.

c0_expr
c1_expr
c2_expr
c3_expr
all_expr
Mischungsausdruck für eine bestimmte Pixelkomponente oder alle Pixelkomponenten festlegen, falls
all_expr. Beachten Sie, dass verwandte Modusoptionen ignoriert werden, wenn diese gesetzt sind.

Die Ausdrücke können die folgenden Variablen verwenden:

N Die fortlaufende Nummer des gefilterten Frames, beginnend bei 0.

X
Y die Koordinaten der aktuellen Probe

W
H die Breite und Höhe der aktuell gefilterten Ebene

SW
SH Breiten- und Höhenskalierung abhängig von der aktuell gefilterten Ebene. Es ist das Verhältnis
zwischen der entsprechenden Anzahl von Pixeln der Luma-Ebene und den Pixeln der aktuellen Ebene.
ZB für YUV4:2:0 sind die Werte "1,1" für die Luma-Ebene und "0.5,0.5" für
Chroma-Ebenen.

T Zeit des aktuellen Frames, ausgedrückt in Sekunden.

OBEN, A
Wert der Pixelkomponente an der aktuellen Position für den ersten Videoframe (obere Ebene).

UNTERSEITE, B
Wert der Pixelkomponente an der aktuellen Position für das zweite Videobild (unten
Schicht).

kürzeste
Beendigung erzwingen, wenn die kürzeste Eingabe beendet wird. Der Standardwert ist 0. Diese Option ist
nur für den Filter "blend" definiert.

wiederholen
Fahren Sie mit dem Anwenden des letzten unteren Frames nach dem Ende des Streams fort. Ein Wert von 0
deaktivieren Sie den Filter, nachdem das letzte Bild der unteren Ebene erreicht wurde. Standard ist 1.
Diese Option ist nur für den Filter "blend" definiert.

Beispiele

· Wenden Sie den Übergang von der unteren Schicht zur oberen Schicht in den ersten 10 Sekunden an:

blend=all_expr='A*(if(gte(T,10),1,T/10))+B*(1-(if(gte(T,10),1,T/10)))'

· 1x1-Schachbrett-Effekt anwenden:

blend=all_expr='if(eq(mod(X,2),mod(Y,2)),A,B)'

· Wenden Sie den linken Effekt aufdecken an:

blend=all_expr='if(gte(N*SW+X,W),A,B)'

· Uncover Down-Effekt anwenden:

blend=all_expr='if(gte(YN*SH,0),A,B)'

· Wenden Sie den Aufdecken-Links-Effekt an:

blend=all_expr='if(gte(T*SH*40+Y,H)*gte((T*40*SW+X)*B/H,W),A,B)'

· Unterschiede zwischen dem aktuellen und dem vorherigen Frame anzeigen:

tblend=all_mode=difference128

Box Unschärfe
Wenden Sie einen Boxblur-Algorithmus auf das Eingabevideo an.

Es akzeptiert die folgenden Parameter:

luma_radius, lr
luma_power, lp
Farbradius, cr
chroma_power, cp
alpha_radius, ar
alpha_power, ap

Eine Beschreibung der akzeptierten Optionen folgt.

luma_radius, lr
Farbradius, cr
alpha_radius, ar
Legen Sie einen Ausdruck für den Boxradius in Pixeln fest, der zum Verwischen der entsprechenden verwendet wird
Eingabeebene.

Der Radiuswert muss eine nicht negative Zahl sein und darf nicht größer sein als der Wert
des Ausdrucks "min(w,h)/2" für die Luma- und Alpha-Ebene und von "min(cw,ch)/2"
für die Chroma-Ebenen.

Standardwert für luma_radius ist "2". Wenn nicht angegeben, chroma_radius und alpha_radius
Standardwert auf den entsprechenden Wert eingestellt für luma_radius.

Die Ausdrücke können die folgenden Konstanten enthalten:

w
h Die Eingabebreite und -höhe in Pixeln.

cw
ch Die Breite und Höhe des eingegebenen Chroma-Bildes in Pixeln.

hsub
vssub
Die horizontalen und vertikalen Chroma-Subsample-Werte. Zum Beispiel für das Pixel
Format "yuv422p", hsub ist 2 und vssub ist 1.

luma_power, lp
chroma_power, cp
alpha_power, ap
Geben Sie an, wie oft der Boxblur-Filter auf die entsprechende Ebene angewendet wird.

Standardwert für luma_power ist 2. Wenn nicht angegeben, chroma_power und alpha_power
Standardwert auf den entsprechenden Wert eingestellt für luma_power.

Ein Wert von 0 deaktiviert den Effekt.

Beispiele

· Wenden Sie einen Boxblur-Filter an, wobei Luma, Chroma und Alpha-Radien auf 2 eingestellt sind:

boxblur=luma_radius=2:luma_power=1
Boxunschärfe=2:1

· Stellen Sie den Luma-Radius auf 2 und den Alpha- und Chroma-Radius auf 0:

boxblur=2:1:cr=0:ar=0

· Stellen Sie Luma- und Chroma-Radien auf einen Bruchteil der Videodimension ein:

boxblur=luma_radius=min(h\,w)/10:luma_power=1:chroma_radius=min(cw\,ch)/10:chroma_power=1

Codecansicht
Visualisieren Sie Informationen, die von einigen Codecs exportiert wurden.

Einige Codecs können Informationen mithilfe von Seitendaten oder auf andere Weise durch Frames exportieren. Für
Einige MPEG-basierte Codecs exportieren beispielsweise Bewegungsvektoren über die export_mvs Flagge in der
Codec flags2 .

Der Filter akzeptiert die folgende Option:

mv Stellen Sie Bewegungsvektoren zur Visualisierung ein.

Verfügbare Flaggen für mv sind:

pf vorwärts vorhergesagte MVs von P-Frames

bf vorwärts vorhergesagte MVs von B-Frames

bb rückwärts vorhergesagte MVs von B-Frames

Beispiele

· Visualisiert multidirektionale MVs von P- und B-Frames mit ffplay:

ffplay -flags2 +export_mvs input.mpg -vf codecview=mv=pf+bf+bb

Farbbalance
Ändern Sie die Intensität der Primärfarben (Rot, Grün und Blau) von Eingabebildern.

Mit dem Filter kann ein Eingabebild in den Schatten, Mitteltönen oder Lichtern angepasst werden
Regionen für die Rot-Cyan-, Grün-Magenta- oder Blau-Gelb-Balance.

Ein positiver Anpassungswert verschiebt die Balance in Richtung der Primärfarbe, ein negativer Wert
in Richtung der Komplementärfarbe.

Der Filter akzeptiert die folgenden Optionen:

rs
gs
bs Passen Sie rote, grüne und blaue Schatten (dunkelste Pixel) an.

rm
gm
bm Passen Sie rote, grüne und blaue Mitteltöne (mittlere Pixel) an.

rh
gh
bh Passen Sie rote, grüne und blaue Highlights (hellste Pixel) an.

Zulässige Bereiche für Optionen sind "[-1.0, 1.0]". Standardwerte sind 0.

Beispiele

· Fügen Sie den Schatten einen roten Farbstich hinzu:

Farbbalance=rs=.3

Farbschlüssel
Farbkeying im RGB-Farbraum.

Der Filter akzeptiert die folgenden Optionen:

Farbe
Die Farbe, die durch Transparenz ersetzt wird.

Ähnlichkeit
Ähnlichkeitsprozentsatz mit der Schlüsselfarbe.

0.01 stimmt nur mit der genauen Tastenfarbe überein, während 1.0 mit allem übereinstimmt.

mischen
Mischungsprozentsatz.

0.0 macht Pixel entweder vollständig transparent oder gar nicht transparent.

Höhere Werte ergeben halbtransparente Pixel, bei höherer Transparenz umso mehr
ähnlich ist die Pixelfarbe der Schlüsselfarbe.

Beispiele

· Machen Sie jedes grüne Pixel im Eingabebild transparent:

ffmpeg -i input.png -vf colorkey=green out.png

· Überlagern Sie ein Greenscreen-Video über ein statisches Hintergrundbild.

ffmpeg -i background.png -i video.mp4 -filter_complex "[1:v]colorkey=0x3BBD1E:0.3:0.2[ckout];[0:v][ckout]overlay[out]" -map "[out]" ausgabe.flv

Farbstufen
Passen Sie die Videoeingangsbilder mithilfe von Pegeln an.

Der Filter akzeptiert die folgenden Optionen:

Rimin
gimin
zweimin
zielen
Passen Sie den Rot-, Grün-, Blau- und Alpha-Input-Schwarzpunkt an. Zulässige Bereiche für Optionen sind
"[-1.0, 1.0]". Standardwerte sind 0.

Rimax
Gimax
Bimax
Aimax
Passen Sie den Rot-, Grün-, Blau- und Alpha-Eingangsweißpunkt an. Zulässige Bereiche für Optionen sind
"[-1.0, 1.0]". Standardwerte sind 1.

Eingangspegel werden verwendet, um Lichter (helle Töne) aufzuhellen, Schatten (dunkel) abzudunkeln
Töne), ändern Sie die Balance zwischen hellen und dunklen Tönen.

Romin
gomin
geboren
ömin
Passen Sie den Rot-, Grün-, Blau- und Alpha-Ausgabe-Schwarzpunkt an. Zulässige Bereiche für Optionen sind
"[0, 1.0]". Standardwerte sind 0.

Romantik
gomax
bomax
Aomax
Passen Sie den Rot-, Grün-, Blau- und Alpha-Ausgangsweißpunkt an. Zulässige Bereiche für Optionen sind
"[0, 1.0]". Standardwerte sind 1.

Ausgangspegel ermöglicht die manuelle Auswahl eines eingeschränkten Ausgangspegelbereichs.

Beispiele

· Videoausgabe dunkler machen:

Farbstufen=rimin=0.058:gimin=0.058:bimin=0.058

· Kontrast erhöhen:

colorlevels=rimin=0.039:gimin=0.039:bimin=0.039:rimax=0.96:gimax=0.96:bimax=0.96

· Videoausgabe heller machen:

Farbstufen=rimax=0.902:gimax=0.902:bimax=0.902

· Helligkeit erhöhen:

Farbstufen=romin=0.5:gomin=0.5:bomin=0.5

Farbkanalmischer
Passen Sie die Videoeingangsbilder an, indem Sie die Farbkanäle neu mischen.

Dieser Filter modifiziert einen Farbkanal, indem er die Werte hinzufügt, die den anderen Kanälen zugeordnet sind
der gleichen Pixel. Wenn der zu ändernde Wert beispielsweise rot ist, lautet der Ausgabewert:

= * + * + * + *

Der Filter akzeptiert die folgenden Optionen:

rr
rg
rb
ra Passen Sie den Beitrag der Rot-, Grün-, Blau- und Alphakanäle für die Ausgabe Rot an
Kanal. Standard ist 1 für rrund 0 für rg, rb und ra.

gr
gg
gb
ga Passen Sie den Beitrag der roten, grünen, blauen und Alpha-Eingangskanäle für den grünen Ausgang an
Kanal. Standard ist 1 für ggund 0 für gr, gb und ga.

br
bg
bb
ba Passen Sie den Beitrag der roten, grünen, blauen und Alpha-Eingangskanäle für den blauen Ausgang an
Kanal. Standard ist 1 für bbund 0 für br, bg und ba.

ar
ag
ab
aa Passen Sie den Beitrag der roten, grünen, blauen und Alpha-Eingangskanäle für den Alpha-Ausgang an
Kanal. Standard ist 1 für aaund 0 für ar, ag und ab.

Zulässige Bereiche für Optionen sind "[-2.0, 2.0]".

Beispiele

· Quelle in Graustufen umwandeln:

colorchannelmixer=.3:.4:.3:0:.3:.4:.3:0:.3:.4:.3

· Sepia-Töne simulieren:

colorchannelmixer=.393:.769:.189:0:.349:.686:.168:0:.272:.534:.131

Farbmatrix
Farbmatrix konvertieren.

Der Filter akzeptiert die folgenden Optionen:

src
dst Geben Sie die Quell- und Zielfarbmatrix an. Beide Werte müssen angegeben werden.

Die akzeptierten Werte sind:

bt709
BT.709

bt601
BT.601

smpte240m
SMPTE-240M

Fcc FCC

Um beispielsweise von BT.601 in SMPTE-240M zu konvertieren, verwenden Sie den Befehl:

colormatrix=bt601:smpte240m

Kopieren
Kopieren Sie die Eingangsquelle unverändert in die Ausgabe. Dies ist hauptsächlich für Testzwecke nützlich.

Ernte
Beschneiden Sie das Eingabevideo auf die angegebenen Abmessungen.

Es akzeptiert die folgenden Parameter:

w, aus_w
Die Breite des Ausgabevideos. Der Standardwert ist "iw". Dieser Ausdruck wird nur ausgewertet
einmal während der Filterkonfiguration oder wenn die w or aus_w Befehl wird gesendet.

h, aus_h
Die Höhe des Ausgabevideos. Der Standardwert ist "ih". Dieser Ausdruck wird ausgewertet
nur einmal während der Filterkonfiguration, oder wenn die h or aus_h Befehl wird gesendet.

x Die horizontale Position des linken Rands des Ausgabevideos im Eingabevideo. Es
ist standardmäßig "(in_w-out_w)/2". Dieser Ausdruck wird pro Frame ausgewertet.

y Die vertikale Position des oberen Rands des Ausgabevideos im Eingabevideo. Es
ist standardmäßig "(in_h-out_h)/2". Dieser Ausdruck wird pro Frame ausgewertet.

keep_aspekt
Wenn es auf 1 gesetzt ist, wird das Seitenverhältnis der Ausgabeanzeige mit dem der Eingabe erzwungen, um
Ändern des Seitenverhältnisses der Ausgabeprobe. Es ist standardmäßig 0.

Das aus_w, aus_h, x, y Parameter sind Ausdrücke, die die folgenden Konstanten enthalten:

x
y Die berechneten Werte für x und y. Sie werden für jeden neuen Frame ausgewertet.

in_w
in_h
Die Eingabebreite und -höhe.

iw
ih Das sind die gleichen wie in_w und in_h.

aus_w
aus_h
Die Breite und Höhe der Ausgabe (beschnitten).

ow
oh Das sind die gleichen wie aus_w und aus_h.

a wie iw / ih

sar Seitenverhältnis des Eingabebeispiels

geben das Seitenverhältnis der Eingabeanzeige ist dasselbe wie (iw / ih) * sar

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

n Die Nummer des Eingabeframes, beginnend bei 0.

Post die Position in der Datei des Eingabeframes, NAN falls unbekannt

t Der in Sekunden ausgedrückte Zeitstempel. Es ist NAN, wenn der Eingabezeitstempel unbekannt ist.

Der Ausdruck für aus_w kann vom Wert von abhängen aus_h, und der Ausdruck für aus_h
kann davon abhängen aus_w, aber darauf können sie sich nicht verlassen x und y, wie x und y werden ausgewertet nach
aus_w und aus_h.

Das x und y Parameter spezifizieren die Ausdrücke für die Position der oberen linken Ecke von
der Ausgabebereich (nicht beschnitten). Sie werden für jeden Frame ausgewertet. Wenn der ausgewertete Wert
ungültig ist, wird er dem nächsten gültigen Wert angenähert.

Der Ausdruck für x kann davon abhängen y, und der Ausdruck für y kann davon abhängen x.

Beispiele

· Beschneidungsbereich mit der Größe 100x100 an Position (12,34).

Zuschneiden=100:100:12:34

Mit benannten Optionen wird das obige Beispiel zu:

Zuschneiden=w=100:h=100:x=12:y=34

· Beschneiden Sie den zentralen Eingabebereich mit der Größe 100x100:

Zuschneiden=100:100

· Beschneiden Sie den zentralen Eingabebereich mit der Größe 2/3 des Eingabevideos:

Zuschneiden=2/3*in_w:2/3*in_h

· Beschneiden Sie das zentrale Quadrat des Eingangsvideos:

Crop=out_w=in_h
Crop=in_h

· Begrenzen Sie das Rechteck mit der oberen linken Ecke an Position 100:100 und dem
rechte untere Ecke, die der rechten unteren Ecke des Eingabebildes entspricht.

Crop=in_w-100:in_h-100:100:100

· Beschneiden Sie 10 Pixel vom linken und rechten Rand und 20 Pixel vom oberen und unteren Rand
Grenzen

Crop=in_w-2*10:in_h-2*20

· Behalten Sie nur das untere rechte Viertel des Eingabebilds bei:

Crop=in_w/2:in_h/2:in_w/2:in_h/2

· Erntehöhe für griechische Harmonie:

Crop=in_w:1/PHI*in_w

· Zittereffekt anwenden:

crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(n/7)

· Wenden Sie je nach Zeitstempel einen unregelmäßigen Kameraeffekt an:

crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)*sin(t*10):(in_h-out_h)/2 +((in_h-out_h)/2)*sin(t*13)"

· Setzen Sie x abhängig vom Wert von y:

crop=in_w/2:in_h/2:y:10+10*sin(n/10)

Befehle

Dieser Filter unterstützt die folgenden Befehle:

w, aus_w
h, aus_h
x
y Breite/Höhe des Ausgabevideos und die horizontale/vertikale Position im Eingang einstellen
Video. Der Befehl akzeptiert dieselbe Syntax wie die entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

Zuschneiden
Automatische Erkennung der Zuschneidegröße.

Es berechnet die notwendigen Zuschneideparameter und druckt die empfohlenen Parameter über
das Logging-System. Die erkannten Abmessungen entsprechen dem nicht schwarzen Bereich der Eingabe
Video.

Es akzeptiert die folgenden Parameter:

begrenzen
Stellen Sie einen höheren Schwarzwert-Schwellenwert ein, der optional von Null angegeben werden kann (0)
zu allem (255 für 8bit-basierte Formate). Ein Intensitätswert größer als der eingestellte
Wert wird als nicht schwarz betrachtet. Der Standardwert ist 24. Sie können auch einen Wert angeben
zwischen 0.0 und 1.0, die je nach Bittiefe des Pixels skaliert werden
Format.

rund
Der Wert, durch den die Breite/Höhe teilbar sein soll. Der Standardwert ist 16. Der Offset
wird automatisch angepasst, um das Video zu zentrieren. Verwenden Sie 2, um nur gerade Abmessungen zu erhalten
(wird für 4:2:2-Video benötigt). 16 ist am besten für die Codierung in die meisten Videocodecs geeignet.

reset_count, zurückstellen
Stellen Sie den Zähler ein, der bestimmt, nach wie vielen Frames cropdetect den
zuvor erkannten größten Videobereich und beginnen Sie erneut, um das aktuelle Optimum zu erkennen
Erntebereich. Der Standardwert ist 0.

Dies kann nützlich sein, wenn Kanallogos den Videobereich verzerren. 0 bedeutet „nie“
reset' und gibt den größten Bereich zurück, der während der Wiedergabe angetroffen wurde.

Kurven
Wenden Sie Farbanpassungen mithilfe von Kurven an.

Dieser Filter ähnelt den Kurvenwerkzeugen von Adobe Photoshop und GIMP. Jede Komponente (rot,
grün und blau) hat seine Werte definiert durch N Schlüsselpunkte mit einem glatten
Kurve. Die x-Achse repräsentiert die Pixelwerte aus dem Eingabeframe und die y-Achse die neuen
Pixelwerte, die für den Ausgaberahmen eingestellt werden sollen.

Standardmäßig wird eine Komponentenkurve durch die beiden Punkte definiert (0;0) und (1;1). Dies schafft eine
gerade Linie, bei der jeder ursprüngliche Pixelwert auf seinen eigenen Wert "angepasst" wird, was bedeutet
keine Änderung am Bild.

Mit dem Filter können Sie diese beiden Punkte neu definieren und weitere hinzufügen. Eine neue Kurve (mit a
natürliche kubische Spline-Interpolation) werden so definiert, dass sie alle diese neuen
Koordinaten. Die neu definierten Punkte müssen über der x-Achse streng ansteigend sein, und
ihr x und y Werte müssen in der [0;1] Intervall. Wenn die berechneten Kurven zufällig gehen
außerhalb der Vektorräume werden die Werte entsprechend abgeschnitten.

Wenn in "x=0" kein Schlüsselpunkt definiert ist, fügt der Filter automatisch a . ein (0;0)
Punkt. Auf die gleiche Weise wird der Filter, wenn in "x=1" kein Schlüsselpunkt definiert ist,
automatisch einfügen a (1;1) Punkt.

Der Filter akzeptiert die folgenden Optionen:

voreingestellten
Wählen Sie eine der verfügbaren Farbvoreinstellungen aus. Diese Option kann zusätzlich zum
r, g, b Parameter; in diesem Fall haben die späteren Optionen Vorrang vor der Voreinstellung
Werte. Verfügbare Voreinstellungen sind:

keine
color_negativ
Kreuzprozess
dunkler
Kontrast erhöhen
Feuerzeug
linearer_kontrast
mittlerer_kontrast
Negativ
starker_kontrast
Jahrgang

Standard ist "keine".

Meister, m
Legen Sie die Hauptschlüsselpunkte fest. Diese Punkte definieren ein zweites Durchlauf-Mapping. es ist
manchmal auch als "Luminanz"- oder "Wert"-Zuordnung bezeichnet. Es kann verwendet werden mit r, g, b or alle
da es sich wie eine Nachbearbeitungs-LUT verhält.

roten r
Legen Sie die Eckpunkte für die rote Komponente fest.

grün g
Legen Sie die Eckpunkte für die grüne Komponente fest.

blau, b
Legen Sie die Eckpunkte für die blaue Komponente fest.

alle Legen Sie die Eckpunkte für alle Komponenten (außer Master) fest. Kann zusätzlich verwendet werden
zu den anderen Schlüsselpunkten Komponentenoptionen. In diesem Fall wird die nicht gesetzte(n) Komponente(n)
darauf zurückgreifen alle Einstellung.

ps-Datei
Geben Sie eine Photoshop-Kurvendatei (".asv") an, aus der die Einstellungen importiert werden sollen.

Um einige Konflikte in der Filtergraph-Syntax zu vermeiden, muss jede Schlüsselpunktliste mit . definiert werden
folgende Syntax: "x0/y0 x1/y1 x2/y2 ...".

Beispiele

· Erhöhen Sie leicht die mittlere Blaustufe:

Kurven=blau='0.5/0.58'

· Vintage-Effekt:

curves=r='0/0.11 .42/.51 1/0.95':g='0.50/0.48':b='0/0.22 .49/.44 1/0.8'

Hier erhalten wir für jede Komponente die folgenden Koordinaten:

roten "(0;0.11) (0.42;0.51) (1;0.95)"

grünen
"(0;0) (0.50;0.48) (1;1)"

blau
"(0;0.22) (0.49;0.44) (1;0.80)"

· Das vorherige Beispiel lässt sich auch mit dem dazugehörigen eingebauten Preset erreichen:

Kurven=Voreinstellung=Vintage

· Oder einfach:

Kurven = Vintage

· Verwenden Sie eine Photoshop-Vorgabe und definieren Sie die Punkte der Grünkomponente neu:

curves=psfile='MyCurvesPresets/purple.asv':green='0.45/0.53'

dctdnoiz
Entrauschen Sie Frames mit 2D DCT (Frequency Domain Filtering).

Dieser Filter ist nicht für Echtzeit ausgelegt.

Der Filter akzeptiert die folgenden Optionen:

Sigma, s
Stellen Sie die Rausch-Sigma-Konstante ein.

Dieser Sigma definiert einen harten Schwellenwert von "3 * Sigma"; jeder DCT-Koeffizient (absolut
Wert) unterhalb dieser Schwelle fallengelassen werden.

Wenn Sie eine erweiterte Filterung benötigen, lesen Sie ausdr.

Standard ist 0.

überlappen
Legen Sie die Anzahl überlappender Pixel für jeden Block fest. Da der Filter langsam sein kann, können Sie
diesen Wert reduzieren möchten, auf Kosten eines weniger effektiven Filters und der Gefahr von
verschiedene Artefakte.

Wenn der überlappende Wert nicht die Verarbeitung der gesamten Eingabebreite oder -höhe zulässt, a
Warnung wird angezeigt und entsprechende Grenzen werden nicht entrauscht.

Standardwert ist Block Größe-1, was die bestmögliche Einstellung ist.

Ausdruck, e
Stellen Sie den Koeffizientenfaktor-Ausdruck ein.

Für jeden Koeffizienten eines DCT-Blocks wird dieser Ausdruck als Multiplikator ausgewertet
Wert für den Koeffizienten.

Wenn diese Option aktiviert ist, wird die Sigma Option wird ignoriert.

Der Absolutwert des Koeffizienten kann über die c variabel.

n Setze die Block Größe die Anzahl der Bits verwenden. "1<n" definiert die Block Größe, das ist die
Breite und Höhe der bearbeiteten Blöcke.

Der Standardwert ist 3 (8x8) und kann erhöht werden auf 4 für eine Block Größe von 16x16. Notiz
dass das Ändern dieser Einstellung enorme Auswirkungen auf die Verarbeitungsgeschwindigkeit hat. Auch eine
größere Blockgröße bedeutet nicht unbedingt eine bessere Rauschunterdrückung.

Beispiele

Anwenden einer Entrauschung mit a Sigma von 4.5:

dctdnoiz=4.5

Die gleiche Operation kann mit dem Expressionssystem erreicht werden:

dctdnoiz=e='gte(c, 4.5*3)'

Heftige Rauschunterdrückung mit einer Blockgröße von "16x16":

dctdnoiz=15:n=4

auflösen
Entfernen Sie Banding-Artefakte aus dem Eingangsvideo. Es funktioniert, indem es gebänderte Pixel durch ersetzt
Durchschnittswert der referenzierten Pixel.

Der Filter akzeptiert die folgenden Optionen:

1
2
3
4
Legen Sie den Schwellenwert für die Banding-Erkennung für jede Ebene fest. Der Standardwert ist 0.02. Gültiger Bereich ist
0.00003 bis 0.5. Wenn die Differenz zwischen aktuellem Pixel und Referenzpixel kleiner ist als
Schwelle, wird sie als gebändert betrachtet.

Angebot, r
Banding-Erkennungsbereich in Pixeln. Der Standardwert ist 16. Wenn positiv, Zufallszahl im Bereich
0 bis Einstellwert wird verwendet. Bei negativem Wert wird der exakte Absolutwert verwendet. Der
range definiert ein Quadrat von vier Pixeln um das aktuelle Pixel herum.

Richtung, d
Legen Sie die Richtung im Bogenmaß fest, ab der vier Pixel verglichen werden. Wenn positiv, zufällig
Richtung von 0 bis zur eingestellten Richtung wird ausgewählt. Falls negativ, exakt vom absoluten Wert
wird abgeholt. Zum Beispiel werden in Richtung 0, -PI oder -2*PI Bogenmaß nur Pixel ausgewählt
gleiche Zeile und -PI/2 werden nur Pixel in derselben Spalte auswählen.

verwischen
Wenn aktiviert, wird das aktuelle Pixel mit dem Durchschnittswert aller vier umgebenden Pixel verglichen
Pixel. Die Standardeinstellung ist aktiviert. Wenn deaktiviert, wird das aktuelle Pixel mit allen vier verglichen
umgebende Pixel. Das Pixel gilt als gebändert, wenn nur alle vier Unterschiede mit
umgebende Pixel sind kleiner als der Schwellenwert.

dezimieren
Lassen Sie doppelte Frames in regelmäßigen Abständen fallen.

Der Filter akzeptiert die folgenden Optionen:

Zyklus
Legen Sie die Anzahl der Frames fest, von denen einer gelöscht wird. Einstellen auf N bedeutet eins
Rahmen in jeder Charge von N Frames werden ausgelassen. Standard ist 5.

duptresh
Legen Sie den Schwellenwert für die Duplikaterkennung fest. Wenn die Differenzmetrik für einen Frame ist
kleiner oder gleich diesem Wert, dann wird es als Duplikat deklariert. Standard ist 1.1

scthresh
Stellen Sie den Schwellenwert für den Szenenwechsel ein. Standard ist 15.

blockx
blocky
Legen Sie die Größe der X- und Y-Achsenblöcke fest, die bei metrischen Berechnungen verwendet werden. Größer
Blöcke bieten eine bessere Rauschunterdrückung, aber auch eine schlechtere Erkennung von kleinen
Bewegungen. Muss eine Zweierpotenz sein. Der Standardwert ist 32.

ppsrc
Markieren Sie die Haupteingabe als vorverarbeitete Eingabe und aktivieren Sie den sauberen Quelleingabestrom. Dies
ermöglicht die Vorverarbeitung der Eingabe mit verschiedenen Filtern, um die Metriken zu unterstützen
Berechnung, während die Frame-Auswahl verlustfrei bleibt. Wenn auf 1 gesetzt, wird der erste
stream ist für die vorverarbeitete Eingabe und der zweite Stream ist die saubere Quelle von
wo die beibehaltenen Frames ausgewählt werden. Standard ist 0.

Chroma
Legen Sie fest, ob die Farbsättigung bei den metrischen Berechnungen berücksichtigt wird oder nicht. Standard ist 1.

deflate
Wenden Sie den Deflate-Effekt auf das Video an.

Dieser Filter ersetzt das Pixel durch das aus einer regionalen(3x3) Durchschnitt nur unter Berücksichtigung
Werte niedriger als das Pixel.

Es akzeptiert die folgenden Optionen:

Schwelle0
Schwelle1
Schwelle2
Schwelle3
Begrenzen Sie die maximale Änderung für jede Ebene, der Standardwert ist 65535. Bei 0 bleibt die Ebene bestehen
unverändert.

entrümpeln
Entfernen Sie Ruckeln, die durch teilweise interlaced telecined Inhalt erzeugt werden.

Judder kann zum Beispiel eingeführt werden durch Pullup Filter. Wenn die Originalquelle
teilweise telecined Inhalt dann hat die Ausgabe von "pullup,dejudder" eine Variable
Bildrate. Kann die aufgezeichnete Framerate des Containers ändern. Abgesehen von dieser Änderung,
Dieser Filter wirkt sich nicht auf Videos mit konstanter Bildrate aus.

Die in diesem Filter verfügbare Option ist:

Zyklus
Geben Sie die Länge des Fensters an, über das sich das Ruckeln wiederholt.

Akzeptiert jede ganze Zahl größer als 1. Nützliche Werte sind:

4 Wenn das Original von 24 bis 30 fps telecined wurde (Film auf NTSC).

5 Wenn das Original von 25 bis 30 fps (PAL zu NTSC) telecined wurde.

20 Wenn eine Mischung aus beidem.

Die Standardeinstellung ist 4.

Delogo
Unterdrücken Sie ein TV-Sender-Logo durch eine einfache Interpolation der umgebenden Pixel. Stellen Sie einfach ein
Rechteck, das das Logo bedeckt, und sieh zu, wie es verschwindet (und manchmal etwas noch Hässlicheres)
erscheinen - Ihr Kilometerstand kann variieren).

Es akzeptiert die folgenden Parameter:

x
y Geben Sie die Koordinaten der oberen linken Ecke des Logos an. Sie müssen angegeben werden.

w
h Geben Sie die Breite und Höhe des zu löschenden Logos an. Sie müssen angegeben werden.

Band, t
Geben Sie die Dicke der unscharfen Kante des Rechtecks ​​an (hinzugefügt zu w und h). Die
Standardwert ist 4.

erklären
Bei der Einstellung 1 wird auf dem Bildschirm ein grünes Rechteck gezeichnet, um das Auffinden des richtigen zu vereinfachen
x, y, w und h Parameter. Der Standardwert ist 0.

Das Rechteck wird auf den äußersten Pixeln gezeichnet, die (teilweise) ersetzt werden durch
interpolierte Werte. Die Werte der nächsten Pixel unmittelbar außerhalb dieses Rechtecks
in jede Richtung werden verwendet, um die interpolierten Pixelwerte innerhalb des zu berechnen
Rechteck.

Beispiele

· Legen Sie ein Rechteck fest, das den Bereich mit den Koordinaten der oberen linken Ecke 0,0 und der Größe abdeckt
100x77 und ein Band der Größe 10:

delogo=x=0:y=0:w=100:h=77:band=10

abschütteln
Versuchen Sie, kleine Änderungen der horizontalen und/oder vertikalen Verschiebung zu korrigieren. Dieser Filter hilft beim Entfernen
Verwackeln der Kamera durch das Halten einer Kamera in der Hand, das Anstoßen eines Stativs, das Bewegen auf einem Fahrzeug usw.

Der Filter akzeptiert die folgenden Optionen:

x
y
w
h Geben Sie einen rechteckigen Bereich an, in dem die Suche nach Bewegungsvektoren eingeschränkt werden soll. Wenn gewünscht
die Suche nach Bewegungsvektoren kann auf einen rechteckigen Bereich des Bildes beschränkt werden
definiert durch seine obere linke Ecke, Breite und Höhe. Diese Parameter haben das gleiche
Bedeutung als Drawbox-Filter, mit dem die Position des
Begrenzungsrahmen.

Dies ist nützlich, wenn die gleichzeitige Bewegung von Objekten innerhalb des Rahmens
durch die Bewegungsvektorsuche für Kamerabewegungen verwechselt.

Wenn einige oder alle von x, y, w und h auf -1 gesetzt sind, wird das Vollbild verwendet. Dies erlaubt
spätere Optionen, die ohne Angabe des Begrenzungsrahmens für den Bewegungsvektor gesetzt werden sollen
Suche.

Standard - den gesamten Frame durchsuchen.

rx
ry Geben Sie das maximale Ausmaß der Bewegung in x- und y-Richtung im Bereich von 0-64 Pixel an.
Vorgabe 16.

Rand
Geben Sie an, wie Pixel generiert werden, um Leerstellen am Rand des Rahmens zu füllen. Erhältlich
Werte sind:

leer, 0
Füllen Sie Nullen an leeren Stellen

original, 1
Originalbild an leeren Stellen

Klemme, 2
Extrudierter Kantenwert an leeren Stellen

Spiegel, 3
Gespiegelte Kante an leeren Stellen

Standardwert ist Spiegel.

Block Größe
Geben Sie die Blockgröße an, die für die Bewegungssuche verwendet werden soll. Bereich 4-128 Pixel, Standardwert 8.

Kontrast
Legen Sie die Kontrastschwelle für Blöcke fest. Nur Blöcke mit mehr als den angegebenen
Kontrast (Unterschied zwischen dunkelsten und hellsten Pixeln) wird berücksichtigt. Bereich
1-255, Standard 125.

search
Geben Sie die Suchstrategie an. Verfügbare Werte sind:

erschöpfend, 0
Erschöpfende Suche einstellen

Weniger, 1
Stellen Sie eine weniger umfassende Suche ein.

Standardwert ist umfassend.

Dateinamen
Wenn gesetzt, wird ein detailliertes Protokoll der Bewegungssuche in die angegebene Datei geschrieben.

OpenCL
Wenn auf 1 gesetzt, geben Sie die Verwendung von OpenCL-Fähigkeiten an, nur verfügbar, wenn FFmpeg war
mit "--enable-opencl" konfiguriert. Der Standardwert ist 0.

detelecin
Wenden Sie eine genaue Umkehrung der Telecine-Operation an. Es erfordert ein vordefiniertes Muster
mit der Option pattern angegeben, die mit der an das Telecine übergebenen identisch sein muss
Filter.

Dieser Filter akzeptiert die folgenden Optionen:

erstes_feld
oben, t
oberstes Feld zuerst

Unterseite, b
unteres Feld zuerst Der Standardwert ist "top".

Anleitungen
Eine Zahlenfolge, die das Pulldown-Muster darstellt, das Sie anwenden möchten. Der Standard
Wert ist 23.

start_frame
Eine Zahl, die die Position des ersten Frames in Bezug auf den Telecine darstellt
Muster. Dies ist zu verwenden, wenn der Stream unterbrochen wird. Der Standardwert ist 0.

Erweiterung
Wenden Sie den Dilatationseffekt auf das Video an.

Dieser Filter ersetzt das Pixel durch das aus einer regionalen(3x3) maximal.

Es akzeptiert die folgenden Optionen:

Schwelle0
Schwelle1
Schwelle2
Schwelle3
Begrenzen Sie die maximale Änderung für jede Ebene, der Standardwert ist 65535. Bei 0 bleibt die Ebene bestehen
unverändert.

Koordinaten
Flag, das das Pixel angibt, auf das verwiesen werden soll. Der Standardwert ist 255, dh alle acht Pixel sind
benutzt.

Flaggen zu lokalen 3x3-Koordinatenkarten wie folgt:

1 2 3
4 5
6 7 8

Ziehkiste
Zeichnen Sie einen farbigen Kasten auf das Eingabebild.

Es akzeptiert die folgenden Parameter:

x
y Die Ausdrücke, die die Koordinaten der oberen linken Ecke der Box angeben. Es ist standardmäßig
um 0.

Breite, w
Höhe, h
Die Ausdrücke, die die Breite und Höhe der Box angeben; wenn 0 sind sie
als eingegebene Breite und Höhe interpretiert. Es ist standardmäßig 0.

Farbe, Farbe, c
Geben Sie die Farbe des zu schreibenden Felds an. Die allgemeine Syntax dieser Option finden Sie unter
den Abschnitt "Farbe" im ffmpeg-utils-Handbuch. Wird der Sonderwert "invertieren" verwendet,
die Farbe der Boxkante ist die gleiche wie beim Video mit invertierter Luma.

Dicke, t
Der Ausdruck, der die Dicke der Boxkante festlegt. Der Standardwert ist 3.

Unten finden Sie die Liste der akzeptierten Konstanten.

Die Parameter für x, y, w und h und t sind Ausdrücke, die die folgenden Konstanten enthalten:

geben Das Seitenverhältnis der Eingabeanzeige ist dasselbe wie (w / h) * sar.

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

in_h, ih
in_w, iw
Die Eingabebreite und -höhe.

sar Das Seitenverhältnis des Eingabebeispiels.

x
y Die x- und y-Offset-Koordinaten, an denen die Box gezeichnet wird.

w
h Die Breite und Höhe des gezeichneten Felds.

t Die Dicke der gezeichneten Box.

Diese Konstanten erlauben die x, y, w, h und t Ausdrücke, um sich aufeinander zu beziehen, damit Sie
kann beispielsweise "y=x/dar" oder "h=w/dar" angeben.

Beispiele

· Zeichnen Sie einen schwarzen Kasten um den Rand des Eingabebildes:

Ziehkiste

· Zeichnen Sie eine Box mit der Farbe Rot und einer Deckkraft von 50%:

Drawbox=10:20:200:60:[E-Mail geschützt]

Das vorherige Beispiel kann wie folgt spezifiziert werden:

drawbox=x=10:y=20:w=200:h=60:color=[E-Mail geschützt]

· Füllen Sie die Box mit rosa Farbe:

drawbox=x=10:y=10:w=100:h=100:color=[E-Mail geschützt] :t=max

· Zeichnen Sie eine rote 2:2.40-Maske mit 1 Pixeln:

drawbox=x=-t:y=0.5*(ih-iw/2.4)-t:w=iw+t*2:h=iw/2.4+t*2:t=2:c=red

Zeichnungsgrafik, adrawgraph
Zeichnen Sie ein Diagramm mit eingegebenen Video- oder Audio-Metadaten.

Es akzeptiert die folgenden Parameter:

m1 Legen Sie den Metadatenschlüssel für den ersten Frame fest, aus dem Metadatenwerte zum Zeichnen eines Diagramms verwendet werden.

fg1 1. Vordergrundfarbe festlegen.

m2 Legen Sie den Metadatenschlüssel für den zweiten Frame fest, aus dem Metadatenwerte zum Zeichnen eines Diagramms verwendet werden.

fg2 2. Vordergrundfarbe festlegen.

m3 Legen Sie den Metadatenschlüssel für den 3. Frame fest, aus dem Metadatenwerte zum Zeichnen eines Diagramms verwendet werden.

fg3 3. Vordergrundfarbe festlegen.

m4 Legen Sie den Metadatenschlüssel für den vierten Frame fest, aus dem Metadatenwerte zum Zeichnen eines Diagramms verwendet werden.

fg4 4. Vordergrundfarbe festlegen.

Min. Legen Sie den minimalen Wert des Metadatenwerts fest.

max Legen Sie den maximalen Wert des Metadatenwerts fest.

bg Legen Sie die Hintergrundfarbe des Diagramms fest. Standard ist weiß.

Modus
Grafikmodus einstellen.

Verfügbare Werte für den Modus sind:

Bar
Punkt
Linie

Standard ist "Linie".

Schlitten
Stellen Sie den Folienmodus ein.

Verfügbare Werte für die Folie sind:

Rahmen
Zeichnen Sie einen neuen Rahmen, wenn der rechte Rand erreicht ist.

ersetzen
Ersetzen Sie alte Spalten durch neue.

blättern
Scrollen Sie von rechts nach links.

rblättern
Scrollen Sie von links nach rechts.

Standard ist "Rahmen".

Größe
Legen Sie die Größe des Grafikvideos fest. Die Syntax dieser Option finden Sie im "Video Größe" Abschnitt
in ffmpeg-utils manuell. Der Standardwert ist "900x256".

Die Vordergrundfarbausdrücke können die folgenden Variablen verwenden:

MIN Minimaler Wert des Metadatenwerts.

MAX Maximalwert des Metadatenwerts.

VAL Aktueller Metadatenschlüsselwert.

Die Farbe ist als 0xAABBGGRR definiert.

Beispiel mit Metadaten von Signalstatistiken Filter:

signalstats,drawgraph=lavfi.signalstats.YAVG:min=0:max=255

Beispiel mit Metadaten von ebur128 Filter:

ebur128=metadata=1,adrawgraph=lavfi.r128.M:min=-120:max=5

Zuggitter
Zeichnen Sie ein Raster auf das Eingabebild.

Es akzeptiert die folgenden Parameter:

x
y Die Ausdrücke, die die Koordinaten eines Gitterschnittpunkts angeben
(zur Konfiguration des Offsets). Beide sind standardmäßig auf 0 eingestellt.

Breite, w
Höhe, h
Die Ausdrücke, die die Breite und Höhe der Gitterzelle angeben, wenn sie 0 sind, sind sie
interpretiert als eingegebene Breite bzw. Höhe minus "Dicke", also Bild
wird eingerahmt. Standardmäßig auf 0.

Farbe, Farbe, c
Geben Sie die Farbe des Rasters an. Die allgemeine Syntax dieser Option finden Sie im
Abschnitt "Farbe" im ffmpeg-utils-Handbuch. Wird der Sonderwert "invertieren" verwendet, ist die
Die Rasterfarbe ist die gleiche wie beim Video mit invertierter Luma.

Dicke, t
Der Ausdruck, der die Dicke der Rasterlinie festlegt. Der Standardwert ist 1.

Unten finden Sie die Liste der akzeptierten Konstanten.

Die Parameter für x, y, w und h und t sind Ausdrücke, die die folgenden Konstanten enthalten:

geben Das Seitenverhältnis der Eingabeanzeige ist dasselbe wie (w / h) * sar.

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

in_h, ih
in_w, iw
Die Breite und Höhe der Eingabegitterzelle.

sar Das Seitenverhältnis des Eingabebeispiels.

x
y Die x- und y-Koordinaten eines Gitterschnittpunkts (zur Konfiguration
versetzt).

w
h Die Breite und Höhe der gezeichneten Zelle.

t Die Dicke der gezeichneten Zelle.

Diese Konstanten erlauben die x, y, w, h und t Ausdrücke, um sich aufeinander zu beziehen, damit Sie
kann beispielsweise "y=x/dar" oder "h=w/dar" angeben.

Beispiele

· Zeichnen Sie ein Gitter mit Zelle 100x100 Pixel, Dicke 2 Pixel, mit Farbe Rot und An
Opazität von 50%:

Drawgrid=Breite=100:Höhe=100:Dicke=2:Farbe=[E-Mail geschützt]

· Zeichnen Sie ein weißes 3x3-Raster mit einer Deckkraft von 50%:

drawgrid=w=iw/3:h=ih/3:t=2:c=[E-Mail geschützt]

Zeichentext
Zeichnen Sie eine Textzeichenfolge oder einen Text aus einer angegebenen Datei über ein Video mit dem libfreetype
Bibliothek.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit konfigurieren
"--enable-libfreetype". So aktivieren Sie den Standardfont-Fallback und die Schriftart Option, die du brauchst
konfigurieren Sie FFmpeg mit "--enable-libfontconfig". Um das zu aktivieren text_shaping Option, du
muss FFmpeg mit "--enable-libfribidi" konfigurieren.

Syntax

Es akzeptiert die folgenden Parameter:

Box Wird verwendet, um mit der Hintergrundfarbe einen Rahmen um den Text zu zeichnen. Der Wert muss entweder 1 . sein
(aktivieren) oder 0 (deaktivieren). Der Standardwert von Box ist 0.

Kastenrandw
Stellen Sie die Breite des Rahmens ein, der um die Box gezogen werden soll mit Boxfarbe. Der Standard
Wert von Kastenrandw ist 0.

Boxfarbe
Die Farbe, die zum Zeichnen eines Rahmens um den Text verwendet werden soll. Die Syntax dieser Option finden Sie unter
den Abschnitt "Farbe" im ffmpeg-utils-Handbuch.

Der Standardwert von Boxfarbe ist weiß".

Borderw
Stellen Sie mit die Breite des um den Text zu zeichnenden Rahmens ein Randfarbedem „Vermischten Geschmack“. Seine
Standardwert von Borderw ist 0.

Randfarbe
Legen Sie die Farbe fest, die zum Zeichnen eines Rahmens um den Text verwendet werden soll. Für die Syntax davon
Option finden Sie im Abschnitt "Farbe" im Handbuch zu ffmpeg-utils.

Der Standardwert von Randfarbe ist schwarz".

Expansion
Wählen Sie aus, wie die Text wird erweitert. Kann entweder "none", "strftime" (veraltet) oder . sein
"normal" (Standard). Siehe die drawtext_expansion, Text Expansion Abschnitt unten für
Details.

fix_bounds
Wenn wahr, überprüfen und korrigieren Sie die Textkoordinaten, um ein Abschneiden zu vermeiden.

Schriftfarbe
Die Farbe, die zum Zeichnen von Schriftarten verwendet werden soll. Die Syntax dieser Option finden Sie im
Abschnitt "Farbe" im ffmpeg-utils-Handbuch.

Der Standardwert von Schriftfarbe ist schwarz".

Fontcolor_expr
String, der genauso erweitert wird wie Text um Dynamik zu erhalten Schriftfarbe Wert. Durch
Standardmäßig hat diese Option einen leeren Wert und wird nicht verarbeitet. Wenn diese Option eingestellt ist, ist es
Überschreibungen Schriftfarbe .

Schriftart
Die zum Zeichnen von Text zu verwendende Schriftfamilie. Standardmäßig Sans.

Schriftdatei
Die Schriftartdatei, die zum Zeichnen von Text verwendet werden soll. Der Pfad muss angegeben werden. Dieser Parameter
ist obligatorisch, wenn die fontconfig-Unterstützung deaktiviert ist.

zeichnen
Diese Option existiert nicht, bitte beachten Sie das Zeitleistensystem

Alpha
Zeichnen Sie den Text mit Alpha-Blending. Der Wert kann entweder eine Zahl zwischen 0.0
und 1.0 Der Ausdruck akzeptiert die gleichen Variablen x, y tun. Der Standardwert ist 1.
Siehe fontcolor_expr

Schriftgröße
Die zum Zeichnen von Text zu verwendende Schriftgröße. Der Standardwert von Schriftgröße ist 16.

text_shaping
Wenn der Wert auf 1 gesetzt ist, versuchen Sie, den Text zu formen (umkehren Sie beispielsweise die Reihenfolge von rechts nach rechts).
linken Text und verbinden arabische Zeichen), bevor Sie ihn zeichnen. Ansonsten zeichne einfach die
Text genau wie angegeben. Standardmäßig 1 (sofern unterstützt).

ft_load_flags
Die Flags, die zum Laden der Schriftarten verwendet werden sollen.

Die Flags bilden die entsprechenden Flags ab, die von libfreetype unterstützt werden, und sind eine Kombination
der folgenden Werte:

Standard
no_scale
kein_hinting
Ausbeute
no_bitmap
vertikales_layout
force_autohint
Crop_Bitmap
pedantisch
ignore_global_advance_width
no_recurse
ignorieren_transformieren
monochrom
lineares_design
no_autohint

Der Standardwert ist "Standard".

Weitere Informationen finden Sie in der Dokumentation zu den FT_LOAD_* libfreetype-Flags.

Schattenfarbe
Die Farbe, die zum Zeichnen eines Schattens hinter dem gezeichneten Text verwendet werden soll. Für die Syntax von
Überprüfen Sie diese Option im Abschnitt "Farbe" im Handbuch zu ffmpeg-utils.

Der Standardwert von Schattenfarbe ist schwarz".

Schattenx
schattig
Die x- und y-Offsets für die Textschattenposition in Bezug auf die Position des
Text. Sie können entweder positive oder negative Werte sein. Der Standardwert für beide ist
"0".

Startnummer
Die Startbildnummer für die Variable n/frame_num. Der Standardwert ist "0".

Tabgröße
Die Größe in Anzahl der Leerzeichen, die zum Rendern der Registerkarte verwendet werden soll. Der Standardwert ist 4.

Timecode
Stellen Sie die anfängliche Timecode-Darstellung im Format "hh:mm:ss[:;.]ff" ein. Es kann benutzt werden
mit oder ohne Textparameter. timecode_rate Option muss angegeben werden.

timecode_rate, Bewertung, r
Stellen Sie die Timecode-Bildrate ein (nur Timecode).

Text
Die zu zeichnende Textzeichenfolge. Der Text muss eine Folge von UTF-8-codierten Zeichen sein.
Dieser Parameter ist obligatorisch, wenn keine Datei mit dem Parameter angegeben wird Textdatei.

Textdatei
Eine Textdatei, die zu zeichnenden Text enthält. Der Text muss eine Sequenz von UTF-8-kodiert sein
Zeichen.

Dieser Parameter ist obligatorisch, wenn beim Parameter kein Textstring angegeben wird Text.

Wenn beides Text und Textdatei angegeben sind, wird ein Fehler ausgegeben.

neu laden
Wenn auf 1 gesetzt, wird die Textdatei wird vor jedem Frame neu geladen. Aktualisieren Sie es unbedingt
atomar, oder es kann teilweise gelesen werden oder sogar fehlschlagen.

x
y Die Ausdrücke, die die Versätze angeben, an denen Text innerhalb des Videos gezeichnet wird
Rahmen. Sie sind relativ zum oberen/linken Rand des Ausgabebilds.

Der Standardwert von x und y ist "0".

Nachfolgend finden Sie die Liste der akzeptierten Konstanten und Funktionen.

Die Parameter für x und y sind Ausdrücke mit den folgenden Konstanten und
Funktionen:

geben das Seitenverhältnis der Eingabeanzeige ist dasselbe wie (w / h) * sar

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

Zeile_h, lh
die Höhe jeder Textzeile

main_h, h, H
die Eingabehöhe

main_w, w, W
die Eingabebreite

max_glyph_a, Aufstieg
der maximale Abstand von der Grundlinie zur höchsten/oberen Gitterkoordinate, die verwendet wird, um
Platzieren Sie einen Glyphen-Umrisspunkt für alle gerenderten Glyphen. Es ist ein positiver Wert, wegen
zur Ausrichtung des Rasters mit der Y-Achse nach oben.

max_glyph_d, Abstammung
der maximale Abstand von der Grundlinie zur niedrigsten Gitterkoordinate, die verwendet wird, um a . zu platzieren
Glyphenumrisspunkt für alle gerenderten Glyphen. Dies ist ein negativer Wert, da
die Ausrichtung des Rasters, mit der Y-Achse nach oben.

max_glyph_h
maximale Glyphenhöhe, das ist die maximale Höhe für alle Glyphen, die im
gerenderten Text ist äquivalent zu Aufstieg - Abstammung.

max_glyph_w
maximale Glyphenbreite, das ist die maximale Breite für alle Glyphen, die im
gerenderter Text

n die Anzahl der Eingaberahmen, beginnend bei 0

Rand(min, max)
Gib eine Zufallszahl zwischen zurück Min. und max

sar Das Seitenverhältnis des Eingabebeispiels.

t Zeitstempel in Sekunden ausgedrückt, NAN, wenn der Eingabezeitstempel unbekannt ist

text_h, th
die Höhe des gerenderten Textes

text_w, tw
die Breite des gerenderten Textes

x
y die x- und y-Offset-Koordinaten, an denen der Text gezeichnet wird.

Diese Parameter ermöglichen die x und y Ausdrücke, um aufeinander zu verweisen, damit Sie für
Beispiel "y=x/dar" angeben.

Text Expansion

If Expansion auf "strftime" eingestellt ist, erkennt der Filter strftime () Sequenzen in der
bereitgestellten Text und erweitert diese entsprechend. Überprüfen Sie die Dokumentation von strftime (). Dies
Funktion ist veraltet.

If Expansion auf "none" gesetzt ist, wird der Text wörtlich ausgedruckt.

If Expansion auf "normal" gesetzt ist (was die Standardeinstellung ist), der folgende Erweiterungsmechanismus
wird eingesetzt.

Das Backslash-Zeichen \, gefolgt von einem beliebigen Zeichen, wird immer auf die Sekunde erweitert
Charakter.

Sequenz der Form "%{...}" werden expandiert. Der Text zwischen den Klammern ist eine Funktion
Name, möglicherweise gefolgt von durch ':' getrennten Argumenten. Wenn die Argumente special enthalten
Zeichen oder Trennzeichen (':' oder '}'), sollten sie mit Escapezeichen versehen werden.

Beachten Sie, dass sie wahrscheinlich auch als Wert für die maskiert werden müssen Text Option in der
Filterargument-String und als Filterargument in der Filtergraph-Beschreibung und
möglicherweise auch für die Hülle, die bis zu vier Fluchtstufen ausmacht; mit einer Textdatei
vermeidet diese Probleme.

Folgende Funktionen stehen zur Verfügung:

Ausdruck, e
Das Ergebnis der Ausdrucksbewertung.

Es muss ein Argument annehmen, das den auszuwertenden Ausdruck angibt, der die
gleiche Konstanten und Funktionen wie die x und y Werte. Beachten Sie, dass nicht alle Konstanten
verwendet werden, zum Beispiel ist die Textgröße bei der Auswertung des Ausdrucks nicht bekannt, so dass die
konstante text_w und text_h einen undefinierten Wert haben.

expr_int_format, wenn
Werten Sie den Wert des Ausdrucks aus und geben Sie ihn als formatierte Ganzzahl aus.

Das erste Argument ist der auszuwertende Ausdruck, ebenso wie für die ausdr Funktion.
Das zweite Argument gibt das Ausgabeformat an. Zulässige Werte sind x, X, d und u.
Sie werden genau wie in der Funktion "printf" behandelt. Der dritte Parameter ist optional
und legt die Anzahl der Positionen fest, die der Ausgang einnimmt. Es kann verwendet werden, um Polsterungen hinzuzufügen
mit Nullen von links.

gmtime
Die Zeit, zu der der Filter ausgeführt wird, ausgedrückt in UTC. Es kann ein Argument akzeptieren:
a strftime () Zeichenfolgenformat.

Ortszeit
Die Zeit, zu der der Filter ausgeführt wird, ausgedrückt in der lokalen Zeitzone. Es kann
akzeptiere ein Argument: a strftime () Zeichenfolgenformat.

Metadaten
Frame-Metadaten. Es muss ein Argument annehmen, das den Metadatenschlüssel angibt.

n, Frame_num
Die Rahmennummer, beginnend bei 0.

Bildtyp
Eine 1-stellige Beschreibung des aktuellen Bildtyps.

pts Der Zeitstempel des aktuellen Frames. Es kann bis zu zwei Argumente aufnehmen.

Das erste Argument ist das Format des Zeitstempels; es ist standardmäßig "flt" für Sekunden als
eine Dezimalzahl mit Mikrosekundengenauigkeit; "hms" steht für ein formatiertes
[-]HH:MM:SS.mmm Zeitstempel mit Millisekunden-Genauigkeit.

Das zweite Argument ist ein Offset, der dem Zeitstempel hinzugefügt wird.

Beispiele

· Zeichnen Sie "Testtext" mit der Schriftart FreeSerif und verwenden Sie die Standardwerte für das optionale
Parameter.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Testtext'"

· Zeichnen Sie 'Testtext' mit Schriftart FreeSerif der Größe 24 an Position x=100 und y=50 (Zählen
von der oberen linken Ecke des Bildschirms) ist der Text gelb mit einem roten Rahmen um ihn herum. Beide
Text und Rahmen haben eine Deckkraft von 20 %.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Testtext':\
x=100: y=50: Schriftgröße=24: Schriftfarbe=[E-Mail geschützt] : box=1: boxfarbe=[E-Mail geschützt] "

Beachten Sie, dass die doppelten Anführungszeichen nicht erforderlich sind, wenn innerhalb des keine Leerzeichen verwendet werden
Parameterliste.

· Zeigen Sie den Text in der Mitte des Videorahmens an:

drawtext="fontsize=30:fontfile=FreeSerif.ttf:text='Hallo Welt':x=(w-text_w)/2:y=(h-text_h)/2"

· Zeigen Sie in der letzten Zeile des Videoframes eine Textzeile an, die von rechts nach links gleitet. Der
Datei LANGE LINIE Es wird angenommen, dass es eine einzelne Zeile ohne Zeilenumbrüche enthält.

drawtext="fontsize=15:fontfile=FreeSerif.ttf:text=LONG_LINE:y=h-line_h:x=-50*t"

· Zeigen Sie den Inhalt der Datei an CREDITS unten aus dem Rahmen und scrollen Sie nach oben.

drawtext="fontsize=20:fontfile=FreeSerif.ttf:textfile=CREDITS:y=h-20*t"

· Zeichnen Sie einen einzelnen grünen Buchstaben "g" in die Mitte des Eingangsvideos. Die Glyphen-Grundlinie
wird auf halber Bildschirmhöhe platziert.

drawtext="fontsize=60:fontfile=FreeSerif.ttf:fontcolor=green:text=g:x=(w-max_glyph_w)/2:y=h/2-Aufstieg"

· Text alle 1 Sekunden für 3 Sekunde anzeigen:

drawtext="fontfile=FreeSerif.ttf:fontcolor=white:x=100:y=x/dar:enable=lt(mod(t\,3)\,1):text='blink'"

· Verwenden Sie fontconfig, um die Schriftart einzustellen. Beachten Sie, dass die Doppelpunkte mit Escapezeichen versehen werden müssen.

drawtext='fontfile=Linux Libertine O-40\:style=Semibold:text=FFmpeg'

· Drucken Sie das Datum einer Echtzeit-Kodierung (siehe strftime(3)):

drawtext='fontfile=FreeSans.ttf:text=%{localtime\:%a %b %d %Y}'

· Ein- und Ausblenden von Text anzeigen (erscheinen/verschwinden):

#!/ Bin / sh
DS=1.0 # Anzeigestart
DE=10.0 # Anzeigeende
FID=1.5 # Einblenddauer
FOD=5 # Ausblenddauer
ffplay -f lavfi "color,drawtext=text=TEST:fontsize=50:fontfile=FreeSerif.ttf:fontcolor_expr=ff0000%{eif\\\\: clip(255*(1* between(t\\, $DS + $FID\\, $DE - $FOD) + ((t - $DS)/$FID)*zwischen(t\\, $DS\\, $DS + $FID) + (-(t - $DE) /$FOD)*zwischen(t\\, $DE - $FOD\\, $DE) )\\, 0\\, 255) \\\\: x\\\\: 2 }"

Weitere Informationen zu libfreetype finden Sie unter:http://www.freetype.org/>.

Weitere Informationen zu fontconfig finden Sie unter:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

Weitere Informationen zu libfribidi finden Sie unter:http://fribidi.org/>.

Kantenerkennung
Kanten erkennen und zeichnen. Der Filter verwendet den Canny Edge Detection-Algorithmus.

Der Filter akzeptiert die folgenden Optionen:

niedrig
Highs
Legen Sie niedrige und hohe Schwellenwerte fest, die vom Canny-Schwellenwert-Algorithmus verwendet werden.

Die hohe Schwelle wählt die "starken" Kantenpixel aus, die dann durchgeschaltet werden
8-Konnektivität mit den "schwachen" Kantenpixeln, die durch den niedrigen Schwellenwert ausgewählt werden.

niedrig und Highs Schwellenwerte müssen im Bereich [0,1] gewählt werden, und niedrig sollte sein
kleiner oder gleich Highs.

Standardwert für niedrig ist "20/255" und Standardwert für Highs ist "50/255".

Modus
Definieren Sie den Zeichenmodus.

Drähte
Zeichnen Sie weiße/graue Drähte auf schwarzem Hintergrund.

Colormix
Mischen Sie die Farben, um einen Farb-/Cartoon-Effekt zu erzielen.

Standardwert ist Drähte.

Beispiele

· Standard-Flankenerkennung mit benutzerdefinierten Werten für die Hysterese-Schwelle:

Kantenerkennung=niedrig=0.1:hoch=0.4

· Maleffekt ohne Schwellen:

edgedetect=mode=colormix:high=0

eq
Stellen Sie Helligkeit, Kontrast, Sättigung und ungefähre Gamma-Anpassung ein.

Der Filter akzeptiert die folgenden Optionen:

Kontrast
Stellen Sie den Kontrastausdruck ein. Der Wert muss ein Gleitkommawert im Bereich "-2.0" bis 2.0 sein.
Der Standardwert ist "0".

Helligkeit
Stellen Sie den Helligkeitsausdruck ein. Der Wert muss ein Gleitkommawert im Bereich "-1.0" bis 1.0 sein.
Der Standardwert ist "0".

Sättigung
Stellen Sie den Sättigungsausdruck ein. Der Wert muss ein Float im Bereich von 0.0 bis 3.0 sein. Der
Standardwert ist "1".

Gamma
Stellen Sie den Gamma-Ausdruck ein. Der Wert muss ein Float im Bereich von 0.1 bis 10.0 sein. Der Standard
Wert ist "1".

gamma_r
Stellen Sie den Gamma-Ausdruck für Rot ein. Der Wert muss ein Float im Bereich von 0.1 bis 10.0 sein. Der
Standardwert ist "1".

gamma_g
Legen Sie den Gamma-Ausdruck für Grün fest. Der Wert muss ein Float im Bereich von 0.1 bis 10.0 sein.
Der Standardwert ist "1".

gamma_b
Legen Sie den Gamma-Ausdruck für Blau fest. Der Wert muss ein Float im Bereich von 0.1 bis 10.0 sein. Der
Standardwert ist "1".

gamma_gewicht
Legen Sie den Gamma-Gewichtungsausdruck fest. Es kann verwendet werden, um die Wirkung eines hohen Gamma zu reduzieren
Wert auf helle Bildbereiche, z. B. verhindern, dass sie zu stark verstärkt werden und einfach nur klar
Weiß. Der Wert muss ein Float im Bereich von 0.0 bis 1.0 sein. Ein Wert von 0.0 dreht das Gamma
Korrektur ganz nach unten, während 1.0 seine volle Stärke belässt. Der Standardwert ist "1".

eval
Stellen Sie ein, wenn die Ausdrücke für Helligkeit, Kontrast, Sättigung und Gamma-Ausdrücke
bewertet werden.

Es akzeptiert die folgenden Werte:

init
werte Ausdrücke nur einmal während der Filterinitialisierung aus oder wenn ein Befehl
wird verarbeitet

Rahmen
werte Ausdrücke für jeden eingehenden Frame aus

Standardwert ist init.

Die Ausdrücke akzeptieren die folgenden Parameter:

n Frameanzahl des Eingabeframes beginnend bei 0

Post Byte-Position des entsprechenden Pakets in der Eingabedatei, NAN wenn nicht angegeben

r Bildrate des Eingangsvideos, NAN, wenn die Eingangsbildrate unbekannt ist

t Zeitstempel in Sekunden ausgedrückt, NAN, wenn der Eingabezeitstempel unbekannt ist

Befehle

Der Filter unterstützt die folgenden Befehle:

Kontrast
Stellen Sie den Kontrastausdruck ein.

Helligkeit
Stellen Sie den Helligkeitsausdruck ein.

Sättigung
Stellen Sie den Sättigungsausdruck ein.

Gamma
Stellen Sie den Gamma-Ausdruck ein.

gamma_r
Legen Sie den gamma_r-Ausdruck fest.

gamma_g
Gamma_g-Ausdruck festlegen.

gamma_b
gamma_b-Ausdruck festlegen.

gamma_gewicht
Gamma_weight-Ausdruck festlegen.

Der Befehl akzeptiert dieselbe Syntax wie die entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

Erosion
Wenden Sie den Erosionseffekt auf das Video an.

Dieser Filter ersetzt das Pixel durch das aus einer regionalen(3x3) mindestens.

Es akzeptiert die folgenden Optionen:

Schwelle0
Schwelle1
Schwelle2
Schwelle3
Begrenzen Sie die maximale Änderung für jede Ebene, der Standardwert ist 65535. Bei 0 bleibt die Ebene bestehen
unverändert.

Koordinaten
Flag, das das Pixel angibt, auf das verwiesen werden soll. Der Standardwert ist 255, dh alle acht Pixel sind
benutzt.

Flaggen zu lokalen 3x3-Koordinatenkarten wie folgt:

1 2 3
4 5
6 7 8

Extraktionsflugzeuge
Extrahieren Sie Farbkanalkomponenten aus dem Eingangsvideostream in ein separates Graustufenvideo
Bächen.

Der Filter akzeptiert die folgende Option:

Flugzeuge
Legen Sie die zu extrahierende(n) Ebene(n) fest.

Verfügbare Werte für Flugzeuge sind:

y
u
v
a
r
g
b

Die Auswahl von Ebenen, die in der Eingabe nicht verfügbar sind, führt zu einem Fehler. Das heißt du
Die Ebenen "r", "g", "b" und "y", "u", "v" können nicht gleichzeitig ausgewählt werden.

Beispiele

· Extrahieren Sie die Luma-, u- und v-Farbkanalkomponente aus dem Eingangsvideoframe in 3 Graustufen
Ausgänge:

ffmpeg -i video.avi -filter_complex 'extractplanes=y+u+v[y][u][v]' -map '[y]' y.avi -map '[u]' u.avi -map '[ v]' v.avi

elbg
Wenden Sie einen Posterize-Effekt mit dem ELBG-Algorithmus (Enhanced LBG) an.

Für jedes Eingabebild berechnet der Filter die optimale Zuordnung von der Eingabe zu den
Ausgabe bei gegebener Codebuchlänge, d. h. der Anzahl der unterschiedlichen Ausgabefarben.

Dieser Filter akzeptiert die folgenden Optionen.

Codebuch_Länge, l
Codebuchlänge einstellen. Der Wert muss eine positive ganze Zahl sein und stellt die Zahl dar
von unterschiedlichen Ausgabefarben. Der Standardwert ist 256.

nb_schritte, n
Legen Sie die maximale Anzahl von Iterationen fest, die für die Berechnung der optimalen Zuordnung angewendet werden sollen. Der
Je höher der Wert, desto besser das Ergebnis und desto höher die Rechenzeit. Standard
Wert ist 1.

Samen, s
Setzt einen zufälligen Seed, muss eine ganze Zahl zwischen 0 und UINT32_MAX sein. Wenn nicht
angegeben oder wenn explizit auf -1 gesetzt, versucht der Filter, einen guten zufälligen Startwert zu verwenden
auf Best-Effort-Basis.

pal8
Legen Sie das Ausgabepixelformat von pal8 fest. Diese Option funktioniert nicht mit einer Codebuchlänge größer
als 256.

verblassen
Wenden Sie einen Ein-/Ausblendeffekt auf das Eingangsvideo an.

Es akzeptiert die folgenden Parameter:

Art, t
Der Effekttyp kann entweder "in" für einen Fade-In oder "Out" für einen Fade-Out-Effekt sein.
Standard ist "in".

start_frame, s
Geben Sie die Nummer des Frames an, bei dem der Fade-Effekt angewendet werden soll. Standard ist 0.

nb_frames, n
Die Anzahl der Frames, die der Fade-Effekt andauert. Am Ende des Einblendeffekts wird der
Das Ausgabevideo hat die gleiche Intensität wie das Eingabevideo. Am Ende des Fade-
Out-Übergang wird das Ausgabevideo mit dem ausgewählten gefüllt Farbe. Standard ist
25

Alpha
Wenn auf 1 gesetzt, blendet nur der Alphakanal ein, falls einer am Eingang vorhanden ist. Der Standardwert ist 0.

Startzeit, st
Geben Sie den Zeitstempel (in Sekunden) des Frames an, um mit der Anwendung des Fade-Effekts zu beginnen. Wenn
sowohl start_frame als auch start_time sind angegeben, die Überblendung beginnt wann immer es kommt
zuletzt. Standard ist 0.

Dauer, d
Die Anzahl der Sekunden, die der Fade-Effekt andauern muss. Am Ende der Einblendung
Effekt hat das Ausgabevideo die gleiche Intensität wie das Eingabevideo am Ende von
der Fade-Out-Übergang das Ausgabevideo wird mit dem ausgewählten gefüllt Farbe. Wenn
Sowohl die Dauer als auch nb_frames werden angegeben, die Dauer wird verwendet. Standard ist 0 (nb_frames
wird standardmäßig verwendet).

Farbe, Farbe, c
Geben Sie die Farbe der Überblendung an. Standard ist "schwarz".

Beispiele

· Blenden Sie die ersten 30 Frames des Videos ein:

einblenden=in:0:30

Der obige Befehl ist äquivalent zu:

Fade=t=in:s=0:n=30

· Blenden Sie die letzten 45 Frames eines 200-Frame-Videos aus:

ausblenden=aus:155:45
fade=type=out:start_frame=155:nb_frames=45

· Einblenden der ersten 25 Frames und Ausblenden der letzten 25 Frames eines 1000-Frame-Videos:

Fade=in:0:25, Fade=out:975:25

· Machen Sie die ersten 5 Frames gelb und blenden Sie dann von Frame 5-24 ein:

Einblenden=in:5:20:Farbe=Gelb

· Alpha über die ersten 25 Frames des Videos einblenden:

einblenden=in:0:25:alpha=1

· Die ersten 5.5 Sekunden schwarz machen, dann 0.5 Sekunden einblenden:

Fade=t=in:st=5.5:d=0.5

fftfilt
Wenden Sie beliebige Ausdrücke auf Samples im Frequenzbereich an

dc_Y
Passen Sie den DC-Wert (Verstärkung) der Luma-Ebene des Bildes an. Der Filter akzeptiert ein
ganzzahliger Wert im Bereich von 0 bis 1000. Der Standardwert ist 0.

dc_U
Passen Sie den DC-Wert (Gain) der 1. Chroma-Ebene des Bildes an. Der Filter akzeptiert ein
ganzzahliger Wert im Bereich von 0 bis 1000. Der Standardwert ist 0.

dc_V
Passen Sie den DC-Wert (Gain) der 2. Chroma-Ebene des Bildes an. Der Filter akzeptiert ein
ganzzahliger Wert im Bereich von 0 bis 1000. Der Standardwert ist 0.

gewichtig
Legen Sie den Gewichtungsausdruck im Frequenzbereich für die Luma-Ebene fest.

Gewicht_U
Legen Sie den Gewichtungsausdruck im Frequenzbereich für die 1. Chroma-Ebene fest.

Gewicht_V
Stellen Sie den Gewichtungsausdruck im Frequenzbereich für die 2. Chroma-Ebene ein.

Der Filter akzeptiert die folgenden Variablen:

X
Y Die Koordinaten des aktuellen Samples.

W
H Die Breite und Höhe des Bildes.

Beispiele

· Hochpass:

fftfilt=dc_Y=128:weight_Y='squish(1-(Y+X)/100)'

· Tiefpass:

fftfilt=dc_Y=0:weight_Y='squish((Y+X)/100-1)'

· Schärfen:

fftfilt=dc_Y=0:weight_Y='1+squish(1-(Y+X)/100)'

Feld
Extrahieren Sie ein einzelnes Halbbild aus einem Zeilensprungbild mit Schrittarithmetik, um Verschwendung zu vermeiden
CPU-Zeit. Die Ausgabeframes werden als non-interlaced gekennzeichnet.

Der Filter akzeptiert die folgenden Optionen:

tippe
Geben Sie an, ob das obere (wenn der Wert 0 oder "top" ist) oder das untere Feld extrahiert werden soll
(wenn der Wert 1 oder "unten" ist).

Feldübereinstimmung
Feldanpassungsfilter für inverse Telecine. Es soll das Fortschrittliche rekonstruieren
Frames aus einem Telecined-Stream. Der Filter lässt keine duplizierten Frames fallen, um zu erreichen
einem vollständigen inversen Telecine-"Fieldmatch" muss ein Dezimationsfilter folgen, wie z
as dezimieren in der Filtergrafik.

Die Trennung von Feldanpassung und Dezimierung wird insbesondere durch die
Möglichkeit, einen De-Interlacing-Filter-Fallback zwischen den beiden einzufügen. Wenn die Quelle
hat Telecined- und Real-Interlaced-Inhalte gemischt, "fieldmatch" kann nicht übereinstimmen
Felder für die verschachtelten Teile. Aber diese verbleibenden gekämmten Rahmen werden als
interlaced und kann daher durch einen späteren Filter wie z. B. de-interlaced werden jadif Bevor
Dezimierung.

Neben den verschiedenen Konfigurationsmöglichkeiten kann "fieldmatch" eine optionale Sekunde dauern
Stream, aktiviert durch den ppsrc Möglichkeit. Wenn aktiviert, wird die Frame-Rekonstruktion
basierend auf den Feldern und Frames aus diesem zweiten Stream. Dies ermöglicht die erste Eingabe
vorverarbeitet, um die verschiedenen Algorithmen des Filters zu unterstützen, während die
verlustfreie Ausgabe (vorausgesetzt, die Felder sind richtig zugeordnet). Typischerweise ist ein feldbewusster
Denoiser oder Helligkeits-/Kontrastanpassungen können hilfreich sein.

Beachten Sie, dass dieser Filter die gleichen Algorithmen verwendet wie TIVTC/TFM (AviSynth-Projekt) und
VIVTC/VFM (VapourSynth-Projekt). Letzteres ist ein leichter Klon von TFM, aus dem "fieldmatch"
basiert auf. Obwohl Semantik und Verwendung sehr nah beieinander liegen, werden einige Verhaltens- und Optionsnamen
abweichen können.

Das dezimieren Filter funktioniert derzeit nur für die Eingabe mit konstanter Bildrate. Wenn Ihre Eingabe hat
gemischte telecined (30fps) und progressive Inhalte mit einer niedrigeren Framerate wie 24fps verwenden die
folgende Filterkette, um den notwendigen cfr-Stream zu erzeugen:
"dejudder,fps=30000/1001,fieldmatch,dezimieren".

Der Filter akzeptiert die folgenden Optionen:

Auftrag
Geben Sie die angenommene Feldreihenfolge des Eingabestreams an. Verfügbare Werte sind:

Auto
Parität automatisch erkennen (verwenden Sie den internen Paritätswert von FFmpeg).

bff Nehmen Sie zuerst das untere Feld an.

tff Nehmen Sie zuerst das obere Feld an.

Beachten Sie, dass manchmal empfohlen wird, der vom Stream angekündigten Parität nicht zu vertrauen.

Standardwert ist Auto.

Modus
Legen Sie den zu verwendenden Matching-Modus oder die zu verwendende Strategie fest. pc Modus ist der sicherste in dem Sinne, dass er
riskiert nach Möglichkeit kein Ruckeln durch doppelte Frames, aber wenn es welche gibt
Bei schlechten Bearbeitungen oder gemischten Feldern werden gekämmte Frames ausgegeben, wenn eine gute Übereinstimmung besteht
könnte es tatsächlich geben. Auf der anderen Seite, pcn_ub Modus ist der riskanteste in Bezug auf
erzeugt Ruckeln, findet aber fast immer einen guten Rahmen, wenn einer vorhanden ist. Der
andere Werte liegen alle dazwischen pc und pcn_ub in Bezug auf das Risiko von Ruckeln
und das Erstellen von doppelten Frames im Vergleich zum Finden guter Übereinstimmungen in Abschnitten mit schlechten Bearbeitungen,
verwaiste Felder, gemischte Felder usw.

Weitere Details zu p/c/n/u/b finden Sie in p/c/n/u/b Bedeutung .

Verfügbare Werte sind:

pc 2-Wege-Matching (p/c)

pc_n
2-Wege-Matching und drittes Match versuchen, wenn noch gekämmt (p/c + n)

pc_u
2-Wege-Matching und drittes Match (gleiche Reihenfolge) versuchen, wenn immer noch gekämmt (p/c + u)

pc_n_ub
2-Wege-Matching, 3. Match versuchen, wenn immer noch gekämmt, und 4./5. Match versuchen, wenn
noch gekämmt (p/c + n + u/b)

pcn 3-Wege-Matching (p/c/n)

pcn_ub
3-Wege-Matching und 4./5.-Matches versuchen, wenn alle 3 der Original-Matches sind
als gekämmt erkannt (p/c/n + u/b)

Die Klammern am Ende geben die Übereinstimmungen an, die für diesen Modus verwendet werden würden
angenommen Auftrag=tff (und Feld on Auto or Top).

In Sachen Geschwindigkeit pc Modus ist mit Abstand der schnellste und pcn_ub ist am langsamsten.

Standardwert ist pc_n.

ppsrc
Markieren Sie den Haupteingabestrom als vorverarbeitete Eingabe und aktivieren Sie die sekundäre Eingabe
stream als saubere Quelle für die Auswahl der Felder. Siehe die Filter-Einführung für
mehr Details. Es ist ähnlich wie die clip2 Funktion von VFM/TFM.

Der Standardwert ist 0 (deaktiviert).

Feld
Legen Sie das Feld fest, von dem abgeglichen werden soll. Es wird empfohlen, diesen auf den gleichen Wert einzustellen wie Auftrag
es sei denn, bei dieser Einstellung treten Übereinstimmungsfehler auf. Unter bestimmten Umständen
Das Ändern des Felds, das für die Übereinstimmung verwendet wird, kann einen großen Einfluss auf die Übereinstimmung haben
Leistung. Verfügbare Werte sind:

Auto
Automatisch (gleicher Wert wie Auftrag).

Boden
Match aus dem unteren Feld.

Top Match aus dem oberen Feld.

Standardwert ist Auto.

Chroma
Legen Sie fest, ob Chroma bei den Übereinstimmungsvergleichen berücksichtigt wird oder nicht. In den meisten Fällen ist es
Es wird empfohlen, dies aktiviert zu lassen. Sie sollten dies nur auf 0 setzen, wenn Ihr Clip über
schlechte Chroma-Probleme wie starkes Rainbowing oder andere Artefakte. Setzen Sie dies auf 0
könnte auch verwendet werden, um die Dinge auf Kosten einer gewissen Genauigkeit zu beschleunigen.

Der Standardwert ist 1.

y0
y1 Diese definieren ein Ausschlussband, das die Linien zwischen . ausschließt y0 und y1 vom Sein
in die Field Matching-Entscheidung einbezogen. Ein Ausschlussband kann verwendet werden, um zu ignorieren
Untertitel, ein Logo oder andere Dinge, die den Abgleich stören können. y0 setzt die
Scanlinie starten und y1 setzt die Endzeile; alle Zeilen dazwischen y0 und y1
(Einschließlich y0 und y1) wird ignoriert. Einstellung y0 und y1 auf den gleichen Wert wird
deaktivieren Sie die Funktion. y0 und y1 standardmäßig auf 0.

scthresh
Stellen Sie den Schwellenwert für die Erkennung von Szenenänderungen als Prozentsatz der maximalen Änderung der Leuchte ein
Flugzeug. Gute Werte liegen im Bereich "[8.0, 14.0]". Szenenwechselerkennung ist nur
relevant im Fall Kampfkampf=sc. Das Sortiment für scthresh ist "[0.0, 100.0]".

Der Standardwert ist 12.0.

Kampfkampf
Wann Combatch ist nicht keine, "fieldmatch" berücksichtigt die gekämmten Scores von
Übereinstimmungen bei der Entscheidung, welche Übereinstimmung als letzte Übereinstimmung verwendet werden soll. Verfügbare Werte sind:

keine
Kein abschließendes Matching basierend auf gekämmten Scores.

sc Gekämmte Scores werden nur verwendet, wenn ein Szenenwechsel erkannt wird.

voller
Verwenden Sie die ganze Zeit gekämmte Scores.

Standardeinstellung ist sc.

Kammdbg
Erzwinge "fieldmatch", um die gekämmten Metriken für bestimmte Übereinstimmungen zu berechnen und auszudrucken.
Diese Einstellung ist bekannt als Mikrofon im TFM/VFM-Vokabular. Verfügbare Werte sind:

keine
Keine Zwangsberechnung.

pcn P/c/n-Berechnungen erzwingen.

pcnub
Erzwinge p/c/n/u/b-Berechnungen.

Standardwert ist keine.

cthresch
Dies ist der Schwellenwert für die Bereichskämmung, der für die Erkennung von gekämmten Frames verwendet wird. Dies im Wesentlichen
steuert, wie "stark" oder "sichtbar" Kämmen sein muss, um erkannt zu werden. Größere Werte bedeuten
Kämmen muss besser sichtbar sein und kleinere Werte bedeuten, dass Kämmen weniger sichtbar sein kann oder
stark und noch zu erkennen. Gültige Einstellungen sind von "-1" (jedes Pixel wird
als gekämmt erkannt) bis 255 (kein Pixel wird als gekämmt erkannt). Dies ist im Grunde ein
Pixeldifferenzwert. Ein guter Bereich ist "[8, 12]".

Der Standardwert ist 9.

Chroma
Legt fest, ob Chroma bei der Entscheidung für gekämmte Frames berücksichtigt wird oder nicht. Nur deaktivieren
Dies, wenn Ihre Quelle Chroma-Probleme (Regenbogen usw.) hat, die Probleme verursachen
für die gekämmte Frame-Erkennung mit aktiviertem Chroma. Eigentlich mit Chroma=0 is
normalerweise zuverlässiger, außer in dem Fall, in dem Chroma nur in der
Quelle.

Der Standardwert ist 0.

blockx
blocky
Stellen Sie die X-Achsen- und Y-Achsen-Größe des Fensters ein, das während des gekämmten Frames verwendet wird
Erkennung. Das hat mit der Größe des Gebietes zu tun, in dem komb Pixel sind
muss als gekämmt erkannt werden, damit ein Frame als gekämmt deklariert werden kann. Siehe die komb
Parameterbeschreibung für weitere Informationen. Mögliche Werte sind eine beliebige Zahl, die eine Potenz ist
von 2 beginnend bei 4 bis 512.

Der Standardwert ist 16.

komb
Die Anzahl der gekämmten Pixel in einem der blocky by blockx Größenblöcke auf dem
Rahmen für den Rahmen, der als gekämmt erkannt werden soll. Während cthresch steuert, wie "sichtbar" die
Kämmen muss sein, diese Einstellung steuert, "wie viel" Kämmen in jedem enthalten sein muss
lokalisierter Bereich (ein Fenster, das durch die blockx und blocky Einstellungen) am Rahmen.
Der Mindestwert ist 0 und der Höchstwert ist "blocky x blockx" (an diesem Punkt werden keine Frames mehr angezeigt)
jemals als gekämmt erkannt werden). Diese Einstellung ist bekannt als MI im TFM/VFM-Vokabular.

Der Standardwert ist 80.

p/c/n/u/b Bedeutung

p/c/n

Wir nehmen den folgenden telecined Stream an:

Obere Felder: 1 2 2 3 4
Untere Felder: 1 2 3 4 4

Die Zahlen entsprechen dem progressiven Frame, auf den sich die Felder beziehen. Hier die ersten beiden
Frames sind progressiv, der 3. und der 4. sind gekämmt und so weiter.

Wenn "fieldmatch" so konfiguriert ist, dass ein Matching von unten ausgeführt wird (Feld=Boden) das ist wie
dieser Eingabestrom wird transformiert:

Eingabestrom:
T 1 2 2 3 4
B 1 2 3 4 4 <-- passende Referenz

Übereinstimmungen: ccnnc

Ausgabestrom:
T 1 2 3 4 4
B 1 2 3 4 4

Als Ergebnis des Feldabgleichs können wir sehen, dass einige Frames dupliziert werden. Aufführen
ein komplettes inverses Telecine, müssen Sie sich nach diesem Vorgang auf einen Dezimationsfilter verlassen.
Siehe zum Beispiel die dezimieren Filter.

Dieselbe Operation passt jetzt von den oberen Feldern (Feld=Top) sieht aus wie das:

Eingabestrom:
T 1 2 2 3 4 <-- passende Referenz
B 1 2 3 4 4

Übereinstimmungen: ccppc

Ausgabestrom:
T 1 2 2 3 4
B 1 2 2 3 4

In diesen Beispielen können wir sehen, was p, c und n bedeuten; im Grunde beziehen sie sich auf den Rahmen und
Feld der entgegengesetzten Parität:

*<p stimmt mit dem Feld der entgegengesetzten Parität im vorherigen Frame überein>
*<c stimmt mit dem Feld der entgegengesetzten Parität im aktuellen Frame überein>
*<n stimmt mit dem Feld der entgegengesetzten Parität im nächsten Frame überein>

u/b

Das u und b Matching sind insofern etwas Besonderes, als sie aus dem Gegenteil zusammenpassen
Paritätsflagge. In den folgenden Beispielen gehen wir davon aus, dass wir derzeit den 2.
Rahmen (oben:2, unten:2). Je nach Übereinstimmung wird jeweils ein 'x' darüber und darunter platziert
übereinstimmende Felder.

Mit Bodenanpassung (Feld=Boden):

Übereinstimmung: cpnbu

xxxxx
Oben 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Unten 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Ausgabeframes:
+2 1 2 2
+2 2 2 1

Mit Top-Matching (Feld=Top):

Übereinstimmung: cpnbu

xxxxx
Oben 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Unten 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Ausgabeframes:
+2 2 2 1
+2 1 3 2

Beispiele

Einfache IVTC eines Top-Field-First-Telecined-Streams:

fieldmatch=order=tff:combmatch=none, dezimieren

Erweiterte IVTC, mit Fallback aktiviert jadif für noch gekämmte Rahmen:

fieldmatch=order=tff:combmatch=full, yadif=deint=interlaced, dezimieren

Feldreihenfolge
Transformieren Sie die Halbbildreihenfolge des Eingabevideos.

Es akzeptiert die folgenden Parameter:

Auftrag
Die Ausgabefeldreihenfolge. Gültige Werte sind tff für oberes Feld zuerst oder bff für unten
Feld zuerst.

Der Standardwert ist tff.

Die Transformation erfolgt durch Verschieben des Bildinhalts um eine Zeile nach oben oder unten, und
Füllen Sie die verbleibende Zeile mit entsprechendem Bildinhalt. Diese Methode ist konsistent
mit den meisten Broadcast-Halbbildreihenfolgewandlern.

Wenn das Eingangsvideo nicht als interlaced gekennzeichnet ist oder bereits als interlaced gekennzeichnet ist
der erforderlichen Ausgabefeldreihenfolge, dann verändert dieser Filter das eingehende Video nicht.

Es ist sehr nützlich, wenn Sie in oder aus PAL-DV-Material konvertieren, bei dem das untere Halbbild zuerst angezeigt wird.

Beispielsweise:

ffmpeg -i in.vob -vf "fieldorder=bff" out.dv

Fifo
Puffern Sie Eingabebilder und senden Sie sie, wenn sie angefordert werden.

Es ist hauptsächlich nützlich, wenn es vom libavfilter-Framework automatisch eingefügt wird.

Es braucht keine Parameter.

find_rect
Finde ein rechteckiges Objekt

Es akzeptiert die folgenden Optionen:

Objekt
Dateipfad des Objektbilds, muss in grau sein8.

Schwelle
Erkennungsschwelle, Standard ist 0.5.

Mipmaps
Anzahl der Mipmaps, Standard ist 3.

xmin, Ymin, xmax, ymax
Gibt das Rechteck an, in dem gesucht werden soll.

Beispiele

· Erstellen Sie eine repräsentative Palette eines bestimmten Videos mit ffmpeg:

ffmpeg -i file.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

cover_rect
Bedecke ein rechteckiges Objekt

Es akzeptiert die folgenden Optionen:

Abdeckung
Der Dateipfad des optionalen Titelbilds muss in yuv420 sein.

Modus
Abdeckmodus einstellen.

Es akzeptiert die folgenden Werte:

Abdeckung
Bedecken Sie es mit dem mitgelieferten Bild

verwischen
decken Sie es ab, indem Sie die umgebenden Pixel interpolieren

Standardwert ist verwischen.

Beispiele

· Erstellen Sie eine repräsentative Palette eines bestimmten Videos mit ffmpeg:

ffmpeg -i file.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

Format
Konvertieren Sie das Eingabevideo in eines der angegebenen Pixelformate. Libavfilter wird es versuchen
Wählen Sie eine aus, die als Eingabe für den nächsten Filter geeignet ist.

Es akzeptiert die folgenden Parameter:

pix_fmts
Eine durch '|' getrennte Liste von Pixelformatnamen, z. B. "pix_fmts=yuv420p|monow|rgb24".

Beispiele

· Konvertieren Sie das Eingangsvideo in das yuv420p Format

format=pix_fmts=yuv420p

Konvertieren Sie das Eingabevideo in eines der Formate in der Liste

format=pix_fmts=yuv420p|yuv444p|yuv410p

fps
Konvertieren Sie das Video in eine angegebene konstante Bildrate, indem Sie Bilder duplizieren oder fallen lassen
notwendig.

Es akzeptiert die folgenden Parameter:

fps Die gewünschte Ausgabe-Framerate. Der Standardwert ist 25.

rund
Rundungsmethode.

Mögliche Werte sind:

Null
Nullrunde in Richtung 0

inf Runde weg von 0

nach unten
rund in Richtung -unendlich

up rund gegen +unendlich

in der Nähe von
Runde zum nächsten

Die Vorgabe ist "nahe".

Startzeit
Angenommen, der erste PTS sollte den angegebenen Wert in Sekunden haben. Dies ermöglicht
Auffüllen/Trimmen am Anfang des Streams. Standardmäßig wird keine Annahme über die
erwarteten PTS des ersten Frames, daher wird kein Auffüllen oder Trimmen durchgeführt. Zum Beispiel das
könnte auf 0 gesetzt werden, um den Anfang mit Duplikaten des ersten Frames aufzufüllen, wenn ein Video
stream beginnt nach dem Audiostream oder um Frames mit negativem PTS zu trimmen.

Alternativ können die Optionen als Flatstring angegeben werden: fps[:rund].

Siehe auch die Einstellungen Filter.

Beispiele

· Eine typische Verwendung, um die fps auf 25 einzustellen:

fps=fps=25

· Setzt die fps auf 24, wobei Abkürzung und Rundungsmethode verwendet werden, um auf das nächste zu runden:

fps=fps=film:round=nah

Rahmenpaket
Packen Sie zwei verschiedene Videostreams in ein stereoskopisches Video und setzen Sie die richtigen Metadaten auf
unterstützte Codecs. Die beiden Ansichten sollten die gleiche Größe und Bildrate und Verarbeitung haben
stoppt, wenn das kürzere Video endet. Bitte beachten Sie, dass Sie die Ansicht bequem anpassen können
Eigenschaften mit dem Treppe und fps Filter.

Es akzeptiert die folgenden Parameter:

Format
Das gewünschte Verpackungsformat. Unterstützte Werte sind:

Sbs Die Ansichten sind nebeneinander (Standard).

Tab Die Ansichten liegen übereinander.

Linien
Die Ansichten sind zeilenweise verpackt.

Spalten
Die Ansichten sind spaltenweise gepackt.

Frameseq
Die Ansichten sind zeitlich verschachtelt.

Einige Beispiele:

# Konvertieren Sie die linke und rechte Ansicht in ein bildsequenzielles Video
ffmpeg -i LINKS -i RECHTS -filter_complex framepack=frameseq AUSGABE

# Konvertieren Sie Ansichten in ein Side-by-Side-Video mit derselben Ausgabeauflösung wie die Eingabe
ffmpeg -i LEFT -i RIGHT -filter_complex [0:v]scale=w=iw/2[left],[1:v]scale=w=iw/2[right],[left][right]framepack=sbs AUSGANG

Framerate
Ändern Sie die Bildrate, indem Sie neue Videoausgabebilder aus den Quellbildern interpolieren.

Dieser Filter ist nicht dafür ausgelegt, mit Interlaced-Medien richtig zu funktionieren. Wenn du es wünschst
Ändern Sie die Bildrate von Interlaced-Medien, dann müssen Sie vorher deinterlacen
filtern und nach diesem Filter erneut verschachteln.

Eine Beschreibung der akzeptierten Optionen folgt.

fps Geben Sie die Ausgabe-Frames pro Sekunde an. Diese Option kann auch als Wert angegeben werden
allein. Der Standardwert ist 50.

interp_start
Geben Sie den Anfang eines Bereichs an, in dem der Ausgaberahmen als linear erstellt wird
Interpolation von zwei Frames. Der Bereich ist [0-255], der Standardwert ist 15.

interp_end
Geben Sie das Ende eines Bereichs an, in dem der Ausgaberahmen als linear erstellt wird
Interpolation von zwei Frames. Der Bereich ist [0-255], der Standardwert ist 240.

Szene
Legen Sie die Stufe fest, bei der ein Szenenwechsel erkannt wird, als Wert zwischen 0 und 100 bis
eine neue Szene angeben; ein niedriger Wert spiegelt eine geringe Wahrscheinlichkeit wider, dass der aktuelle Frame
eine neue Szene einführen, während ein höherer Wert bedeutet, dass das aktuelle Bild mit größerer Wahrscheinlichkeit
eins sein. Der Standardwert ist 7.

Fahnen
Legen Sie Flags fest, die den Filterprozess beeinflussen.

Verfügbarer Wert für Fahnen ist:

Scene_change_detect, scd
Aktivieren Sie die Szenenwechselerkennung mit dem Wert der Option Szene. Diese Flagge ist
standardmäßig aktiviert.

Rahmenschritt
Wählen Sie jeden N-ten Frame einen Frame aus.

Dieser Filter akzeptiert die folgende Option:

Step
Wählen Sie den Rahmen nach jedem "Schritt"-Rahmen aus. Zulässige Werte sind positive ganze Zahlen höher
als 0. Der Standardwert ist 1.

frei0r
Wenden Sie einen frei0r-Effekt auf das Eingangsvideo an.

Um die Kompilierung dieses Filters zu ermöglichen, müssen Sie den frei0r-Header installieren und
FFmpeg mit "--enable-frei0r" konfigurieren.

Es akzeptiert die folgenden Parameter:

Filtername
Der Name des zu ladenden frei0r-Effekts. Wenn die Umgebungsvariable FREI0R_PFAD is
definiert, wird der frei0r-Effekt in jedem der Verzeichnisse gesucht, die durch die
durch Doppelpunkte getrennte Liste in FREIOR_PFAD. Ansonsten sind die Standard-Frei0r-Pfade
gesucht, in dieser Reihenfolge: HOME/.frei0r-1/lib/, /usr/local/lib/frei0r-1/,
/usr/lib/frei0r-1/.

filter_params
Eine durch '|' getrennte Liste von Parametern, die an den frei0r-Effekt übergeben werden.

Ein frei0r-Effektparameter kann ein boolescher Wert sein (sein Wert ist entweder "y" oder "n"), ein Double, a
Farbe (angegeben als R/G/B, Wobei R, G und B sind Gleitkommazahlen zwischen 0.0 und
1.0, einschließlich) oder durch eine Farbbeschreibung, die im Abschnitt "Farbe" in der ffmpeg-
utils manual), eine Position (angegeben als X/Y, Wobei X und Y sind Gleitkommazahlen)
und/oder eine Schnur.

Anzahl und Typen der Parameter hängen vom geladenen Effekt ab. Ist ein Effektparameter
nicht angegeben, wird der Standardwert gesetzt.

Beispiele

· Wenden Sie den Distortion0r-Effekt an, indem Sie die ersten beiden Doppelparameter einstellen:

frei0r=filter_name=distort0r:filter_params=0.5|0.01

· Wenden Sie den colordistance-Effekt an und nehmen Sie eine Farbe als ersten Parameter:

frei0r=Farbabstand:0.2/0.3/0.4
frei0r=Farbabstand:violett
frei0r=Farbabstand:0x112233

· Wenden Sie den perspektivischen Effekt an, indem Sie die Bildpositionen oben links und oben rechts angeben:

frei0r=perspective:0.2/0.2|0.8/0.2

Weitere Informationen finden Sie unterhttp://frei0r.dyne.org>

fspp
Wenden Sie eine schnelle und einfache Nachbearbeitung an. Es ist eine schnellere Version von spp.

Es teilt (I)DCT in horizontale/vertikale Durchgänge auf. Im Gegensatz zur einfachen Nachbearbeitung
Filter, einer von ihnen wird einmal pro Block ausgeführt, nicht pro Pixel. Das ermöglicht viel
höhere Geschwindigkeit.

Der Filter akzeptiert die folgenden Optionen:

Qualität
Qualität einstellen. Diese Option definiert die Anzahl der Ebenen für die Mittelwertbildung. Es akzeptiert ein
Ganzzahl im Bereich 4-5. Der Standardwert ist 4.

qp Erzwinge einen konstanten Quantisierungsparameter. Es akzeptiert eine ganze Zahl im Bereich von 0-63. Wenn nicht
eingestellt, verwendet der Filter die QP aus dem Videostream (sofern verfügbar).

Stärke
Filterstärke einstellen. Es akzeptiert eine ganze Zahl im Bereich von -15 bis 32. Niedrigere Werte bedeuten mehr
Details, aber auch mehr Artefakte, während höhere Werte das Bild glatter machen, aber auch
verschwommener. Der Standardwert ist 0 X PSNR optimal.

use_bframe_qp
Aktivieren Sie die Verwendung des QP von den B-Frames, wenn auf 1 gesetzt. Die Verwendung dieser Option kann zu
flackern, da die B-Frames oft größere QP haben. Der Standardwert ist 0 (nicht aktiviert).

geq
Der Filter akzeptiert die folgenden Optionen:

lum_expr, lum
Stellen Sie den Luminanz-Ausdruck ein.

cb_expr, cb
Stellen Sie den Chrominanz-Blau-Ausdruck ein.

cr_expr, cr
Stellen Sie den Chrominanz-Rot-Ausdruck ein.

alpha_Ausdruck, a
Legen Sie den Alpha-Ausdruck fest.

roter_ausdruck, r
Stellen Sie den roten Ausdruck ein.

grün_ausdruck, g
Legen Sie den grünen Ausdruck fest.

blauer_ausdruck, b
Legen Sie den blauen Ausdruck fest.

Der Farbraum wird gemäß den angegebenen Optionen ausgewählt. Wenn einer der lum_expr,
cb_expr, oder cr_expr Optionen angegeben ist, wählt der Filter automatisch ein YCbCr
Farbraum. Wenn einer der red_expr, grüner Ausdruck, oder blue_expr Optionen angegeben ist, wird es
Wählen Sie einen RGB-Farbraum aus.

Wenn einer der Chrominanzausdrücke nicht definiert ist, wird auf den anderen zurückgegriffen. Wenn nein
Alpha-Ausdruck angegeben ist, wird er als undurchsichtiger Wert ausgewertet. Wenn keine Chrominanz
Ausdrücke angegeben sind, werden sie zum Luminanzausdruck ausgewertet.

Die Ausdrücke können die folgenden Variablen und Funktionen verwenden:

N Die fortlaufende Nummer des gefilterten Frames, beginnend bei 0.

X
Y Die Koordinaten des aktuellen Samples.

W
H Die Breite und Höhe des Bildes.

SW
SH Breiten- und Höhenskalierung abhängig von der aktuell gefilterten Ebene. Es ist das Verhältnis
zwischen der entsprechenden Anzahl von Pixeln der Luma-Ebene und den Pixeln der aktuellen Ebene. Z.B
für YUV4:2:0 sind die Werte „1,1“ für die Luma-Ebene und „0.5,0.5“ für die Chroma-Ebene.

T Zeit des aktuellen Frames, ausgedrückt in Sekunden.

p(x, y)
Gibt den Wert des Pixels an Position (x,y) des aktuellen Flugzeugs.

Lum(x, y)
Gibt den Wert des Pixels an Position (x,y) der Luminanzebene.

cb(x, y)
Gibt den Wert des Pixels an Position (x,y) der Blaudifferenz-Chroma-Ebene.
Geben Sie 0 zurück, wenn es keine solche Ebene gibt.

cr(x, y)
Gibt den Wert des Pixels an Position (x,y) der Rotdifferenz-Chroma-Ebene.
Geben Sie 0 zurück, wenn es keine solche Ebene gibt.

r(x, y)
g(x, y)
b(x, y)
Gibt den Wert des Pixels an Position (x,y) der Rot/Grün/Blau-Komponente.
Geben Sie 0 zurück, wenn es keine solche Komponente gibt.

alpha(x, y)
Gibt den Wert des Pixels an Position (x,y) der Alphaebene. Gib 0 zurück, falls vorhanden
ist kein solches Flugzeug.

Für Funktionen, wenn x und y außerhalb des Bereichs liegen, wird der Wert automatisch beschnitten
die nähere Kante.

Beispiele

· Spiegeln Sie das Bild horizontal:

geq=p(WX\,Y)

· Erzeuge eine zweidimensionale Sinuswelle mit dem Winkel "PI/3" und einer Wellenlänge von 100 Pixeln:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· Generieren Sie ein schickes, rätselhaftes Moving Light:

nullsrc=s=256x256,geq=zufällig(1)/hypot(X-cos(N*0.07)*W/2-W/2\,Y-sin(N*0.09)*H/2-H/2)^2*1000000*sin(N*0.02):128:128

· Erzeuge einen schnellen Prägeeffekt:

format=grau,geq=lum_expr='(p(X,Y)+(256-p(X-4,Y-4)))/2'

· RGB-Komponenten je nach Pixelposition ändern:

geq=r='X/W*r(X,Y)':g='(1-X/W)*g(X,Y)':b='(HY)/H*b(X,Y )'

· Erstellen Sie einen radialen Farbverlauf, der die gleiche Größe wie die Eingabe hat (siehe auch die Vignette
Filter):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gauss(0) /gauss(0),format=grau

· Erstellen Sie einen linearen Farbverlauf, um ihn als Maske für einen anderen Filter zu verwenden, und komponieren Sie dann mit
Auflage. In diesem Beispiel wird das Video von oben nach unten allmählich verschwommener
der untere Teil der y-Achse, wie durch den linearen Gradienten definiert:

ffmpeg -i input.mp4 -filter_complex "geq=lum=255*(Y/H),format=gray[grad];[0:v]boxblur=4[blur];[blur][grad]alphamerge[alpha] ;[0:v][alpha]Overlay" Ausgabe.mp4

Spaß
Beheben Sie die Banding-Artefakte, die manchmal in fast flache Regionen eingeführt werden, indem Sie
Kürzung auf 8bit Farbtiefe. Interpolieren Sie die Gradienten, die dorthin gehen sollen, wo die Bänder
sind, und zittern sie.

Es ist nur für die Wiedergabe gedacht. Verwenden Sie es nicht vor der verlustbehafteten Komprimierung, da
Kompression neigt dazu, das Zittern zu verlieren und die Bänder zurückzubringen.

Es akzeptiert die folgenden Parameter:

Stärke
Der maximale Betrag, um den der Filter ein Pixel ändert. Das ist auch der
Schwellenwert für die Erkennung nahezu flacher Regionen. Zulässige Werte reichen von 51 bis 64;
der Standardwert ist 1.2. Außerhalb des Bereichs liegende Werte werden auf den gültigen Bereich beschnitten.

radius
Die Nachbarschaft, an die der Farbverlauf angepasst werden soll. Ein größerer Radius sorgt für sanftere Steigungen,
verhindert aber auch, dass der Filter die Pixel in der Nähe detaillierter Regionen ändert.
Zulässige Werte sind 8-32; der Standardwert ist 16. Außerhalb des Bereichs liegende Werte sind
auf den gültigen Bereich abgeschnitten.

Alternativ können die Optionen als Flatstring angegeben werden: Stärke[:radius]

Beispiele

· Wenden Sie den Filter mit einer Stärke von 3.5 und einem Radius von 8 an:

gradfun=3.5:8

· Radius angeben, ohne die Stärke (die auf den Standardwert zurückfällt):

gradfun=radius=8

halsklaue
Wenden Sie eine Hald CLUT auf einen Videostream an.

Der erste Eingang ist der zu verarbeitende Videostream und der zweite die Hald CLUT. Der Hald
Die CLUT-Eingabe kann ein einfaches Bild oder ein vollständiger Videostream sein.

Der Filter akzeptiert die folgenden Optionen:

kürzeste
Beendigung erzwingen, wenn die kürzeste Eingabe beendet wird. Standard ist 0.

wiederholen
Wenden Sie die letzte CLUT nach dem Ende des Streams weiter an. Ein Wert von 0 deaktiviert die
Filter, nachdem der letzte Frame der CLUT erreicht ist. Standard ist 1.

"haldclut" hat auch die gleichen Interpolationsmöglichkeiten wie lut3d (beide Filter haben das gleiche gemeinsam
Einbauten).

Weitere Informationen zum Hald CLUT finden Sie auf der Website von Eskil Steenberg (Hald CLUT
Autor) beihttp://www.quelsolaar.com/technology/clut.html>.

Arbeitsablauf Beispiele

Hald CLUT-Videostream

Generieren Sie einen Identitäts-Hald-CLUT-Stream, der mit verschiedenen Effekten geändert wurde:

ffmpeg -f lavfi -i B =8 -vf "hue=H=2*PI*t:s=sin(2*PI*t)+1, curves=cross_process" -t 10 -c:v ffv1 clut.nut

Hinweis: Stellen Sie sicher, dass Sie einen verlustfreien Codec verwenden.

Verwenden Sie es dann mit "haldclut", um es auf einen zufälligen Stream anzuwenden:

ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0][1] haldclut' -t 20 mandelclut.mkv

Die Hald CLUT wird auf die ersten 10 Sekunden angewendet (Dauer von Klumpennuss), dann ist die
Das neueste Bild dieses CLUT-Streams wird auf die verbleibenden Frames des
"mandelbrot"-Stream.

Halbe CLUT mit Vorschau

Eine Hald CLUT soll ein quadratisches Bild von "Level*Level*Level" von . sein
"Level*Level*Level"-Pixel. Für eine gegebene Hald CLUT wählt FFmpeg die größtmögliche aus
Quadrat, das oben links im Bild beginnt. Die verbleibenden Füllpixel (unten oder
rechts) werden ignoriert. Dieser Bereich kann verwendet werden, um eine Vorschau der Hald CLUT hinzuzufügen.

Normalerweise wird die folgende generierte Hald-CLUT vom "haldclut"-Filter unterstützt:

ffmpeg -f lavfi -i B =8 -vf"
pad=iw+320 [padded_clut];
smptebars=s=320x256, teilen [a][b];
[padded_clut][a] overlay=W-320:h, Curves=color_negative [main];
[main][b] overlay=W-320" -frames:v 1 clut.png

Es enthält das Original und eine Vorschau der Wirkung der CLUT: SMPTE-Farbbalken sind
rechts oben und unten die gleichen Farbbalken angezeigt, die von den Farbänderungen verarbeitet werden.

Dann kann die Wirkung dieser Hald CLUT visualisiert werden mit:

ffplay input.mkv -vf "movie=clut.png, [in] haldclut"

hflipp
Spiegeln Sie das Eingangsvideo horizontal.

Um beispielsweise das Eingangsvideo horizontal zu spiegeln mit ffmpeg:

ffmpeg -i in.avi -vf "hflip" out.avi

histeq
Dieser Filter wendet eine globale Farbhistogramm-Entzerrung auf Einzelbildbasis an.

Es kann verwendet werden, um Videos zu korrigieren, die einen komprimierten Bereich von Pixelintensitäten aufweisen. Der
Filter verteilt die Pixelintensitäten neu, um ihre Verteilung über die
Intensitätsbereich. Es kann als "automatisch anpassender Kontrastfilter" angesehen werden. Dies
Filter ist nur zum Korrigieren von verschlechtertem oder schlecht aufgenommenem Quellvideo nützlich.

Der Filter akzeptiert die folgenden Optionen:

Stärke
Bestimmen Sie den anzuwendenden Ausgleichsbetrag. Wenn die Festigkeit verringert wird,
Die Verteilung der Pixelintensitäten nähert sich immer mehr der des Eingabebildes an.
Der Wert muss eine Gleitkommazahl im Bereich [0,1] sein und ist standardmäßig 0.200.

Intensität
Stellen Sie die maximal erzeugbare Intensität ein und skalieren Sie die Ausgabewerte
passend. Die Stärke sollte wie gewünscht eingestellt werden und dann kann die Intensität eingestellt werden
begrenzt, falls erforderlich, um ein Auswaschen zu vermeiden. Der Wert muss eine Gleitkommazahl im Bereich . sein
[0,1] und standardmäßig auf 0.210 eingestellt.

anti Banding
Stellen Sie die Antibanding-Stufe ein. Wenn aktiviert, variiert der Filter zufällig die Luminanz von
Ausgabepixel um einen kleinen Betrag, um eine Streifenbildung des Histogramms zu vermeiden. Mögliche Werte sind
"keine", "schwach" oder "stark". Standardmäßig ist "keine" eingestellt.

Histogramm
Berechnen und zeichnen Sie ein Farbverteilungshistogramm für das Eingabevideo.

Das berechnete Histogramm ist eine Darstellung der Farbkomponentenverteilung in an
Bild.

Der Filter akzeptiert die folgenden Optionen:

Modus
Histogrammmodus einstellen.

Es akzeptiert die folgenden Werte:

Cholesterinspiegel
Standardhistogramm, das die Verteilung der Farbkomponenten in einem Bild anzeigt.
Zeigt ein Farbdiagramm für jede Farbkomponente an. Zeigt die Verteilung der Y, U, V,
A- oder R-, G-, B-Komponenten, je nach Eingabeformat, im aktuellen Frame. Unter
In jedem Diagramm wird ein Farbkomponentenskalenmesser angezeigt.

Farbe
Zeigt Chroma-Werte (U/V-Farbplatzierung) in einem zweidimensionalen Diagramm an (das ist
Vektorskop genannt). Je heller ein Pixel im Vektorskop, desto mehr Pixel von
der Eingaberahmen entspricht diesem Pixel (dh mehr Pixel haben diese Farbsättigung)
Wert). Die V-Komponente wird auf der horizontalen (X)-Achse angezeigt, wobei ganz links
Seite ist V = 0 und die ganz rechte Seite ist V = 255. Die U-Komponente ist
angezeigt auf der vertikalen (Y) Achse, wobei das obere U = 0 darstellt und das untere
repräsentiert U = 255.

Die Position eines weißen Pixels im Graphen entspricht dem Chroma-Wert von a
Pixel des Eingabeclips. Die Grafik kann daher verwendet werden, um den Farbton (Farbe
Geschmack) und die Sättigung (die Dominanz des Farbtons in der Farbe). Als der Farbton von
eine Farbe ändert sich, sie bewegt sich um das Quadrat. In der Mitte des Platzes die
die Sättigung ist null, was bedeutet, dass das entsprechende Pixel keine Farbe hat. Wenn die
Menge einer bestimmten Farbe wird erhöht (während die anderen Farben unverändert bleiben)
die Sättigung nimmt zu und der Indikator bewegt sich zum Rand des Quadrats.

color2
Chroma-Werte im Vektorskop, ähnlich wie "Farbe", aber die tatsächlichen Chroma-Werte sind
angezeigt.

Wellenform
Farbkomponentendiagramm pro Zeile/Spalte. Im Zeilenmodus die Grafik auf der linken Seite
repräsentiert den Farbkomponentenwert 0 und die rechte Seite repräsentiert den Wert = 255. In
Spaltenmodus, die obere Seite repräsentiert den Farbkomponentenwert = 0 und die untere Seite
stellt Wert = 255 dar.

Der Standardwert ist "Stufen".

Ebene_Höhe
Stellen Sie die Höhe der Ebene in "Ebenen" ein. Der Standardwert ist 200. Der zulässige Bereich ist [50, 2048].

scale_height
Stellen Sie die Höhe der Farbskala in "Stufen" ein. Der Standardwert ist 12. Zulässiger Bereich ist [0, 40].

Step
Schritt für "Wellenform"-Modus einstellen. Kleinere Werte sind nützlich, um herauszufinden, wie viele Werte von
die gleiche Luminanz wird über die Eingabezeilen/-spalten verteilt. Der Standardwert ist 10.
Zulässiger Bereich ist [1, 255].

Wellenform_Modus
Modus für "Wellenform" einstellen. Kann entweder "Zeile" oder "Spalte" sein. Standard ist "Reihe".

wave_mirror
Spiegelungsmodus für "Wellenform" einstellen. 0 bedeutet ungespiegelt, 1 bedeutet gespiegelt. In gespiegelt
Modus, höhere Werte werden auf der linken Seite für den "Reihen"-Modus und oben dargestellt
für den "Spalten"-Modus. Der Standardwert ist 0 (nicht gespiegelt).

Anzeigemodus
Anzeigemodus für "Wellenform" und "Stufen" einstellen. Es akzeptiert die folgenden Werte:

Parade
Zeigen Sie eine separate Grafik für die Farbkomponenten nebeneinander in der Wellenform "Reihe" an
Modus oder untereinander im Wellenformmodus "Spalte" für "Wellenform"-Histogramm
Modus. Für den Histogrammmodus "Stufen" werden Diagramme pro Farbkomponente darunter platziert
den Umgang miteinander.

Die Verwendung dieses Anzeigemodus im Histogrammmodus "Wellenform" erleichtert das Erkennen von Farben
wirft die Lichter und Schatten eines Bildes ein, indem die Konturen der
oberen und unteren Diagramme jeder Wellenform. Da Weiß, Grau und Schwarz
gekennzeichnet durch genau gleiche Mengen an Rot, Grün und Blau, neutrale Bereiche von
das Bild sollte drei Wellenformen von ungefähr gleicher Breite/Höhe anzeigen. Wenn nicht,
Die Korrektur ist einfach durchzuführen, indem die Pegel der drei Wellenformen angepasst werden.

Auflage
Präsentiert Informationen, die mit denen in der "Parade" identisch sind, außer dass die Grafiken
darstellende Farbkomponenten werden direkt überlagert.

Dieser Anzeigemodus im Histogrammmodus "Wellenform" erleichtert das Erkennen von relativen
Unterschiede oder Ähnlichkeiten in überlappenden Bereichen der Farbkomponenten, die
identisch sein sollen, wie neutrales Weiß, Grau oder Schwarz.

Standard ist "Parade".

level_mode
Modus für "Ebenen" einstellen. Kann entweder "linear" oder "logarithmisch" sein. Standard ist "linear".

Komponenten
Legen Sie fest, welche Farbkomponenten für den Modus "Stufen" angezeigt werden sollen. Standard ist 7.

Beispiele

· Histogramm berechnen und zeichnen:

ffplay -i input -vf Histogramm

hqdn3d
Dies ist ein hochpräziser/qualitativer 3D-Entrauschungsfilter. Es zielt darauf ab, Bildrauschen zu reduzieren,
Erzeugen Sie glatte Bilder und machen Sie Standbilder wirklich still. Es sollte verbessern
Kompressibilität.

Es akzeptiert die folgenden optionalen Parameter:

luma_räumlich
Eine nicht negative Gleitkommazahl, die die räumliche Luminanzstärke angibt. Es
standardmäßig auf 4.0.

chroma_räumlich
Eine nicht negative Gleitkommazahl, die die räumliche Farbstärke angibt. Es
standardmäßig auf 3.0*luma_räumlich/ 4.0.

luma_tmp
Eine Gleitkommazahl, die die zeitliche Luma-Stärke angibt. Es ist standardmäßig
6.0 *luma_räumlich/ 4.0.

chroma_tmp
Eine Gleitkommazahl, die die zeitliche Stärke der Chroma angibt. Es ist standardmäßig
luma_tmp*chroma_räumlich/luma_räumlich.

hqx
Wenden Sie einen hochwertigen Vergrößerungsfilter an, der für Pixelkunst entwickelt wurde. Dieser Filter war
ursprünglich von Maxim Stepin erstellt.

Es akzeptiert die folgende Option:

n Stellen Sie das Skalierungsmaß ein: 2 für „hq2x“, 3 für „hq3x“ und 4 für „hq4x“. Standard ist 3.

Stapel
Stapeln Sie Eingabevideos horizontal.

Alle Streams müssen dasselbe Pixelformat und dieselbe Höhe aufweisen.

Beachten Sie, dass dieser Filter schneller ist als die Verwendung von Auflage und Unterlage filtern, um dieselbe Ausgabe zu erstellen.

Der Filter akzeptiert die folgende Option:

nb_eingaben
Legen Sie die Anzahl der Eingabestreams fest. Standard ist 2.

Farbton
Ändern Sie den Farbton und/oder die Sättigung der Eingabe.

Es akzeptiert die folgenden Parameter:

h Geben Sie den Farbtonwinkel in Grad an. Es akzeptiert einen Ausdruck und Standardwerte
auf "0".

s Geben Sie die Sättigung im Bereich [-10,10] an. Es akzeptiert einen Ausdruck und ist standardmäßig auf
"1".

H Geben Sie den Farbtonwinkel als eine Anzahl von Bogenmaßen an. Es akzeptiert einen Ausdruck und Standardwerte
auf "0".

b Geben Sie die Helligkeit im Bereich [-10,10] an. Es akzeptiert einen Ausdruck und ist standardmäßig auf
"0".

h und H schließen sich gegenseitig aus und können nicht gleichzeitig angegeben werden.

Das b, h, H und s Optionswerte sind Ausdrücke, die die folgenden Konstanten enthalten:

n Frameanzahl des Eingabeframes beginnend bei 0

pts Präsentationszeitstempel des Eingaberahmens, ausgedrückt in Zeitbasiseinheiten

r Bildrate des Eingangsvideos, NAN, wenn die Eingangsbildrate unbekannt ist

t Zeitstempel in Sekunden ausgedrückt, NAN, wenn der Eingabezeitstempel unbekannt ist

tb Zeitbasis des Eingangsvideos

Beispiele

· Stellen Sie den Farbton auf 90 Grad und die Sättigung auf 1.0 ein:

Farbton=h=90:s=1

· Gleicher Befehl, aber mit Angabe des Farbtons im Bogenmaß:

Farbton=H=PI/2:s=1

· Rotieren Sie den Farbton und lassen Sie die Sättigung über einen Zeitraum von 0 Sekunde zwischen 2 und 1 schwanken:

hue="H=2*PI*t: s=sin(2*PI*t)+1"

· Wenden Sie einen 3-Sekunden-Sättigungs-Einblendeffekt beginnend bei 0 an:

hue="s=min(t/3\,1)"

Der allgemeine Einblendungsausdruck kann wie folgt geschrieben werden:

hue="s=min(0\, max((t-START)/DAUER\, 1))"

· Wenden Sie einen 3-Sekunden-Sättigungs-Ausblendeffekt an, der bei 5 Sekunden beginnt:

hue="s=max(0\, min(1\, (8-t)/3))"

Der allgemeine Ausblendungsausdruck kann wie folgt geschrieben werden:

hue="s=max(0\, min(1\, (START+DAUER-t)/DAUER))"

Befehle

Dieser Filter unterstützt die folgenden Befehle:

b
s
h
H Ändern Sie den Farbton und/oder die Sättigung und/oder Helligkeit des Eingangsvideos. Der
Befehl akzeptiert dieselbe Syntax wie die entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

idee
Video-Interlacing-Typ erkennen.

Dieser Filter versucht zu erkennen, ob die eingegebenen Frames interlaced, progressiv, oben oder unten sind
Feld zuerst. Es wird auch versuchen, Felder zu erkennen, die sich zwischen benachbarten Bildern wiederholen
(ein Zeichen von Telecine).

Die Einzelbilderkennung berücksichtigt bei der Klassifizierung nur unmittelbar benachbarte Bilder
Rahmen. Die Mehrfach-Frame-Erkennung beinhaltet die Klassifizierungshistorie der vorherigen
Frames.

Der Filter protokolliert diese Metadatenwerte:

single.current_frame
Erkannter Typ des aktuellen Frames mit Einzelframe-Erkennung. Einer von: ``tff'' (top
Feld zuerst), ``bff'' (unteres Feld zuerst), ``progressiv'' oder ``unbestimmt''

single.tff
Kumulative Anzahl von Frames, die bei der Einzelbild-Erkennung zuerst als oberstes Halbbild erkannt wurden.

multiple.tff
Kumulative Anzahl von Frames, die zuerst als oberstes Halbbild erkannt wurden, wenn mehrere Frames verwendet werden
Erkennung.

Single.bff
Kumulative Anzahl von Frames, die zuerst als unteres Halbbild erkannt wurden, wenn Einzelbild verwendet wird
Erkennung.

multiple.current_frame
Erkannter Typ des aktuellen Frames mithilfe der Mehrfach-Frame-Erkennung. Einer von: ``tff'' (oben
Feld zuerst), ``bff'' (unteres Feld zuerst), ``progressiv'' oder ``unbestimmt''

mehrere.bff
Kumulative Anzahl von Frames, die bei Verwendung mehrerer Frames zuerst als unteres Halbbild erkannt wurden
Erkennung.

einzeln.progressiv
Kumulative Anzahl von Frames, die mithilfe der Einzelbilderkennung als progressiv erkannt wurden.

mehrfach.progressiv
Kumulative Anzahl von Frames, die mithilfe der Mehrfach-Frame-Erkennung als progressiv erkannt wurden.

single.unbestimmt
Kumulative Anzahl von Frames, die mit der Einzelbilderkennung nicht klassifiziert werden konnten.

mehrfach.unbestimmt
Kumulative Anzahl von Frames, die nicht mit mehreren Frames klassifiziert werden konnten
Erkennung.

wiederholter.aktueller_frame
Welches Feld im aktuellen Frame wird ab dem letzten wiederholt. Einer von ``weder'',
``oben'' oder ``unten''.

wiederholt.weder
Kumulative Anzahl von Frames ohne wiederholtes Halbbild.

wiederholt.top
Kumulative Anzahl von Frames, wobei das obere Halbbild von der Spitze des vorherigen Frames wiederholt wird
Feld.

wiederholt.unten
Kumulative Anzahl von Frames, wobei das untere Halbbild aus den vorherigen Frames wiederholt wird
unteres Feld.

Der Filter akzeptiert die folgenden Optionen:

intl_thres
Interlacing-Schwellenwert einstellen.

prog_thres
Stellen Sie den progressiven Schwellenwert ein.

wiederholen_thres
Schwellenwert für die wiederholte Felderkennung.

Halbwertszeit
Anzahl der Frames, nach denen der Beitrag eines bestimmten Frames zur Statistik halbiert wird
(dh es trägt nur 0.5 zu seiner Klassifizierung bei). Der Standardwert von 0 bedeutet, dass
alle gesehenen Frames erhalten für immer das volle Gewicht von 1.0.

analysis_interlaced_flag
Wenn dieser nicht 0 ist, verwendet idet die angegebene Anzahl von Frames, um zu bestimmen, ob
das Interlaced-Flag genau ist, zählt es keine unbestimmten Frames. Wenn die Flagge
als richtig befunden wird, wird es ohne weitere Berechnungen verwendet, wenn es
als ungenau befunden, wird es ohne weitere Berechnungen gelöscht. Dies
ermöglicht das Einfügen des Idet-Filters als rechnerische Methode zur Bereinigung der
verflochtene Flagge

il
Felder entschachteln oder verschachteln.

Mit diesem Filter können Halbbilder von Bildern mit Zeilensprung verarbeitet werden, ohne sie zu deinterlacen.
Deinterleaving teilt das Eingabebild in 2 Halbbilder (sog. Halbbilder). Ungerade Linien
werden in die obere Hälfte des Ausgabebildes verschoben, gerade Linien in die untere Hälfte. Sie können
verarbeiten (filtern) Sie sie unabhängig voneinander und verschachteln Sie sie dann erneut.

Der Filter akzeptiert die folgenden Optionen:

luma_mode, l
chroma_mode, c
alpha_modus, a
Verfügbare Werte für luma_mode, chroma_mode und alpha_modus sind:

keine
Nichts tun.

entschachteln, d
Felder entschachteln und übereinander platzieren.

verschachteln, i
Felder verschachteln. Kehren Sie den Deinterleaving-Effekt um.

Der Standardwert ist "keiner".

luma_swap, ls
chroma_swap, cs
alpha_swap, as
Luma/Chroma/Alpha-Felder tauschen. Tauschen Sie gerade und ungerade Zeilen aus. Der Standardwert ist 0.

aufblasen
Wenden Sie den Aufblaseffekt auf das Video an.

Dieser Filter ersetzt das Pixel durch das aus einer regionalen(3x3) Durchschnitt nur unter Berücksichtigung
Werte höher als das Pixel.

Es akzeptiert die folgenden Optionen:

Schwelle0
Schwelle1
Schwelle2
Schwelle3
Begrenzen Sie die maximale Änderung für jede Ebene, der Standardwert ist 65535. Bei 0 bleibt die Ebene bestehen
unverändert.

verschachteln
Einfacher Interlacing-Filter aus progressiven Inhalten. Dies verschachtelt obere (oder untere)
Zeilen aus ungeraden Frames mit unteren (oder oberen) Zeilen aus geraden Frames, Halbierung der Framerate
und Beibehaltung der Bildhöhe.

Original Original neuer Rahmen
Rahmen 'j' Rahmen 'j+1' (tff)
========== =========== ==================
Zeile 0 ------------------> Rahmen 'j' Zeile 0
Zeile 1 Zeile 1 ----> Rahmen 'j+1' Zeile 1
Zeile 2 ---------------------------------- Rahmen 'j' Zeile 2
Zeile 3 Zeile 3 ----> Rahmen 'j+1' Zeile 3
... ... ...
Neuer Frame + 1 wird von Frame 'j+2' und Frame 'j+3' generiert und so weiter

Es akzeptiert die folgenden optionalen Parameter:

Scan
Dies bestimmt, ob das Zeilensprungbild aus dem geraden (tff - Standard) oder
ungerade (bff) Zeilen des progressiven Frames.

Tiefpass
Aktivieren (Standard) oder deaktivieren Sie den vertikalen Tiefpassfilter, um Twitter-Interlacing zu vermeiden
und Moiré-Muster reduzieren.

kerndeint
Deinterlacen Sie das Eingangsvideo, indem Sie das adaptive Kernel-Deinterling von Donald Graft anwenden. Arbeite an
Interlaced-Teile eines Videos, um progressive Frames zu erzeugen.

Die Beschreibung der akzeptierten Parameter folgt.

dreschen
Legen Sie den Schwellenwert fest, der die Toleranz des Filters beeinflusst, wenn Sie bestimmen, ob ein Pixel
Zeile verarbeitet werden muss. Es muss eine ganze Zahl im Bereich [0,255] sein und ist standardmäßig 10.
Ein Wert von 0 führt dazu, dass der Prozess auf alle Pixel angewendet wird.

Karte Malen Sie Pixel, die den Schwellenwert überschreiten, in Weiß, wenn der Wert auf 1 eingestellt ist. Der Standardwert ist 0.

Auftrag
Legen Sie die Reihenfolge der Felder fest. Felder tauschen, wenn auf 1 gesetzt, Felder in Ruhe lassen, wenn 0. Der Standardwert ist 0.

scharf
Aktivieren Sie zusätzliches Schärfen, wenn es auf 1 gesetzt ist. Der Standardwert ist 0.

zwei
Aktivieren Sie das Zweiwege-Schärfen, wenn es auf 1 eingestellt ist. Der Standardwert ist 0.

Beispiele

· Standardwerte anwenden:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· Zusätzliches Schärfen aktivieren:

kerndeint=scharf=1

· Verarbeitete Pixel in Weiß malen:

kerndeint=map=1

Linsenkorrektur
Korrigieren Sie die radiale Linsenverzerrung

Dieser Filter kann verwendet werden, um radiale Verzerrungen zu korrigieren, die sich aus der Verwendung von ergeben können
Weitwinkelobjektive und korrigieren dadurch das Bild neu. Um die richtigen Parameter zu finden, kann man
Verwenden Sie Tools, die zum Beispiel als Teil von Opencv verfügbar sind, oder einfach Trial-and-Error. Benutzen
opencv verwendet die Kalibrierungsprobe (unter Samples/cpp) aus den opencv-Quellen und extrahiert
die Koeffizienten k1 und k2 aus der resultierenden Matrix.

Beachten Sie, dass praktisch der gleiche Filter in den Open-Source-Tools Krita und . verfügbar ist
Digikam aus dem KDE-Projekt.

Im Gegensatz zu Vignette Filter, der auch zur Kompensation von Objektivfehlern verwendet werden kann, dies
Filter korrigiert die Verzerrung des Bildes, während Vignette korrigiert die Helligkeit
Verteilung, daher können Sie in bestimmten Fällen beide Filter zusammen verwenden, obwohl Sie
muss sich um die Bestellung kümmern, dh ob vorher eine Vignettierung angebracht werden soll oder
nach der Linsenkorrektur.

Optionen

Der Filter akzeptiert die folgenden Optionen:

cx Relative x-Koordinate des Brennpunktes des Bildes und damit der Mitte des
Verzerrung. Dieser Wert hat einen Bereich von [0,1] und wird als Bruchteile des Bildes ausgedrückt
Breite.

cy Relative y-Koordinate des Brennpunktes des Bildes und damit der Mitte des
Verzerrung. Dieser Wert hat einen Bereich von [0,1] und wird als Bruchteile des Bildes ausgedrückt
Höhe.

k1 Koeffizient des quadratischen Korrekturterms. 0.5 bedeutet keine Korrektur.

k2 Koeffizient des doppelt-quadratischen Korrekturterms. 0.5 bedeutet keine Korrektur.

Die Formel, die die Korrektur erzeugt, lautet:

r_src = r_tgt * (1 + k1 * (r_tgt / r_0)^2 + k2 * (r_tgt / r_0)^4)

woher r_0 ist die Hälfte der Bilddiagonale und r_src und r_tgt sind die Entfernungen von der
Brennpunkt im Quell- bzw. Zielbild.

lut3d
Wenden Sie eine 3D-LUT auf ein Eingangsvideo an.

Der Filter akzeptiert die folgenden Optionen:

Datei
Legen Sie den Namen der 3D-LUT-Datei fest.

Derzeit unterstützte Formate:

3dl Nachwirkungen

Würfel
Iridas

dat DaVinci

m3d Pandora

interp
Wählen Sie den Interpolationsmodus.

Verfügbare Werte sind:

nächste
Verwenden Sie Werte vom nächsten definierten Punkt.

trilinear
Interpolieren Sie die Werte mit den 8 Punkten, die einen Würfel definieren.

tetraedrisch
Werte mit einem Tetraeder interpolieren.

Schlampe, lutrgb, Lutjuw
Berechnen einer Nachschlagetabelle zum Binden jedes Pixelkomponenten-Eingabewerts an einen Ausgabewert,
und wenden Sie es auf das Eingangsvideo an.

Lutjuw wendet eine Lookup-Tabelle auf ein YUV-Eingangsvideo an, lutrgb zu einem RGB-Eingangsvideo.

Diese Filter akzeptieren die folgenden Parameter:

c0 Setze den ersten Pixelkomponentenausdruck

c1 zweiten Pixelkomponentenausdruck setzen

c2 dritten Pixelkomponentenausdruck setzen

c3 vierten Pixelkomponentenausdruck setzen, entspricht der Alphakomponente

r roten Komponentenausdruck setzen

g setze den grünen Komponentenausdruck

b Blaukomponentenausdruck einstellen

a Alpha-Komponenten-Ausdruck

y Y-/Luminanzkomponentenausdruck einstellen

u U/Cb-Komponentenausdruck setzen

v V/Cr-Komponentenausdruck einstellen

Jeder von ihnen gibt den Ausdruck an, der zum Berechnen der Nachschlagetabelle für die
entsprechenden Pixelkomponentenwerte.

Die genaue Komponente, die jedem der c* Optionen hängen vom Format in der Eingabe ab.

Das lut Filter erfordert entweder YUV- oder RGB-Pixelformate in der Eingabe, lutrgb erfordert RGB
Pixelformate in der Eingabe und Lutjuw erfordert YUV.

Die Ausdrücke können die folgenden Konstanten und Funktionen enthalten:

w
h Die Eingabebreite und -höhe.

Welle Der Eingabewert für die Pixelkomponente.

Clipval
Der Eingabewert, beschnitten auf den Minval-maxval range.

maxval
Der maximale Wert für die Pixelkomponente.

Minval
Der Mindestwert für die Pixelkomponente.

Negativ
Der negierte Wert für den Pixelkomponentenwert, beschnitten auf Minval-maxval Angebot;
es entspricht dem Ausdruck "maxval-clipval+minval".

Clip(val)
Der berechnete Wert in Welle, angeschnitten Minval-maxval range.

Gammaval (Gamma)
Der berechnete Gammakorrekturwert des Pixelkomponentenwerts, beschnitten auf
Minval-maxval Palette. Es entspricht dem Ausdruck
"pow((clipval-minval)/(maxval-minval)\,Gamma)*(maxval-minval)+minval"

Alle Ausdrücke sind standardmäßig auf "val" eingestellt.

Beispiele

· Eingabevideo negieren:

lutrgb="r=maxval+minval-val:g=maxval+minval-val:b=maxval+minval-val"
lutyuv="y=maxval+minval-val:u=maxval+minval-val:v=maxval+minval-val"

Das obige ist dasselbe wie:

lutrgb="r=negval:g=negval:b=negval"
lutyuv="y=negval:u=negval:v=negval"

· Luminanz negieren:

lutyuv=y=negval

· Entfernen Sie Chroma-Komponenten und verwandeln Sie das Video in ein Grautonbild:

lutyuv="u=128:v=128"

· Wenden Sie einen Luma-Burning-Effekt an:

lutyuv="y=2*val"

· Grüne und blaue Komponenten entfernen:

lutrgb="g=0:b=0"

· Stellen Sie einen konstanten Alphakanalwert für die Eingabe ein:

format=rgba,lutrgb=a="maxval-minval/2"

· Korrigieren Sie das Luminanz-Gamma um den Faktor 0.5:

lutyuv=y=gammaval(0.5)

· Niedrigstwertige Bits von Luma verwerfen:

lutyuv=y='bitand(val, 128+64+32)'

Zusammenführungsebenen
Farbkanalkomponenten aus mehreren Videostreams zusammenführen.

Der Filter akzeptiert bis zu 4 Eingabestreams und führt ausgewählte Eingabeebenen mit der Ausgabe zusammen
Video.

Dieser Filter akzeptiert die folgenden Optionen:

Mapping
Legen Sie die Zuordnung der Eingabe- zur Ausgabeebene fest. Standard ist 0.

Die Zuordnungen werden als Bitmap angegeben. Sie sollte als Hexadezimalzahl angegeben werden
in der Form 0xAa[Bb[Cc[Dd]]]. 'Aa' beschreibt die Abbildung für die erste Ebene des
Ausgabestrom. 'A' legt die Nummer des zu verwendenden Eingabestreams fest (von 0 bis 3), und 'a'
die Ebenennummer des entsprechenden zu verwendenden Eingangs (von 0 bis 3). Der Rest des
Mappings ist ähnlich, 'Bb' beschreibt das Mapping für die zweite Ebene des Ausgabestroms,
'Cc' beschreibt das Mapping für die dritte Ebene des Ausgabestroms und 'Dd' beschreibt die
Mapping für die vierte Ebene des Ausgabestroms.

Format
Legen Sie das Ausgabepixelformat fest. Standard ist "yuva444p".

Beispiele

· Drei graue Videostreams gleicher Breite und Höhe zu einem einzigen Videostream zusammenführen:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· 1. yuv444p-Stream und 2. grauer Videostream in den yuva444p-Videostream zusammenführen:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Tauschen Sie die Y- und A-Ebene im yuva444p-Stream aus:

format=yuva444p,mergeplanes=0x03010200:yuva444p

· U- und V-Ebene im yuv420p-Stream tauschen:

format=yuv420p,mergeplanes=0x000201:yuv420p

· Cast einen rgb24-Clip in yuv444p:

format=rgb24,mergeplanes=0x000102:yuv444p

mcdeint
Wenden Sie Deinterlacing mit Bewegungskompensation an.

Es benötigt ein Halbbild pro Frame als Eingabe und muss daher zusammen mit yadif=1/3 oder . verwendet werden
gleichwertig.

Dieser Filter akzeptiert die folgenden Optionen:

Modus
Stellen Sie den Deinterlacing-Modus ein.

Es akzeptiert einen der folgenden Werte:

schnell
mittlere
langsam
iterative Bewegungsschätzung verwenden

extra_langsam
Gefällt mir langsam, aber verwenden Sie mehrere Referenzrahmen.

Standardwert ist schnell.

Parität
Stellen Sie die für das Eingangsvideo angenommene Bildfeldparität ein. Es muss einer von denen sein
folgende Werte:

0, tff
Nehmen Sie zuerst das obere Feld an

1, bff
unterstes Feld zuerst annehmen

Standardwert ist bff.

qp Stellen Sie den Block-Quantisierungsparameter (QP) ein, der vom internen Encoder verwendet wird.

Höhere Werte sollten zu einem glatteren Bewegungsvektorfeld führen, aber weniger optimal
einzelne Vektoren. Der Standardwert ist 1.

mpdezimieren
Drop-Frames, die sich nicht wesentlich vom vorherigen Frame unterscheiden, um Frames zu reduzieren
Preis.

Die Hauptanwendung dieses Filters ist die Codierung mit sehr niedriger Bitrate (z. B. Streaming über Einwahl
Modem), aber es könnte theoretisch zum Reparieren von Filmen verwendet werden, die inverse-telecined waren
falsch.

Eine Beschreibung der akzeptierten Optionen folgt.

max Legen Sie die maximale Anzahl aufeinanderfolgender Frames fest, die gelöscht werden können (falls positiv), oder
das minimale Intervall zwischen ausgelassenen Frames (falls negativ). Wenn der Wert 0 ist, wird der
Frame wird verworfen, ungeachtet der Anzahl der vorherigen sequentiell verworfenen Frames.

Der Standardwert ist 0.

hi
lo
Frack
Legen Sie die Abfallschwellenwerte fest.

Werte für hi und lo sind für 8x8 Pixelblöcke und repräsentieren den tatsächlichen Pixelwert
Unterschiede, so dass ein Schwellenwert von 64 einer Differenzeinheit für jedes Pixel entspricht,
oder dasselbe anders über den Block verteilt.

Ein Frame ist ein Kandidat für das Verwerfen, wenn sich keine 8x8-Blöcke um mehr als einen Schwellenwert unterscheiden
of hi, und wenn nicht mehr als Frack Blöcke (1 bedeutet das ganze Bild) unterscheiden sich um mehr als
eine Schwelle von lo.

Standardwert für hi ist 64*12, Standardwert für lo ist 64*5 und der Standardwert für
Frack ist 0.33.

negiere
Eingangsvideo negieren.

Es akzeptiert eine ganze Zahl als Eingabe; wenn nicht Null, wird die Alpha-Komponente (sofern verfügbar) negiert.
Der Standardwert in der Eingabe ist 0.

kein Format
Zwingen Sie libavfilter, keines der angegebenen Pixelformate für die Eingabe zum nächsten zu verwenden
Filter.

Es akzeptiert die folgenden Parameter:

pix_fmts
Eine durch '|' getrennte Liste von Pixelformatnamen, z. B. apix_fmts=yuv420p|monow|rgb24".

Beispiele

· Erzwinge, dass libavfilter ein anderes Format verwendet als yuv420p für die Eingabe in den vflip
Filter:

noformat=pix_fmts=yuv420p,vflip

· Konvertieren Sie das Eingabevideo in eines der Formate, die nicht in der Liste enthalten sind:

noformat=yuv420p|yuv444p|yuv410p

Lärm
Rauschen im Videoeingangsbild hinzufügen.

Der Filter akzeptiert die folgenden Optionen:

all_seed
c0_seed
c1_seed
c2_seed
c3_seed
Legen Sie den Rausch-Seed für eine bestimmte Pixelkomponente oder alle Pixelkomponenten fest, falls
all_seed. Der Standardwert ist 123457.

alle_stärke, alles
c0_Stärke, c0s
c1_Stärke, c1s
c2_Stärke, c2s
c3_Stärke, c3s
Legen Sie die Rauschstärke für eine bestimmte Pixelkomponente oder alle Pixelkomponenten fest, falls
all_strength. Der Standardwert ist 0. Der zulässige Bereich ist [0, 100].

alle_flaggen, allf
c0_flags, C0f
c1_flags, C1f
c2_flags, C2f
c3_flags, C3f
Setzen Sie Pixelkomponenten-Flags oder setzen Sie Flags für alle Komponenten, wenn alle_flaggen. Verfügbar
Werte für Komponenten-Flags sind:

a gemitteltes zeitliches Rauschen (weicher)

p zufälliges Rauschen mit einem (halb)regelmäßigen Muster mischen

t zeitliches Rauschen (das Rauschmuster ändert sich zwischen den Bildern)

u gleichmäßiges Rauschen (sonst Gauss)

Beispiele

Fügen Sie dem Eingangsvideo zeitliches und gleichmäßiges Rauschen hinzu:

Rauschen=alles=20:allf=t+u

null
Übergeben Sie die Videoquelle unverändert an den Ausgang.

OCV
Wenden Sie eine Videotransformation mit libopencv an.

Um diesen Filter zu aktivieren, installieren Sie die libopencv-Bibliothek und -Header und konfigurieren Sie FFmpeg mit
"--enable-libopencv".

Es akzeptiert die folgenden Parameter:

Filtername
Der Name des anzuwendenden libopencv-Filters.

filter_params
Die an den libopencv-Filter zu übergebenden Parameter. Wenn nicht angegeben, die Standardwerte
sind angenommen.

Genauere Informationen finden Sie in der offiziellen libopencv-Dokumentation:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

Mehrere libopencv-Filter werden unterstützt; siehe die folgenden Unterabschnitte.

erweitern

Erweitern Sie ein Bild, indem Sie ein bestimmtes strukturierendes Element verwenden. Es entspricht der libopencv
Funktion "cvDilate".

Es akzeptiert die Parameter: struct_el|nb_iterationen.

struct_el stellt ein strukturierendes Element dar und hat die Syntax:
SpaltenxReihen+Anker_xxAnker_y/gestalten

Spalten und Reihen die Anzahl der Spalten und Zeilen des strukturierenden Elements darstellen,
Anker_x und Anker_y der Ankerpunkt und gestalten die Form für das strukturierende Element.
gestalten muss "rect", "cross", "ellipse" oder "custom" sein.

Wenn der Wert für gestalten ist "benutzerdefiniert", gefolgt von einer Zeichenfolge der Form
"=Dateinamen". Die Datei mit dem Namen Dateinamen wird angenommen, dass es ein binäres Bild darstellt, wobei jedes
druckbares Zeichen, das einem hellen Pixel entspricht. Wenn ein Brauch gestalten wird genutzt, Spalten und
Reihen ignoriert, sondern die Anzahl bzw. Spalten und Zeilen der gelesenen Datei übernommen.

Der Standardwert für struct_el ist "3x3+0x0/Rechteck".

nb_iterationen gibt an, wie oft die Transformation auf das Bild angewendet wird, und
standardmäßig auf 1.

Einige Beispiele:

# Verwenden Sie die Standardwerte
ocv=dilatieren

# Dilatieren Sie mit einem strukturierenden Element mit einem 5x5-Kreuz, das zweimal iteriert
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# Lesen Sie die Form aus der Datei diamond.shape, und wiederholen Sie sie zweimal.
# Die Datei diamant.shape kann ein solches Zeichenmuster enthalten
# *
#***
#*****
#***
# *
# Die angegebenen Spalten und Zeilen werden ignoriert
# aber die Ankerpunktkoordinaten sind nicht
ocv=dilate:0x0+2x2/custom=diamond.shape|2

erodieren

Erodieren Sie ein Bild, indem Sie ein bestimmtes Strukturierungselement verwenden. Es entspricht der libopencv
Funktion "cvErode".

Es akzeptiert die Parameter: struct_el:nb_iterationen, mit der gleichen Syntax und Semantik wie
erweitern Filter.

glätten

Glätten Sie das Eingangsvideo.

Der Filter nimmt die folgenden Parameter an: tippe|param1|param2|param3|param4.

tippe ist der anzuwendende Glättungsfiltertyp und muss einer der folgenden Werte sein:
"blur", "blur_no_scale", "median", "gaußian" oder "bilateral". Der Standardwert ist
"Gaußisch".

Die Bedeutung von param1, param2, param3 und param4 hängen vom glatten Typ ab. param1 und
param2 akzeptieren ganzzahlige positive Werte oder 0. param3 und param4 Gleitkomma akzeptieren
Werte.

Der Standardwert für param1 ist 3. Der Standardwert für die anderen Parameter ist 0.

Diese Parameter entsprechen den Parametern, die der libopencv-Funktion zugewiesen sind
"cvSmooth".

Auflage
Überlagern Sie ein Video über ein anderes.

Es braucht zwei Eingänge und hat einen Ausgang. Der erste Eingang ist das "Haupt"-Video, auf dem die
zweiter Eingang wird überlagert.

Es akzeptiert die folgenden Parameter:

Eine Beschreibung der akzeptierten Optionen folgt.

x
y Legen Sie den Ausdruck für die x- und y-Koordinaten des überlagerten Videos auf dem Hauptbildschirm fest
Video. Der Standardwert ist für beide Ausdrücke "0". Falls der Ausdruck ungültig ist,
es ist auf einen großen Wert eingestellt (was bedeutet, dass das Overlay nicht innerhalb des
Ausgabe sichtbarer Bereich).

eof_action
Die Aktion, die ausgeführt werden soll, wenn EOF an der sekundären Eingabe auftritt; es akzeptiert einen von
folgende Werte:

wiederholen
Wiederholen Sie den letzten Frame (Standardeinstellung).

Beende alles
Beende beide Streams.

passieren
Leiten Sie den Haupteingang durch.

eval
Legen Sie fest, wann die Ausdrücke für x und y bewertet werden.

Es akzeptiert die folgenden Werte:

init
werte Ausdrücke nur einmal während der Filterinitialisierung aus oder wenn ein Befehl
wird verarbeitet

Rahmen
werte Ausdrücke für jeden eingehenden Frame aus

Standardwert ist Rahmen.

kürzeste
Wenn auf 1 gesetzt, erzwingen Sie, dass die Ausgabe beendet wird, wenn die kürzeste Eingabe endet. Standard
Wert ist 0.

Format
Legen Sie das Format für das Ausgabevideo fest.

Es akzeptiert die folgenden Werte:

yuv420
YUV420-Ausgang erzwingen

yuv422
YUV422-Ausgang erzwingen

yuv444
YUV444-Ausgang erzwingen

RGB RGB-Ausgabe erzwingen

Standardwert ist yuv420.

RGB (veraltet)
Wenn auf 1 gesetzt, wird der Filter gezwungen, Eingaben im RGB-Farbraum zu akzeptieren. Standardwert
ist 0. Diese Option ist veraltet, verwenden Sie Format stattdessen.

wiederholen
Wenn der Wert auf 1 gesetzt ist, zwingt Sie den Filter, den letzten Overlay-Frame über den Haupteingang zu zeichnen, bis
das Ende des Streams. Ein Wert von 0 deaktiviert dieses Verhalten. Der Standardwert ist 1.

Das x und y Ausdrücke können die folgenden Parameter enthalten.

main_w, W
main_h, H
Breite und Höhe der Haupteingabe.

overlay_w, w
overlay_h, h
Die Overlay-Eingabebreite und -höhe.

x
y Die berechneten Werte für x und y. Sie werden für jeden neuen Frame ausgewertet.

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte des Ausgabeformats. Zum Beispiel für
das Pixelformat "yuv422p" hsub ist 2 und vssub ist 1.

n die Anzahl der Eingaberahmen, beginnend bei 0

Post die Position in der Datei des Eingabeframes, NAN falls unbekannt

t Der Zeitstempel, ausgedrückt in Sekunden. Es ist NAN, wenn der Eingabezeitstempel unbekannt ist.

Beachten Sie, dass die n, Post, t Variablen sind nur verfügbar, wenn die Auswertung abgeschlossen ist für Rahmen,
und wird zu NAN ausgewertet, wenn eval eingestellt ist init.

Beachten Sie, dass die Frames von jedem Eingangsvideo in der Zeitstempelreihenfolge genommen werden, daher, wenn ihre
Anfangszeitstempel unterschiedlich sind, ist es eine gute Idee, die beiden Eingaben über a . zu übergeben
setpts=PTS-STARTPTS filtern, damit sie mit demselben Nullzeitstempel beginnen, wie im Beispiel
für die Film Filter tut.

Sie können mehrere Overlays verketten, sollten jedoch die Effizienz eines solchen Ansatzes testen.

Befehle

Dieser Filter unterstützt die folgenden Befehle:

x
y Ändern Sie x und y der Overlay-Eingabe. Der Befehl akzeptiert die gleiche Syntax wie der
entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

Beispiele

· Zeichnen Sie das Overlay 10 Pixel von der unteren rechten Ecke des Hauptvideos:

overlay=main_w-overlay_w-10:main_h-overlay_h-10

Mit benannten Optionen wird das obige Beispiel zu:

overlay=x=main_w-overlay_w-10:y=main_h-overlay_h-10

· Fügen Sie ein transparentes PNG-Logo in der unteren linken Ecke der Eingabe ein, indem Sie die ffmpeg
Tool mit der Option "-filter_complex":

ffmpeg -i Eingabe -i Logo -filter_complex 'overlay=10:main_h-overlay_h-10' Ausgabe

· Fügen Sie 2 verschiedene transparente PNG-Logos ein (zweites Logo in der unteren rechten Ecke) mit
ffmpeg Tool:

ffmpeg -i Eingabe -i Logo1 -i Logo2 -filter_complex 'overlay=x=10:y=Hh-10,overlay=x=Ww-10:y=Hh-10' Ausgabe

· Fügen Sie eine transparente Farbebene über dem Hauptvideo hinzu; "BxH" muss die Größe von . angeben
der Haupteingang zum Overlay-Filter:

[E-Mail geschützt] :size=BxH [über]; [in][over] Overlay [out]

· Spielen Sie ein Originalvideo und eine gefilterte Version (hier mit dem Deshake-Filter) nebeneinander ab
Seite mit der ffplay Tool:

ffplay input.avi -vf 'split[a][b]; [a]pad=iw*2:ih[src]; [b]entrütteln[filtrieren]; [src][filt]overlay=w'

Der obige Befehl ist der gleiche wie:

ffplay input.avi -vf 'split[b], pad=iw*2[src], [b]deshake, [src]overlay=w'

· Lassen Sie eine gleitende Überlagerung vom linken zum rechten oberen Teil des Bildschirms erscheinen
ab Zeitpunkt 2:

overlay=x='if(gte(t,2), -w+(t-2)*20, NAN)':y=0

· Verfassen Sie die Ausgabe, indem Sie zwei Eingabevideos nebeneinander platzieren:

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc=size=200x100 [Hintergrund];
[0:v] setpts=PTS-STARTPTS, scale=100x100 [links];
[1:v] setpts=PTS-STARTPTS, scale=100x100 [rechts];
[Hintergrund][Links] Overlay=kürzeste=1 [Hintergrund+Links];
[Hintergrund+links][rechts] Overlay=kürzeste=1:x=100 [links+rechts]
"

· Maskieren Sie 10-20 Sekunden eines Videos, indem Sie den Delogo-Filter auf einen Abschnitt anwenden

ffmpeg -i test.avi -codec:v:0 wmv2 -ar 11025 -b:v 9000k
-vf '[in]split[split_main][split_delogo];[split_delogo]trim=start=360:end=371,delogo=0:0:640:480[delogoed];[split_main][delogoed]overlay=eof_action=pass[out]'
maskiert.avi

· Mehrere Overlays in Kaskade verketten:

nullsrc=s=200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb=r=0, [bg] Überlagerung=0:0 [mid0];
[in1] lutrgb=g=0, [mid0] Overlay=100:0 [mid1];
[in2] lutrgb=b=0, [mid1] Overlay=0:100 [mid2];
[in3] null, [mid2] Overlay=100:100 [out0]

Owdenoise
Wenden Sie den Overcomplete Wavelet-Denoiser an.

Der Filter akzeptiert die folgenden Optionen:

Tiefe
Tiefe einstellen.

Größere Tiefenwerte entrauschen niedrigere Frequenzkomponenten stärker, verlangsamen jedoch
Filterung.

Muss ein int im Bereich von 8-16 sein, der Standardwert ist 8.

luma_stärke, ls
Stellen Sie die Luma-Stärke ein.

Muss ein Double-Wert im Bereich von 0-1000 sein, der Standardwert ist 1.0.

Chroma_Stärke, cs
Stellen Sie die Chroma-Stärke ein.

Muss ein Double-Wert im Bereich von 0-1000 sein, der Standardwert ist 1.0.

Unterlage
Fügen Sie dem Eingabebild Abstände hinzu und platzieren Sie die ursprüngliche Eingabe an der bereitgestellten x, y
Koordinaten.

Es akzeptiert die folgenden Parameter:

Breite, w
Höhe, h
Geben Sie einen Ausdruck für die Größe des Ausgabebilds mit den hinzugefügten Auffüllungen an. Wenn die
Wert für Breite or Höhe 0 ist, wird die entsprechende Eingabegröße für die Ausgabe verwendet.

Das Breite Ausdruck kann auf den Wert verweisen, der durch die Höhe Ausdruck und Laster
versa.

Der Standardwert von Breite und Höhe ist 0.

x
y Geben Sie die Versätze an, an denen das Eingabebild innerhalb des aufgefüllten Bereichs platziert werden soll
zum oberen/linken Rand des Ausgabebilds.

Das x Ausdruck kann auf den Wert verweisen, der durch die y Ausdruck und umgekehrt.

Der Standardwert von x und y ist 0.

Farbe
Geben Sie die Farbe des aufgefüllten Bereichs an. Die Syntax dieser Option finden Sie unter "Farbe".
Abschnitt im ffmpeg-utils-Handbuch.

Der Standardwert von Farbe ist schwarz".

Der Wert für die Breite, Höhe, x und y Optionen sind Ausdrücke, die Folgendes enthalten
Konstanten:

in_w
in_h
Die Breite und Höhe des Eingangsvideos.

iw
ih Das sind die gleichen wie in_w und in_h.

aus_w
aus_h
Die Ausgabebreite und -höhe (die Größe des aufgefüllten Bereichs), wie durch die Breite
und Höhe Ausdrücke.

ow
oh Das sind die gleichen wie aus_w und aus_h.

x
y Die x- und y-Offsets, wie durch die x und y Ausdrücke, oder NAN, wenn noch nicht
spezifiziert.

a wie iw / ih

sar Seitenverhältnis des Eingabebeispiels

geben das Seitenverhältnis der Eingabeanzeige ist dasselbe wie (iw / ih) * sar

hsub
vssub
Die horizontalen und vertikalen Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

Beispiele

· Füllen Sie das Eingabevideo mit der Farbe "Violett" auf. Die Ausgabevideogröße ist
640x480, und die obere linke Ecke des Eingabevideos wird in Spalte 0, Zeile 40 . platziert

pad=640:480:0:40:violett

Das obige Beispiel entspricht dem folgenden Befehl:

pad=width=640:height=480:x=0:y=40:color=violett

· Füllen Sie die Eingabe auf, um eine Ausgabe mit um 3/2 vergrößerten Dimensionen zu erhalten, und setzen Sie die Eingabe
Video in der Mitte des gepolsterten Bereichs:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· Füllen Sie die Eingabe auf, um eine quadrierte Ausgabe zu erhalten, deren Größe dem Maximalwert zwischen den entspricht
Geben Sie Breite und Höhe ein und platzieren Sie das Eingabevideo in der Mitte des aufgefüllten Bereichs:

pad="max(iw\,ih):ow:(ow-iw)/2:(oh-ih)/2"

· Füllen Sie die Eingabe auf, um ein endgültiges W/H-Verhältnis von 16:9 zu erhalten:

pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2"

· Im Falle von anamorphotischem Video, um das Ausgabeanzeige-Seitenverhältnis richtig einzustellen,
ist notwendig zu verwenden sar im Ausdruck nach der Beziehung:

(ih * X / ih) * sar = ausgabe_dar
X = Ausgabe_dar / sar

Daher muss das vorherige Beispiel geändert werden, um:

pad="ih*16/9/sar:ih:(ow-iw)/2:(oh-ih)/2"

· Verdoppeln Sie die Ausgabegröße und platzieren Sie das Eingabevideo in der unteren rechten Ecke des
Ausgabe gepolsterter Bereich:

pad="2*iw:2*ih:ow-iw:oh-ih"

paletten
Generieren Sie eine Palette für einen ganzen Videostream.

Es akzeptiert die folgenden Optionen:

max_farben
Legen Sie die maximale Anzahl von Farben für die Quantisierung in der Palette fest. Hinweis: Die Palette wird
enthalten noch 256 Farben; die unbenutzten Paletteneinträge sind schwarz.

Reserve_transparent
Erstellen Sie eine Palette von maximal 255 Farben und reservieren Sie die letzte für Transparenz.
Das Reservieren der Transparenzfarbe ist für die GIF-Optimierung nützlich. Wenn nicht eingestellt, wird die
Die maximale Anzahl von Farben in der Palette beträgt 256. Sie möchten diese Option wahrscheinlich deaktivieren
für ein eigenständiges Bild. Standardmäßig eingestellt.

stats_mode
Statistikmodus einstellen.

Es akzeptiert die folgenden Werte:

voller
Berechnen Sie Vollbild-Histogramme.

diff
Berechnen Sie Histogramme nur für den Teil, der sich vom vorherigen Frame unterscheidet. Das könnte
relevant sein, um dem beweglichen Teil Ihrer Eingabe mehr Bedeutung zu verleihen, wenn die
Hintergrund ist statisch.

Standardwert ist voller.

Der Filter exportiert auch die Frame-Metadaten "lavfi.color_quant_ratio" ("nb_color_in /
nb_color_out"), mit dem Sie den Grad der Farbquantisierung der
Palette. Diese Informationen sind auch sichtbar unter Info Protokollierungsebene.

Beispiele

· Erstellen Sie eine repräsentative Palette eines bestimmten Videos mit ffmpeg:

ffmpeg -i input.mkv -vf palettegen palette.png

Palettennutzung
Verwenden Sie eine Palette, um einen Eingangsvideostream herunterzurechnen.

Der Filter benötigt zwei Eingaben: einen Videostream und eine Palette. Die Palette muss ein 256 . sein
Pixel Bild.

Es akzeptiert die folgenden Optionen:

Dithering
Wählen Sie den Dithering-Modus. Verfügbare Algorithmen sind:

bayer
Bestelltes 8x8 Bayer Dithering (deterministisch)

Heckbert
Dithering nach Paul Heckbert 1982 (einfache Fehlerdiffusion). Notiz:
dieses Dithering wird manchmal als "falsch" angesehen und als Referenz angegeben.

floyd_steinberg
Floyd- und Steingberg-Dithering (Fehlerdiffusion)

sierra2
Frankie Sierra Dithering v2 (Fehlerdiffusion)

sierra2_4a
Frankie Sierra Dithering v2 "Lite" (Fehlerdiffusion)

Standardeinstellung ist sierra2_4a.

bayer_waage
Wann bayer Dithering ausgewählt ist, definiert diese Option die Skalierung des Musters (wie
viel das Schraffurmuster ist sichtbar). Ein niedriger Wert bedeutet sichtbareres Muster für
weniger Streifenbildung, und ein höherer Wert bedeutet weniger sichtbares Muster auf Kosten von mehr Streifenbildung.

Die Option muss ein ganzzahliger Wert im Bereich [0,5] sein. Standard ist 2.

diff_mode
Falls eingestellt, definieren Sie die zu verarbeitende Zone

Rechteck
Nur das sich ändernde Rechteck wird erneut verarbeitet. Dies ist ähnlich wie bei GIF
Beschneidungs-/Offset-Kompressionsmechanismus. Diese Option kann für die Geschwindigkeit nützlich sein, wenn
nur ein Teil des Bildes ändert sich und hat Anwendungsfälle wie die Begrenzung des Umfangs
der Fehlerdiffusion Dithering auf das Rechteck, das die bewegte Szene begrenzt (es
führt zu einer deterministischen Ausgabe, wenn sich die Szene nicht viel ändert, und wie
Ergebnis weniger Bewegungsrauschen und bessere GIF-Komprimierung).

Standardeinstellung ist keine.

Beispiele

· Verwenden Sie eine Palette (erzeugt zum Beispiel mit paletten) um ein GIF mit zu codieren ffmpeg:

ffmpeg -i input.mkv -i palette.png -lavfi paletteuse output.gif

Perspektive
Korrekte Perspektive des Videos, das nicht senkrecht zum Bildschirm aufgenommen wurde.

Eine Beschreibung der akzeptierten Parameter folgt.

x0
y0
x1
y1
x2
y2
x3
y3 Koordinatenausdruck für oben links, oben rechts, unten links und unten rechts festlegen
Ecken. Standardwerte sind "0:0:W:0:0:H:W:H", mit der Perspektive bleibt
unverändert. Wenn die Option "sense" auf "source" gesetzt ist, werden die angegebenen Punkte
in die Ecken des Ziels geschickt werden. Wenn die Option "Sinn" auf eingestellt ist
"Ziel", dann werden die Ecken der Quelle an das angegebene gesendet
Koordinaten.

Die Ausdrücke können die folgenden Variablen verwenden:

W
H die Breite und Höhe des Videorahmens.

Interpolation
Stellen Sie die Interpolation für die Perspektivenkorrektur ein.

Es akzeptiert die folgenden Werte:

linear
kubisch

Standardwert ist linear.

Sinn
Legen Sie die Interpretation der Koordinatenoptionen fest.

Es akzeptiert die folgenden Werte:

0, Quelle
Punkt in der durch die angegebenen Koordinaten angegebenen Quelle an die Ecken des senden
Ziel.

1, Reiseziel
Senden Sie die Ecken der Quelle an den Punkt im Ziel, der durch die
Koordinaten gegeben.

Standardwert ist Quelle.

Phase
Interlaced-Video um eine Halbbildzeit verzögern, damit sich die Halbbildreihenfolge ändert.

Der Verwendungszweck besteht darin, PAL-Filme zu reparieren, die mit dem entgegengesetzten Halbbild aufgenommen wurden
Auftrag zur Film-zu-Video-Übertragung.

Eine Beschreibung der akzeptierten Parameter folgt.

Modus
Phasenmodus einstellen.

Es akzeptiert die folgenden Werte:

t Feldreihenfolge oben-zuerst erfassen, unten-zuerst übertragen. Filter verzögert die
unteres Feld.

b Feldreihenfolge unten-zuerst erfassen, oben-zuerst übertragen. Filter verzögert die Spitze
Feld.

p Erfassen und übertragen Sie mit derselben Feldreihenfolge. Dieser Modus existiert nur für die
Dokumentation der anderen Optionen, auf die Sie verweisen können, aber wenn Sie sie tatsächlich auswählen, wird die
Filter wird treu nichts tun.

a Feldreihenfolge erfassen automatisch durch Feldflags bestimmt, Übergabe gegenüber.
Filter wählt zwischen t und b Modi auf einer Frame-für-Frame-Basis unter Verwendung von Feld-Flags. Wenn
keine Feldinformationen vorhanden sind, dann funktioniert das genauso wie u.

u Unbekannt oder variierend erfassen, gegenüber übertragen. Filter wählt zwischen t und b auf einem
Frame für Frame Basis, indem Sie die Bilder analysieren und die Alternative auswählen, die
ergibt die beste Übereinstimmung zwischen den Feldern.

T Erfassen Sie oben zuerst, übertragen Sie unbekannte oder variierende. Filter wählt zwischen t und p
mittels Bildanalyse.

B Unten zuerst erfassen, unbekannt oder variierend übertragen. Filter wählt zwischen b und p
mittels Bildanalyse.

A Erfassung durch Feldflags bestimmt, Übertragung unbekannt oder schwankend. Filterauswahl
unter t, b und p mit Feldflaggen und Bildanalyse. Wenn keine Feldinformationen vorhanden sind
vorhanden, dann funktioniert das genauso U. Dies ist der Standardmodus.

U Beide erfassen und übertragen unbekannt oder variieren. Filter wählt zwischen t, b und p
nur mit Bildanalyse.

Pixeltest
Testfilter für Pixelformatdeskriptoren, hauptsächlich nützlich für interne Tests. Das Ausgabevideo
sollte gleich dem Eingangsvideo sein.

Beispielsweise:

format=monow, pixdesctest

kann verwendet werden, um die Deskriptordefinition des monoweißen Pixelformats zu testen.

pp
Aktivieren Sie die angegebene Kette von Nachverarbeitungs-Subfiltern mit libpostproc. Diese Bibliothek
sollte bei einem GPL-Build automatisch ausgewählt werden ("--enable-gpl"). Unterfilter müssen sein
durch '/' getrennt und kann durch Voranstellen eines '-' deaktiviert werden. Jeder Unterfilter und einige Optionen
haben einen kurzen und einen langen Namen, die austauschbar verwendet werden können, dh dr/dering sind die
Gleiche.

Die Filter akzeptieren die folgenden Optionen:

Unterfilter
Zeichenfolge für Nachbearbeitungs-Subfilter festlegen.

Alle Unterfilter haben gemeinsame Optionen, um ihren Umfang zu bestimmen:

a/autoq
Beachten Sie die Qualitätsbefehle für diesen Unterfilter.

c/chrom
Führen Sie auch eine Chrominanzfilterung durch (Standard).

y/nochrom
Führen Sie nur Luminanzfilterung durch (keine Chrominanz).

n/noluma
Führen Sie nur die Chrominanzfilterung durch (keine Luminanz).

Diese Optionen können nach dem Subfilternamen, getrennt durch ein '|', angehängt werden.

Verfügbare Unterfilter sind:

hb/hdeblock[|Unterschied[|Flachheit]]
Horizontaler Deblocking-Filter

Unterschied
Differenzfaktor, bei dem höhere Werte mehr Deblocking bedeuten (Standard: 32).

Ebenheit
Flatness-Schwellenwert, bei dem niedrigere Werte mehr Deblocking bedeuten (Standard: 39).

vb/vdeblock[|Unterschied[|Flachheit]]
Vertikaler Entblockungsfilter

Unterschied
Differenzfaktor, bei dem höhere Werte mehr Deblocking bedeuten (Standard: 32).

Ebenheit
Flatness-Schwellenwert, bei dem niedrigere Werte mehr Deblocking bedeuten (Standard: 39).

ha/hadeblock[|Unterschied[|Flachheit]]
Genauer horizontaler Deblocking-Filter

Unterschied
Differenzfaktor, bei dem höhere Werte mehr Deblocking bedeuten (Standard: 32).

Ebenheit
Flatness-Schwellenwert, bei dem niedrigere Werte mehr Deblocking bedeuten (Standard: 39).

va/vadeblock[|Unterschied[|Flachheit]]
Genauer vertikaler Deblocking-Filter

Unterschied
Differenzfaktor, bei dem höhere Werte mehr Deblocking bedeuten (Standard: 32).

Ebenheit
Flatness-Schwellenwert, bei dem niedrigere Werte mehr Deblocking bedeuten (Standard: 39).

Die horizontalen und vertikalen Deblocking-Filter teilen sich die Differenz- und Flachheitswerte, so dass
Sie können keine unterschiedlichen horizontalen und vertikalen Schwellenwerte einstellen.

h1/x1hdeblock
Experimenteller horizontaler Deblocking-Filter

v1/x1vdeblock
Experimenteller vertikaler Deblocking-Filter

dr/dering
Deringing-Filter

tn/tmpnoise[|schwelle1[|schwelle2[|schwelle3]]], temporäre Lärm Reduzierstück
Schwelle1
größer -> stärkere Filterung

Schwelle2
größer -> stärkere Filterung

Schwelle3
größer -> stärkere Filterung

al/autolevels[:f/fullrange], maschinell Helligkeit / Kontrast Korrektur
f/Fullrange
Luminanz auf "0-255" dehnen.

lb/linblenddeint
Linear Blend-Deinterlacing-Filter, der den gegebenen Block deinterlaced, indem er alle filtert
Zeilen mit einem "(1 2 1)"-Filter.

li/linipoldeint
Linear interpolierender Deinterlacing-Filter, der den gegebenen Block um deinterlaced
lineare Interpolation jeder zweiten Zeile.

ci/cubicipoldeint
Kubisch interpolierender Deinterlacing-Filter deinterlaced den gegebenen Block um kubisch
jede zweite Zeile interpolieren.

md/mediandeint
Median-Deinterlacing-Filter, der den gegebenen Block durch Anwenden eines Medians deinterlaced
auf jede zweite Zeile filtern.

fd/ffmpegdeint
FFmpeg-Deinterlacing-Filter, der den gegebenen Block deinterlaced, indem er alle filtert
zweite Zeile mit einem "(-1 4 2 4 -1)"-Filter.

l5/Tiefpass5
Vertikal angewendeter FIR-Tiefpass-Deinterlacing-Filter, der den gegebenen Block deinterlaced
indem alle Zeilen mit einem "(-1 2 6 2 -1)"-Filter gefiltert werden.

fq/forceQuant[|Quantisierer]
Überschreibt die Quantisierertabelle aus der Eingabe mit dem von Ihnen angegebenen konstanten Quantisierer.

Quantisierer
Quantisierer zu verwenden

de/Standard
Standard-PP-Filterkombination ("hb|a,vb|a,dr|a")

fa/schnell
Schnelle pp-Filterkombination ("h1|a,v1|a,dr|a")

ac Hochwertige PP-Filterkombination ("ha|a|128|7,va|a,dr|a")

Beispiele

· Wenden Sie horizontales und vertikales Deblocking, Deringing und automatische Helligkeit/Kontrast an:

pp=hb/vb/dr/al

· Standardfilter ohne Helligkeits-/Kontrastkorrektur anwenden:

pp=de/-al

· Standardfilter und Temporal Denoiser anwenden:

pp=default/tmpnoise|1|2|3

· Deblocking nur auf Luminanz anwenden und vertikales Deblocking ein- oder ausschalten
automatisch je nach verfügbarer CPU-Zeit:

pp=hb|y/vb|a

pp7
Nachbearbeitungsfilter anwenden 7. Es ist eine Variante des spp Filter, ähnlich spp = 6 mit 7
Punkt-DCT, wo nur die mittlere Stichprobe nach der IDCT verwendet wird.

Der Filter akzeptiert die folgenden Optionen:

qp Erzwinge einen konstanten Quantisierungsparameter. Es akzeptiert eine ganze Zahl im Bereich von 0 bis 63. Wenn
nicht gesetzt, verwendet der Filter die QP aus dem Videostream (sofern verfügbar).

Modus
Legen Sie den Schwellenwertmodus fest. Verfügbare Modi sind:

hart
Festlegen des Schwellenwerts.

weich
Weichen Schwellenwert einstellen (besserer Der-Ringing-Effekt, aber wahrscheinlich verschwommener).

mittlere
Legen Sie einen mittleren Schwellenwert fest (gute Ergebnisse, Standard).

Psnr
Ermitteln Sie den durchschnittlichen, maximalen und minimalen PSNR (Peak Signal to Noise Ratio) zwischen zwei
Eingabevideos.

Dieser Filter nimmt in der Eingabe zwei Eingabevideos auf, die erste Eingabe gilt als "Haupt"
Quelle und wird unverändert an die Ausgabe übergeben. Der zweite Eingang dient als "Referenz"
Video zur Berechnung des PSNR.

Beide Videoeingänge müssen dieselbe Auflösung und dasselbe Pixelformat haben, damit dieser Filter funktioniert
korrekt. Es wird auch davon ausgegangen, dass beide Eingänge die gleiche Anzahl von Frames haben, die
eins nach dem anderen verglichen.

Der erhaltene durchschnittliche PSNR wird über das Protokollierungssystem gedruckt.

Der Filter speichert den akkumulierten MSE (Mean Squared Error) jedes Frames und am Ende
der Verarbeitung wird über alle Frames gleichmäßig gemittelt, und die folgende Formel lautet
beantragt, um die PSNR zu erhalten:

PSNR = 10*log10(MAX^2/MSE)

Wobei MAX der Durchschnitt der Maximalwerte jeder Komponente des Bildes ist.

Die Beschreibung der akzeptierten Parameter folgt.

Statistikdatei, f
Wenn angegeben, verwendet der Filter die benannte Datei, um die PSNR jeder Person zu speichern
Rahmen.

Die Datei wird gedruckt, wenn Statistikdatei ausgewählt ist, enthält eine Folge von Schlüssel/Wert-Paaren der
unten stehende Formular Schlüssel:Wert für jedes verglichene Paar von Frames.

Es folgt eine Beschreibung jedes angezeigten Parameters:

n fortlaufende Nummer des Eingaberahmens, beginnend bei 1

mse_avg
Mittlerer quadratischer Fehler Pixel-für-Pixel-Durchschnittsdifferenz der verglichenen Frames, gemittelt
über alle Bildkomponenten.

mse_y, mse_u, mse_v, mse_r, mse_g, mse_g, mse_a
Mittlerer quadratischer Fehler Pixel-für-Pixel-Durchschnittsdifferenz der verglichenen Frames für die
durch das Suffix angegebene Komponente.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
Peak-Signal-Rausch-Verhältnis der verglichenen Frames für die Komponente, die durch die
Suffix.

Beispielsweise:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [main];
[main][ref] psnr="stats_file=stats.log" [out]

In diesem Beispiel wird die verarbeitete Eingabedatei mit der Referenzdatei verglichen
ref_movie.mpg. Das PSNR jedes einzelnen Frames wird gespeichert in stats.log.

Pullup
Pulldown-Umkehrfilter (inverses Telecine), geeignet für gemischte Hard-Telecine,
24000/1001 fps progressive und 30000/1001 fps progressive Inhalte.

Der Pullup-Filter wurde entwickelt, um bei seinen Entscheidungen den zukünftigen Kontext zu nutzen.
Dieser Filter ist zustandslos in dem Sinne, dass er sich nicht an ein zu verfolgendes Muster festhält, aber
es freut sich stattdessen auf die folgenden Felder, um Übereinstimmungen zu identifizieren und neu aufzubauen
progressive Frames.

Um Inhalte mit einer gleichmäßigen Framerate zu produzieren, fügen Sie den fps-Filter nach dem Pullup ein, verwenden Sie
"fps=24000/1001", wenn die Eingabebildrate 29.97fps beträgt, "fps=24" für 30fps und die (seltene)
telecined 25fps-Eingang.

Der Filter akzeptiert die folgenden Optionen:

jl
jr
jt
jb Diese Optionen legen fest, wie viel "Junk" links, rechts, oben und unten ignoriert wird
des Bildes bzw. Links und rechts sind in Einheiten von 8 Pixeln, während oben und
unten sind in Einheiten von 2 Zeilen. Der Standardwert beträgt 8 Pixel auf jeder Seite.

sb Legen Sie die strikten Pausen fest. Wenn Sie diese Option auf 1 setzen, wird die Wahrscheinlichkeit eines Filters verringert
gelegentlich einen nicht übereinstimmenden Frame erzeugen, aber es kann auch eine übermäßige Anzahl verursachen
von Frames, die während High-Motion-Sequenzen ausgelassen werden sollen. Umgekehrt auf -1 . einstellen
wird Filter-Match-Felder einfacher machen. Dies kann bei der Verarbeitung von Videos helfen, wenn
es gibt eine leichte Unschärfe zwischen den Halbbildern, kann aber auch zu Zeilensprung führen
Frames in der Ausgabe. Der Standardwert ist 0.

mp Legen Sie die zu verwendende metrische Ebene fest. Es akzeptiert die folgenden Werte:

l Verwenden Sie die Luma-Ebene.

u Verwenden Sie Chroma-Blau-Ebene.

v Verwenden Sie Chroma-Rot-Ebene.

Diese Option kann so eingestellt werden, dass die Chroma-Ebene anstelle der Standard-Luma-Ebene verwendet wird
Berechnungen des Filters. Dies kann die Genauigkeit bei sehr sauberem Quellmaterial verbessern, aber
wahrscheinlicher wird die Genauigkeit verringert, insbesondere wenn Chroma-Rauschen (Regenbogen
Effekt) oder ein beliebiges Graustufenvideo. Der Hauptzweck der Einstellung mp zu einer Chroma-Ebene ist
um die CPU-Last zu reduzieren und Pullup in Echtzeit auf langsamen Maschinen nutzbar zu machen.

Für beste Ergebnisse (ohne duplizierte Frames in der Ausgabedatei) ist eine Änderung erforderlich
die Ausgabe-Framerate. Um beispielsweise den Telecine-NTSC-Eingang umzukehren:

ffmpeg -i Eingabe -vf pullup -r 24000/1001 ...

qp
Ändern Sie die Videoquantisierungsparameter (QP).

Der Filter akzeptiert die folgende Option:

qp Ausdruck für Quantisierungsparameter einstellen.

Der Ausdruck wird über die eval API ausgewertet und kann unter anderem die
folgende Konstanten:

bekannt
1 wenn Index nicht 129 ist, sonst 0.

qp Sequenzieller Index von -129 bis 128.

Beispiele

· Einige Gleichungen wie:

qp=2+2*sin(PI*qp)

zufällig
Leeren Sie Videoframes aus dem internen Cache von Frames in eine zufällige Reihenfolge. Kein Rahmen ist
verworfen. Inspiriert von frei0r Nervenfilter.

Rahmen
Legen Sie die Größe in der Anzahl der Frames des internen Caches im Bereich von 2 bis 512 fest. Der Standardwert ist 30.

Samen
Seed für Zufallszahlengenerator setzen, muss eine ganze Zahl zwischen 0 und sein
"UINT32_MAX". Wenn nicht angegeben oder explizit auf weniger als 0 gesetzt, wird der Filter
versuchen Sie, einen guten Zufalls-Seed nach bestem Bemühen zu verwenden.

Korn entfernen
Der Removegrain-Filter ist ein räumlicher Entrauscher für progressives Video.

m0 Set-Modus für die erste Ebene.

m1 Set-Modus für die zweite Ebene.

m2 Set-Modus für die dritte Ebene.

m3 Set-Modus für die vierte Ebene.

Der Modusbereich reicht von 0 bis 24. Die Beschreibung jedes Modus folgt:

0 Lassen Sie die Eingabeebene unverändert. Standard.

1 Beschneidet das Pixel mit dem Minimum und Maximum der 8 Nachbarpixel.

2 Beschneidet das Pixel mit dem zweiten Minimum und Maximum der 8 Nachbarpixel.

3 Beschneidet das Pixel mit dem dritten Minimum und Maximum der 8 Nachbarpixel.

4 Beschneidet das Pixel mit dem vierten Minimum und Maximum der 8 Nachbarpixel. Dies
entspricht einem Medianfilter.

5 Liniensensitives Clipping mit minimaler Veränderung.

6 Zeilensensitives Clipping, intermediär.

7 Zeilensensitives Clipping, intermediär.

8 Zeilensensitives Clipping, intermediär.

9 Zeilensensitives Clipping auf einer Zeile, bei der die Nachbarpixel am nächsten sind.

10 Ersetzt das Zielpixel durch den nächsten Nachbarn.

11 [1 2 1] horizontale und vertikale Kernel-Unschärfe.

12 Wie Modus 11.

13 Bob-Modus, interpoliert das obere Halbbild von der Zeile, in der die Nachbarpixel die sind
am nächsten.

14 Bob-Modus, interpoliert das untere Halbbild von der Zeile, in der die Nachbarpixel die sind
am nächsten.

15 Bob-Modus, interpoliert das obere Halbbild. Wie 13, jedoch mit komplizierterer Interpolation
Formel.

16 Bob-Modus, interpoliert unteres Halbbild. Wie 14, aber mit einem komplizierteren
Interpolationsformel.

17 Beschneidet das Pixel mit dem Minimum und Maximum bzw. dem Maximum und Minimum
jedes Paares gegenüberliegender Nachbarpixel.

18 Zeilensensitives Clipping mit gegenüberliegenden Nachbarn, deren größter Abstand zum
aktuelle Pixel ist minimal.

19 Ersetzt das Pixel durch den Durchschnitt seiner 8 Nachbarn.

20 Mittelt die 9 Pixel ([1 1 1] horizontale und vertikale Unschärfe).

21 Beschneidet Pixel unter Verwendung der Mittelwerte des gegenüberliegenden Nachbarn.

22 Wie Modus 21, aber einfacher und schneller.

23 Entfernung kleiner Kanten und Lichthöfe, aber angeblich nutzlos.

24 Ähnlich wie 23.

Logo entfernen
Unterdrücken Sie ein TV-Sender-Logo, indem Sie eine Bilddatei verwenden, um zu bestimmen, aus welchen Pixeln die . besteht
Logo. Es funktioniert, indem es die Pixel, aus denen das Logo besteht, mit benachbarten Pixeln auffüllt.

Der Filter akzeptiert die folgenden Optionen:

Dateiname, f
Legen Sie die Filter-Bitmap-Datei fest, die ein beliebiges Bildformat sein kann, das von libavformat unterstützt wird.
Breite und Höhe der Bilddatei müssen denen des Videostreams entsprechen
verarbeitet.

Pixel im bereitgestellten Bitmap-Bild mit einem Wert von Null werden nicht als Teil des
Logo, Pixel ungleich null werden als Teil des Logos betrachtet. Wenn Sie Weiß (255) für das Logo verwenden
und schwarz (0) für den Rest sind Sie in Sicherheit. Um die Filter-Bitmap zu erstellen, ist es
Es wird empfohlen, eine Bildschirmaufnahme eines schwarzen Rahmens mit sichtbarem Logo zu machen, und dann
unter Verwendung eines Schwellwertfilters gefolgt von dem Erodierfilter ein- oder zweimal.

Kleine Flecken können bei Bedarf manuell behoben werden. Denken Sie daran, wenn Logopixel dies nicht sind
abgedeckt, wird die Filterqualität stark reduziert. Markieren von zu vielen Pixeln als Teil des
Logo tut nicht so weh, aber es erhöht die Unschärfe, die zum Abdecken benötigt wird
über dem Bild und zerstört mehr Informationen als nötig, und zusätzliche Pixel werden
verlangsamen Sie die Dinge auf einem großen Logo.

Wiederholungsfelder
Dieser Filter verwendet das Repeat_field-Flag aus den Video ES-Headern und den Feldern für harte Wiederholungen
basierend auf seinem Wert.

umkehren, umgekehrt
Einen Clip umkehren.

Warnung: Dieser Filter benötigt Speicher, um den gesamten Clip zu puffern, daher wird ein Trimmen empfohlen.

Beispiele

· Nehmen Sie die ersten 5 Sekunden eines Clips auf und kehren Sie ihn um.

trim=Ende=5,rückwärts

drehen
Video um einen beliebigen Winkel im Bogenmaß drehen.

Der Filter akzeptiert die folgenden Optionen:

Eine Beschreibung der optionalen Parameter folgt.

Winkel, a
Legen Sie einen Ausdruck für den Winkel fest, um den das Eingabevideo im Uhrzeigersinn gedreht werden soll,
ausgedrückt als eine Anzahl von Radianten. Ein negativer Wert führt zu einem Gegenuhrzeigersinn
Drehung. Standardmäßig ist es auf "0" eingestellt.

Dieser Ausdruck wird für jeden Frame ausgewertet.

aus_w, ow
Legen Sie den Ausdruck für die Ausgabebreite fest, der Standardwert ist "iw". Dieser Ausdruck wird ausgewertet
nur einmal während der Konfiguration.

aus_h, oh
Legen Sie den Ausdruck für die Ausgabehöhe fest, der Standardwert ist "ih". Dieser Ausdruck wird ausgewertet
nur einmal während der Konfiguration.

bilinear
Aktivieren Sie die bilineare Interpolation, wenn sie auf 1 gesetzt ist, ein Wert von 0 deaktiviert sie. Standardwert ist
1.

Füllfarbe, c
Legen Sie die Farbe fest, die zum Füllen des Ausgabebereichs verwendet wird, der nicht vom gedrehten Bild bedeckt ist. Für die
Allgemeine Syntax dieser Option finden Sie im Abschnitt "Farbe" im Handbuch zu ffmpeg-utils.
Wird der Sonderwert "keine" gewählt, wird kein Hintergrund gedruckt (nützlich für
Beispiel, wenn der Hintergrund nie angezeigt wird).

Standardwert ist "schwarz".

Die Ausdrücke für den Winkel und die Ausgabegröße können folgende Konstanten enthalten und
Funktionen:

n fortlaufende Nummer des Eingaberahmens, beginnend bei 0. Es ist immer NAN vor dem
erster Frame wird gefiltert.

t Zeit in Sekunden des Eingabeframes wird bei der Konfiguration des Filters auf 0 gesetzt. Es
ist immer NAN, bevor der erste Frame gefiltert wird.

hsub
vssub
horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

in_w, iw
in_h, ih
die Breite und Höhe des Eingangsvideos

aus_w, ow
aus_h, oh
die Ausgabebreite und -höhe, d. h. die Größe des aufgefüllten Bereichs, wie durch die
Breite und Höhe Ausdrücke

rotw(a)
roth(a)
die minimale Breite/Höhe, die erforderlich ist, um das um . gedrehte Eingabevideo vollständig zu enthalten
a Bogenmaß.

Diese sind nur verfügbar, wenn die Berechnung der aus_w und aus_h Ausdrücke.

Beispiele

· Drehen Sie den Eingang um PI/6 im Bogenmaß im Uhrzeigersinn:

drehen=PI/6

· Drehen Sie den Eingang um PI/6 im Bogenmaß gegen den Uhrzeigersinn:

rotieren=-PI/6

· Drehen Sie den Eingang um 45 Grad im Uhrzeigersinn:

drehen=45*PI/180

· Wenden Sie eine konstante Drehung mit der Periode T an, ausgehend von einem Winkel von PI/3:

drehen=PI/3+2*PI*t/T

· Bringen Sie die Eingangsvideodrehung in Schwingung mit einer Periode von T Sekunden und einer Amplitude
von A im Bogenmaß:

rotieren=A*sin(2*PI/T*t)

· Drehen Sie das Video, die Ausgabegröße wird so gewählt, dass das gesamte rotierende Eingabevideo
immer vollständig in der Ausgabe enthalten:

rotation='2*PI*t:ow=hypot(iw,ih):oh=ow'

· Drehen Sie das Video, reduzieren Sie die Ausgabegröße, sodass nie ein Hintergrund angezeigt wird:

rotieren=2*PI*t:ow='min(iw,ih)/sqrt(2)':oh=ow:c=none

Befehle

Der Filter unterstützt die folgenden Befehle:

a, Winkel
Stellen Sie den Winkelausdruck ein. Der Befehl akzeptiert die gleiche Syntax des entsprechenden
.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

sab
Wenden Sie die adaptive Unschärfe an.

Der Filter akzeptiert die folgenden Optionen:

luma_radius, lr
Stellen Sie die Luma-Unschärfe-Filterstärke ein, muss ein Wert im Bereich von 0.1 bis 4.0 sein, der Standardwert ist 1.0.
Ein größerer Wert führt zu einem verschwommeneren Bild und zu einer langsameren Verarbeitung.

luma_pre_filter_radius, lpfr
Luma-Vorfilterradius einstellen, muss ein Wert im Bereich von 0.1-2.0 sein, der Standardwert ist
1.0

luma_stärke, ls
Stellen Sie die maximale Luma-Differenz zwischen Pixeln ein, die noch berücksichtigt werden sollen, muss ein Wert in sein
im Bereich von 0.1-100.0, der Standardwert ist 1.0.

Farbradius, cr
Stellen Sie die Stärke des Chroma-Unschärfe-Filters ein, muss ein Wert im Bereich von 0.1 bis 4.0 sein. Ein größerer Wert
führt zu einem verschwommeneren Bild und zu einer langsameren Verarbeitung.

chroma_pre_filter_radius, cfr
Stellen Sie den Chroma-Vorfilterradius ein, muss ein Wert im Bereich von 0.1 bis 2.0 sein.

Chroma_Stärke, cs
Legen Sie die maximale Chroma-Differenz zwischen Pixeln fest, die noch berücksichtigt werden soll, muss ein Wert sein
im Bereich von 0.1-100.0.

Jeder Chroma-Optionswert wird, wenn nicht explizit angegeben, auf das entsprechende Luma gesetzt
Optionswert.

Treppe
Skalieren (Größenänderung) des Eingabevideos mithilfe der Bibliothek libswscale.

Der Skalierungsfilter erzwingt, dass das Seitenverhältnis der Ausgabeanzeige dem der Eingabe entspricht, um
Ändern des Seitenverhältnisses der Ausgabeprobe.

Wenn sich das Eingabebildformat von dem vom nächsten Filter angeforderten Format unterscheidet, wird die
Der Skalierungsfilter konvertiert die Eingabe in das angeforderte Format.

Optionen

Der Filter akzeptiert die folgenden Optionen oder eine der Optionen, die von der
libswscale-Skalierer.

See ffmpeg-Scaler manuell für die vollständige Liste der Scaler-Optionen.

Breite, w
Höhe, h
Legen Sie den Dimensionsausdruck für das Ausgabevideo fest. Der Standardwert ist die Eingabedimension.

Wenn der Wert 0 ist, wird die Eingabebreite für die Ausgabe verwendet.

Wenn einer der Werte -1 ist, verwendet der Skalierungsfilter einen Wert, der die
Seitenverhältnis des Eingabebilds, berechnet aus der anderen angegebenen Dimension. Wenn
beide sind -1, die Eingabegröße wird verwendet

Wenn einer der Werte -n mit n > 1 ist, verwendet der Skalierungsfilter auch einen Wert, der
behält das Seitenverhältnis des Eingabebildes bei, berechnet aus den anderen angegebenen
Abmessungen. Danach wird jedoch sichergestellt, dass die berechnete Dimension
durch n teilbar und passen Sie den Wert bei Bedarf an.

Unten finden Sie die Liste der akzeptierten Konstanten zur Verwendung im Dimensionsausdruck.

interl
Stellen Sie den Interlacing-Modus ein. Es akzeptiert die folgenden Werte:

1 Interlaced-aware-Skalierung erzwingen.

0 Wenden Sie keine Zeilensprungskalierung an.

-1 Wählen Sie Interlaced Aware Scaling abhängig davon, ob die Quellframes gekennzeichnet sind
als interlaced oder nicht.

Standardwert ist 0.

Fahnen
Setzen Sie die Skalierungsflags von libswscale. Sehen ffmpeg-Scaler manuell für die vollständige Liste der
Werte. Wenn nicht explizit angegeben, wendet der Filter die Standard-Flags an.

Größe, s
Stellen Sie die Videogröße ein. Die Syntax dieser Option finden Sie im "Video Größe" Abschnitt in
ffmpeg-utils manuell.

in_color_matrix
out_color_matrix
Legen Sie den YCbCr-Farbraumtyp für Ein-/Ausgabe fest.

Dies ermöglicht das Überschreiben des automatisch erkannten Werts sowie das Erzwingen eines
spezifischer Wert, der für den Ausgang und den Encoder verwendet wird.

Wenn nicht angegeben, hängt der Farbraumtyp vom Pixelformat ab.

Mögliche Werte:

Auto
Automatisch auswählen.

bt709
Format entspricht der Empfehlung der International Telecommunication Union (ITU)
BT.709.

Fcc Farbraum entsprechend der US-amerikanischen Federal Communications Commission einstellen
(FCC) Code of Federal Regulations (CFR) Titel 47 (2003) 73.682 (a).

bt601
Stellen Sie den Farbraum entsprechend ein:

· Empfehlung des ITU-Funksektors (ITU-R) BT.601

· ITU-R-Empf. BT.470-6 (1998) Systeme B, B1 und G

· Gesellschaft der Film- und Fernsehingenieure (SMPTE) ST 170:2004

smpte240m
Farbraum entsprechend SMPTE ST 240:1999 einstellen.

im Bereich
out_range
Legen Sie den YCbCr-Abtastbereich für den Ein-/Ausgang fest.

Dies ermöglicht das Überschreiben des automatisch erkannten Werts sowie das Erzwingen eines
spezifischer Wert, der für den Ausgang und den Encoder verwendet wird. Wenn nicht angegeben, hängt die Reichweite von
das Pixelformat. Mögliche Werte:

Auto
Automatisch auswählen.

jpeg/voll/pc
Vollen Bereich einstellen (0-255 bei 8-Bit-Luma).

MPEG/TV
Stellen Sie den "MPEG"-Bereich (16-235 bei 8-Bit-Luma) ein.

force_original_aspect_ratio
Aktivieren Sie bei Bedarf das Verringern oder Erhöhen der Breite oder Höhe des Ausgabevideos, um die
ursprüngliches Seitenverhältnis. Mögliche Werte:

deaktivieren
Skalieren Sie das Video wie angegeben und deaktivieren Sie diese Funktion.

verringern
Die Abmessungen des Ausgabevideos werden bei Bedarf automatisch verringert.

Energie
Die Abmessungen des Ausgabevideos werden bei Bedarf automatisch erhöht.

Ein nützliches Beispiel für diese Option ist, wenn Sie das Maximum eines bestimmten Geräts kennen
erlaubte Auflösung, können Sie dies verwenden, um das Ausgabevideo darauf zu begrenzen, während
das Seitenverhältnis beibehalten. Gerät A ermöglicht beispielsweise die Wiedergabe von 1280 x 720 und Ihr
Video ist 1920x800. Verwenden Sie diese Option (verringern Sie sie) und geben Sie 1280 x 720 auf an
die Befehlszeile macht die Ausgabe 1280x533.

Bitte beachten Sie, dass dies etwas anderes ist als die Angabe von -1 für w or hdu immer noch
müssen Sie die Ausgabeauflösung angeben, damit diese Option funktioniert.

Die Werte der w und h Optionen sind Ausdrücke, die die folgenden Konstanten enthalten:

in_w
in_h
Die Eingabebreite und -höhe

iw
ih Das sind die gleichen wie in_w und in_h.

aus_w
aus_h
Breite und Höhe der Ausgabe (skaliert)

ow
oh Das sind die gleichen wie aus_w und aus_h

a Das Gleiche wie iw / ih

sar Seitenverhältnis des Eingabebeispiels

geben Das Seitenverhältnis der Eingabeanzeige. Berechnet aus "(iw / ih) * sar".

hsub
vssub
horizontale und vertikale Eingabe-Chroma-Subsample-Werte. Zum Beispiel für das Pixel
Format "yuv422p" hsub ist 2 und vssub ist 1.

ohsub
ovsub
horizontale und vertikale Ausgangs-Chroma-Subsample-Werte. Zum Beispiel für das Pixel
Format "yuv422p" hsub ist 2 und vssub ist 1.

Beispiele

· Skalieren Sie das Eingangsvideo auf eine Größe von 200x100

Maßstab=b=200:h=100

Dies ist äquivalent zu:

Maßstab=200:100

oder:

Maßstab=200x100

· Geben Sie ein Größenkürzel für die Ausgabegröße an:

Maßstab=qcif

was auch geschrieben werden kann als:

Maßstab=Größe=qcif

· Skalieren Sie die Eingabe auf 2x:

Maßstab=w=2*iw:h=2*ih

· Das obige ist dasselbe wie:

Maßstab=2*Zoll_B:2*Zoll_H

· Skalieren Sie den Eingang mit erzwungener Zeilensprungskalierung auf 2x:

Skala=2*iw:2*ih:interl=1

· Skalieren Sie die Eingabe auf die halbe Größe:

Skala=w=iw/2:h=ih/2

· Erhöhen Sie die Breite und stellen Sie die Höhe auf dieselbe Größe ein:

Maßstab=3/2*iw:ow

· Suche nach griechischer Harmonie:

Maßstab=iw:1/PHI*iw
Maßstab=ih*PHI:ih

· Erhöhen Sie die Höhe und stellen Sie die Breite auf 3/2 der Höhe ein:

Skala=w=3/2*oh:h=3/5*ih

· Erhöhen Sie die Größe, sodass die Größe ein Vielfaches der Chroma-Subsample-Werte ist:

scale="trunc(3/2*iw/hsub)*hsub:trunc(3/2*ih/vsub)*vsub"

· Erhöhen Sie die Breite auf maximal 500 Pixel und behalten Sie dabei das gleiche Seitenverhältnis wie das
Eingang:

scale=w='min(500\, iw*3/2):h=-1'

Befehle

Dieser Filter unterstützt die folgenden Befehle:

Breite, w
Höhe, h
Legen Sie den Dimensionsausdruck für das Ausgabevideo fest. Der Befehl akzeptiert die gleiche Syntax wie der
entsprechende Option.

Wenn der angegebene Ausdruck nicht gültig ist, wird sein aktueller Wert beibehalten.

scale2ref
Skalieren (Größenänderung) des Eingangsvideos basierend auf einem Referenzvideo.

Siehe den Skalierungsfilter für verfügbare Optionen, scale2ref unterstützt dasselbe, verwendet aber die
Referenzvideo anstelle des Haupteingangs als Basis.

Beispiele

· Skalieren Sie einen Untertitelstream, um die Größe des Hauptvideos anzupassen, bevor Sie ihn überlagern

'scale2ref[b][a][a][b]overlay'

separateFelder
Die "separatefields" nehmen einen Frame-basierten Videoeingang und teilen jeden Frame in seine
Komponentenfelder, wodurch ein neuer Clip mit halber Höhe mit doppelter und doppelter Bildrate erzeugt wird
die Frameanzahl.

Dieser Filter verwendet Halbbild-Dominanz-Informationen im Rahmen, um zu entscheiden, welche von jedem Paar von
Felder, die in der Ausgabe an erster Stelle stehen. Wenn es falsch wird, verwenden Sie Setfeld vorher filtern
Filter "getrennte Felder".

setdar, setar
Der "setdar"-Filter legt das Anzeige-Seitenverhältnis für das Filterausgabevideo fest.

Dies geschieht durch Ändern des angegebenen Seitenverhältnisses des Samples (auch bekannt als Pixel) gemäß der
folgende Gleichung:

= / *

Denken Sie daran, dass der Filter "setdar" die Pixelabmessungen des Videos nicht ändert.
Rahmen. Außerdem kann das durch diesen Filter eingestellte Anzeige-Seitenverhältnis durch spätere Filter geändert werden
in der Filterkette, zB bei Skalierung oder wenn ein anderer "setdar" oder ein "setsar" Filter ist
angewendet.

Der "setsar"-Filter legt das Sample-Seitenverhältnis (auch bekannt als Pixel) für das Filterausgangsvideo fest.

Beachten Sie, dass infolge der Anwendung dieses Filters der Ausgabeanzeigeaspekt
Das Verhältnis ändert sich gemäß der obigen Gleichung.

Beachten Sie, dass das vom Filter "setsar" eingestellte Seitenverhältnis des Samples geändert werden kann durch
spätere Filter in der Filterkette, zB wenn ein anderer "setsar" oder ein "setdar" Filter ist
angewendet.

Es akzeptiert die folgenden Parameter:

r, Verhältnis, geben ("setdar" nur), sar ("setsar" nur)
Stellen Sie das vom Filter verwendete Seitenverhältnis ein.

Der Parameter kann eine Gleitkommazahlzeichenfolge, ein Ausdruck oder eine Zeichenfolge der
unten stehende Formular num:am, Wobei num und am sind Zähler und Nenner des Seitenverhältnisses.
Wird der Parameter nicht angegeben, wird der Wert "0" angenommen. Falls das Formular
"num:am" verwendet wird, sollte das Zeichen ":" mit Escapezeichen versehen werden.

max Legen Sie den maximalen ganzzahligen Wert fest, der zum Ausdrücken von Zähler und Nenner verwendet werden soll, wenn
Reduzierung des ausgedrückten Seitenverhältnisses auf ein rationales. Der Standardwert ist 100.

Der Parameter sar ist ein Ausdruck, der die folgenden Konstanten enthält:

E, PI, PHI
Dies sind Näherungswerte für die mathematischen Konstanten e (Eulersche Zahl), pi
(griechisch pi) und phi (der goldene Schnitt).

w, h
Die Eingabebreite und -höhe.

a Das sind die gleichen wie w / h.

sar Das Seitenverhältnis des Eingabebeispiels.

geben Das Seitenverhältnis der Eingabeanzeige. Es ist das gleiche wie (w / h) * sar.

hsub, vssub
Horizontale und vertikale Chroma-Subsample-Werte. Zum Beispiel für das Pixelformat
"yuv422p" hsub ist 2 und vssub ist 1.

Beispiele

· Um das Anzeige-Seitenverhältnis in 16:9 zu ändern, geben Sie eine der folgenden Optionen an:

setdar=dar=1.77777
setdar=dar=16/9
setdar=dar=1.77777

· Um das Seitenverhältnis des Samples auf 10:11 zu ändern, geben Sie Folgendes an:

setar=sar=10/11

· Um ein Anzeige-Seitenverhältnis von 16:9 einzustellen und einen maximalen ganzzahligen Wert von 1000 Zoll anzugeben
Um das Seitenverhältnis zu reduzieren, verwenden Sie den Befehl:

setdar=Verhältnis=16/9:max=1000

Setfeld
Kraftfeld für das Ausgabevideobild.

Der Filter "setfield" markiert das Interlace-Typ-Feld für die Ausgabeframes. Es tut nicht
den Eingaberahmen ändern, aber nur die entsprechende Eigenschaft festlegen, die sich darauf auswirkt, wie die
Frame wird durch folgende Filter behandelt (zB "fieldorder" oder "yadif").

Der Filter akzeptiert die folgenden Optionen:

Modus
Verfügbare Werte sind:

Auto
Behalten Sie dieselbe Feldeigenschaft bei.

bff Markieren Sie den Rahmen als Bottom-Field-First.

tff Markieren Sie den Rahmen als Top-Field-First.

prog
Markieren Sie den Rahmen als progressiv.

show
Zeigen Sie eine Zeile mit verschiedenen Informationen für jeden eingegebenen Videoframe an. Das Eingangsvideo ist
Nicht modifiziert.

Die angezeigte Zeile enthält eine Folge von Schlüssel/Wert-Paaren der Form Schlüssel:Wert.

In der Ausgabe werden folgende Werte angezeigt:

n Die (laufende) Nummer des Eingabeframes, beginnend bei 0.

pts Der Präsentations-Zeitstempel des Eingaberahmens, ausgedrückt als Anzahl der Zeitbasis
Einheiten. Die Zeitbasiseinheit hängt vom Filtereingangspad ab.

pts_time
Der Präsentations-Zeitstempel des Eingabeframes, ausgedrückt in Sekunden.

Post Die Position des Frames im Eingabestream oder -1, wenn diese Information . ist
nicht verfügbar und/oder bedeutungslos (zum Beispiel bei synthetischem Video).

fmt Der Name des Pixelformats.

sar Das Beispiel-Seitenverhältnis des Eingabeframes, ausgedrückt in der Form num/am.

s Die Größe des Eingabeframes. Die Syntax dieser Option finden Sie im "Video Größe"
Abschnitt in ffmpeg-utils manuell.

i Die Art des Zeilensprungmodus ("P" für "progressiv", "T" für oberes Halbbild zuerst, "B" für
unteres Feld zuerst).

iskey
Dies ist 1, wenn das Bild ein Schlüsselbild ist, ansonsten 0.

tippe
Der Bildtyp des Eingabebildes ("I" für ein I-Bild, "P" für ein P-Bild, "B" für a
B-Rahmen oder "?" für einen unbekannten Typ). Beachten Sie auch die Dokumentation der
"AVPictureType"-Enum und der in . definierten Funktion "av_get_picture_type_char"
libavutil/avutil.h.

Prüfsumme
Die Adler-32-Prüfsumme (in hexadezimal gedruckt) aller Ebenen des Eingaberahmens.

plane_checksum
Die Adler-32-Prüfsumme (in hexadezimal gedruckt) jeder Ebene des Eingaberahmens,
ausgedrückt in der Form "[c0 c1 c2 c3]".

Showpalette
Zeigt die 256-Farben-Palette jedes Frames an. Dieser Filter ist nur relevant für pal8 Pixel
Rahmen formatieren.

Es akzeptiert die folgende Option:

s Legen Sie die Größe des Felds fest, das verwendet wird, um einen Palettenfarbeintrag darzustellen. Standard ist 30 (für
eine "30x30"-Pixelbox).

Shuffleplanes
Videoebenen neu anordnen und/oder duplizieren.

Es akzeptiert die folgenden Parameter:

map0
Der Index der Eingabeebene, die als erste Ausgabeebene verwendet werden soll.

map1
Der Index der Eingabeebene, die als zweite Ausgabeebene verwendet werden soll.

map2
Der Index der Eingabeebene, die als dritte Ausgabeebene verwendet werden soll.

map3
Der Index der Eingabeebene, die als vierte Ausgabeebene verwendet werden soll.

Die erste Ebene hat den Index 0. Standardmäßig bleibt die Eingabe unverändert.

Vertauschen Sie die zweite und dritte Ebene der Eingabe:

ffmpeg -i EINGABE -vf shuffleplanes=0:2:1:3 AUSGABE

Signalstatistiken
Bewerten Sie verschiedene visuelle Metriken, die bei der Ermittlung von Problemen im Zusammenhang mit dem . helfen
Digitalisierung analoger Videomedien.

Standardmäßig protokolliert der Filter diese Metadatenwerte:

YMIN
Zeigen Sie den minimalen Y-Wert an, der im Eingaberahmen enthalten ist. Ausgedrückt im Bereich von
[0-255].

GELB
Zeigen Sie den Y-Wert beim 10%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

YAVG
Zeigen Sie den durchschnittlichen Y-Wert innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von [0-255].

JHOCH
Zeigen Sie den Y-Wert beim 90%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

YMAX
Zeigen Sie den maximalen Y-Wert an, der innerhalb des Eingaberahmens enthalten ist. Ausgedrückt im Bereich von
[0-255].

UMIN
Zeigen Sie den minimalen U-Wert an, der im Eingaberahmen enthalten ist. Ausgedrückt im Bereich von
[0-255].

ULOW
Zeigen Sie den U-Wert beim 10%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

UAVG
Zeigen Sie den durchschnittlichen U-Wert innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von [0-255].

UHOCH
Zeigen Sie den U-Wert beim 90%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

Umax
Zeigen Sie den maximalen U-Wert an, der innerhalb des Eingaberahmens enthalten ist. Ausgedrückt im Bereich von
[0-255].

VMIN
Zeigen Sie den minimalen V-Wert an, der im Eingaberahmen enthalten ist. Ausgedrückt im Bereich von
[0-255].

VLOW
Zeigen Sie den V-Wert beim 10%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

VAVG
Zeigen Sie den durchschnittlichen V-Wert innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von [0-255].

VHOCH
Zeigen Sie den V-Wert beim 90%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt in Reichweite
von [0-255].

VMAX
Zeigen Sie den maximalen V-Wert an, der innerhalb des Eingaberahmens enthalten ist. Ausgedrückt im Bereich von
[0-255].

SATMIN
Zeigt den minimalen Sättigungswert an, der im Eingabebild enthalten ist. Ausgedrückt
Bereich von [0-~181.02].

SATLOW
Zeigen Sie den Sättigungswert beim 10%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt
im Bereich von [0-~181.02].

SATAVG
Zeigen Sie den durchschnittlichen Sättigungswert innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von
[0-~181.02].

SATHIG
Zeigen Sie den Sättigungswert beim 90%-Perzentil innerhalb des Eingaberahmens an. Ausgedrückt
im Bereich von [0-~181.02].

SATMAX
Zeigen Sie den maximalen Sättigungswert an, der innerhalb des Eingaberahmens enthalten ist. Ausgedrückt
Bereich von [0-~181.02].

HUEMED
Zeigen Sie den Medianwert für den Farbton innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von
[0-360].

HUEAVG
Zeigen Sie den Durchschnittswert für den Farbton innerhalb des Eingaberahmens an. Ausgedrückt im Bereich von
[0-360].

YDIF
Zeigen Sie den Durchschnitt der Abtastwertdifferenz zwischen allen Werten der Y-Ebene in . an
den aktuellen Frame und die entsprechenden Werte des vorherigen Eingabeframes. Ausgedrückt
Bereich von [0-255].

UDIF
Zeigen Sie den Durchschnitt der Abtastwertdifferenz zwischen allen Werten der U-Ebene in . an
den aktuellen Frame und die entsprechenden Werte des vorherigen Eingabeframes. Ausgedrückt
Bereich von [0-255].

VDIF
Zeigen Sie den Durchschnitt der Abtastwertdifferenz zwischen allen Werten der V-Ebene in . an
den aktuellen Frame und die entsprechenden Werte des vorherigen Eingabeframes. Ausgedrückt
Bereich von [0-255].

Der Filter akzeptiert die folgenden Optionen:

Zustand
Zustand spezifizieren eine zusätzliche Form der Bildanalyse. Video ausgeben mit dem
angegebenen Pixeltyp hervorgehoben.

Beide Optionen akzeptieren die folgenden Werte:

Alles
Identifikation temporäre Ausreißer Pixel. EIN temporäre Ausreißer ist ein Pixel anders als das
benachbarte Pixel des gleichen Halbbildes. Beispiele für zeitliche Ausreißer sind die
Folgen von Videoausfällen, Kopfverstopfungen oder Bandverfolgungsproblemen.

vrep
Identifikation vertikal Linie Wiederholung. Vertikale Zeilenwiederholung umfasst ähnliche Zeilen
von Pixeln innerhalb eines Frames. In Born-Digital-Video ist die vertikale Zeilenwiederholung
häufig, aber dieses Muster ist ungewöhnlich bei Videos, die von einer analogen Quelle digitalisiert wurden.
Wenn es in einem Video auftritt, das aus der Digitalisierung einer analogen Quelle resultiert, ist es
kann eine Verbergung vor einem Ausfallkompensator anzeigen.

bringen
Identifizieren Sie Pixel, die außerhalb des zulässigen Sendebereichs liegen.

Farbe, Farbe, c
Legen Sie die Hervorhebungsfarbe für die fest Möglichkeit. Die Standardfarbe ist gelb.

Beispiele

· Ausgabedaten verschiedener Videometriken:

ffprobe -f lavfi movie=example.mov,signalstats="stat=tout+vrep+brng" -show_frames

· Ausgabe spezifischer Daten über die Minimal- und Maximalwerte der Y-Ebene pro Frame:

ffprobe -f lavfi movie=example.mov,signalstats -show_entries frame_tags=lavfi.signalstats.YMAX,lavfi.signalstats.YMIN

· Video wiedergeben, während Pixel, die außerhalb des Sendebereichs liegen, rot hervorgehoben werden.

ffplay example.mov -vf signalstats="out=brng:color=red"

· Playback-Video mit signalstats-Metadaten, die über den Rahmen gezeichnet werden.

ffplay example.mov -vf signalstats=stat=brng+vrep+tout,drawtext=fontfile=FreeSerif.ttf:textfile=signalstat_drawtext.txt

Der Inhalt der im Befehl verwendeten signalstat_drawtext.txt ist:

Zeit %{pts:hms}
Y (%{metadata:lavfi.signalstats.YMIN}-%{metadata:lavfi.signalstats.YMAX})
U (%{metadata:lavfi.signalstats.UMIN}-%{metadata:lavfi.signalstats.UMAX})
V (%{metadata:lavfi.signalstats.VMIN}-%{metadata:lavfi.signalstats.VMAX})
Sättigungsmaximum: %{metadata:lavfi.signalstats.SATMAX}

intelligente Unschärfe
Verwischen Sie das Eingabevideo, ohne die Umrisse zu beeinträchtigen.

Es akzeptiert die folgenden Optionen:

luma_radius, lr
Stellen Sie den Luma-Radius ein. Der Optionswert muss eine Gleitkommazahl im Bereich [0.1,5.0] sein.
die die Varianz des Gauss-Filters angibt, der verwendet wird, um das Bild zu verwischen (langsamer, wenn
größer). Der Standardwert ist 1.0.

luma_stärke, ls
Stellen Sie die Luma-Stärke ein. Der Optionswert muss eine Gleitkommazahl im Bereich [-1.0,1.0] sein.
das konfiguriert die Unschärfe. Ein in [0.0,1.0] enthaltener Wert verwischt das Bild
wohingegen ein in [-1.0,0.0] enthaltener Wert das Bild schärfer macht. Der Standardwert ist 1.0.

luma_threshold, lt
Legen Sie den Luma-Schwellenwert fest, der als Koeffizient verwendet wird, um zu bestimmen, ob ein Pixel
verschwommen oder nicht. Der Optionswert muss eine ganze Zahl im Bereich [-30,30] sein. Ein Wert von
0 filtert das gesamte Bild, ein in [0,30] enthaltener Wert filtert flache Bereiche und a
Der in [-30,0] enthaltene Wert filtert Kanten. Der Standardwert ist 0.

Farbradius, cr
Stellen Sie den Chroma-Radius ein. Der Optionswert muss eine Gleitkommazahl im Bereich [0.1,5.0] sein.
die die Varianz des Gauss-Filters angibt, der verwendet wird, um das Bild zu verwischen (langsamer, wenn
größer). Der Standardwert ist 1.0.

Chroma_Stärke, cs
Stellen Sie die Chroma-Stärke ein. Der Optionswert muss eine Gleitkommazahl im Bereich . sein
[-1.0,1.0] konfiguriert die Unschärfe. Ein in [0.0,1.0] enthaltener Wert verwischt die
Bild, wohingegen ein in [-1.0,0.0] enthaltener Wert das Bild schärfer macht. Standardwert ist
1.0

chroma_threshold, ct
Legen Sie den Chroma-Schwellenwert fest, der als Koeffizient verwendet wird, um zu bestimmen, ob ein Pixel
verschwommen oder nicht. Der Optionswert muss eine ganze Zahl im Bereich [-30,30] sein. Ein Wert von
0 filtert das gesamte Bild, ein in [0,30] enthaltener Wert filtert flache Bereiche und a
Der in [-30,0] enthaltene Wert filtert Kanten. Der Standardwert ist 0.

Wenn eine Chroma-Option nicht explizit gesetzt ist, wird der entsprechende Luma-Wert gesetzt.

sim
Rufen Sie die SSIM (Structural SIMilarity Metric) zwischen zwei Eingabevideos ab.

Dieser Filter nimmt in der Eingabe zwei Eingabevideos auf, die erste Eingabe gilt als "Haupt"
Quelle und wird unverändert an die Ausgabe übergeben. Der zweite Eingang dient als "Referenz"
Video zum Berechnen der SSIM.

Beide Videoeingänge müssen dieselbe Auflösung und dasselbe Pixelformat haben, damit dieser Filter funktioniert
korrekt. Es wird auch davon ausgegangen, dass beide Eingänge die gleiche Anzahl von Frames haben, die
eins nach dem anderen verglichen.

Der Filter speichert die berechnete SSIM jedes Frames.

Die Beschreibung der akzeptierten Parameter folgt.

Statistikdatei, f
Wenn angegeben, verwendet der Filter die benannte Datei, um die SSIM jeder Person zu speichern
Rahmen.

Die Datei wird gedruckt, wenn Statistikdatei ausgewählt ist, enthält eine Folge von Schlüssel/Wert-Paaren der
unten stehende Formular Schlüssel:Wert für jedes verglichene Paar von Frames.

Es folgt eine Beschreibung jedes angezeigten Parameters:

n fortlaufende Nummer des Eingaberahmens, beginnend bei 1

Y, U, V, R, G, B
SSIM der verglichenen Frames für die durch das Suffix angegebene Komponente.

Alle SSIM der verglichenen Frames für den gesamten Frame.

dB Wie oben, jedoch in dB-Darstellung.

Beispielsweise:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [main];
[main][ref] ssim="stats_file=stats.log" [out]

In diesem Beispiel wird die verarbeitete Eingabedatei mit der Referenzdatei verglichen
ref_movie.mpg. Die SSIM jedes einzelnen Frames wird gespeichert in stats.log.

Ein weiteres Beispiel mit psnr und ssim gleichzeitig:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim;[0:v][1:v]psnr" -f null -

stereo3d
Konvertieren Sie zwischen verschiedenen stereoskopischen Bildformaten.

Die Filter akzeptieren die folgenden Optionen:

in Stellen Sie das stereoskopische Bildformat der Eingabe ein.

Verfügbare Werte für Eingabebildformate sind:

sbsl
nebeneinander parallel (linkes Auge links, rechtes Auge rechts)

jdn
nebeneinander Fadenkreuz (rechtes Auge links, linkes Auge rechts)

sbs2l
nebeneinander parallel mit Halbseitenauflösung (linkes Auge links, rechtes Auge rechts)

sbs2r
paralleles Fadenkreuz mit Halbseitenauflösung (rechtes Auge links, linkes Auge rechts)

abl oben-unten (linkes Auge oben, rechtes Auge unten)

April oben-unten (rechtes Auge oben, linkes Auge unten)

ab2l
oben-unten mit halber Höhenauflösung (linkes Auge oben, rechtes Auge unten)

ab2r
oben-unten mit halber Höhenauflösung (rechtes Auge oben, linkes Auge unten)

al abwechselnde Bilder (linkes Auge zuerst, rechtes Auge dann)

ar abwechselnde Bilder (rechtes Auge zuerst, linkes Auge dann)

Standardwert ist sbsl.

Stellen Sie das stereoskopische Bildformat der Ausgabe ein.

Verfügbare Werte für Ausgabebildformate sind alle Eingabeformate sowie:

Arbg
Anaglyphe Rot/Blaugrau (Rotfilter am linken Auge, Blaufilter am rechten Auge)

Arg
Anaglyphe Rot/Grüngrau (Rotfilter am linken Auge, Grünfilter am rechten Auge)

Bogen
Anaglyphenrot/Cyangrau (Rotfilter am linken Auge, Cyanfilter am rechten Auge)

Bogen
Anaglyphe Rot/Cyan halbfarbig (Rotfilter am linken Auge, Cyanfilter am rechten Auge)

arcc
Anaglyphenfarbe Rot/Cyan (Rotfilter am linken Auge, Cyanfilter am rechten Auge)

arcd
Anaglyphe Rot/Cyan Farbe optimiert mit der kleinsten Quadrate Projektion von Dubois (Rot
Filter auf dem linken Auge, Cyan-Filter auf dem rechten Auge)

agmg
Anaglyphengrün/Magentagrau (grüner Filter am linken Auge, Magentafilter am rechten
Auge)

ähm
Anaglyphe grün/magenta halbfarbig (grüner Filter am linken Auge, Magenta Filter an
rechtes Auge)

aggm
Anaglyphe grün/magentafarben (grüner Filter auf dem linken Auge, Magenta Filter auf dem rechten)
Auge)

Hauptversammlung
Anaglyphenfarbe Grün/Magenta, optimiert mit der kleinsten Quadrate Projektion von dubois
(grüner Filter am linken Auge, Magentafilter am rechten Auge)

aybg
Anaglyphe Gelb/Blaugrau (Gelbfilter am linken Auge, Blaufilter am rechten Auge)

Aybh
Anaglyphe gelb/blau halbfarbig (Gelbfilter am linken Auge, Blaufilter rechts
Auge)

aybc
Anaglyphe gelb/blau gefärbt (Gelbfilter am linken Auge, Blaufilter am rechten Auge)

aybd
Anaglyphenfarbe gelb/blau optimiert mit der kleinsten Quadrate Projektion von dubois
(Gelbfilter am linken Auge, Blaufilter am rechten Auge)

irl verschachtelte Reihen (linkes Auge hat obere Reihe, rechtes Auge beginnt mit der nächsten Reihe)

irr verschachtelte Reihen (rechtes Auge hat obere Reihe, linkes Auge beginnt mit nächster Reihe)

ml Mono-Ausgang (nur linkes Auge)

mr Mono-Ausgang (nur rechtes Auge)

Standardwert ist arcd.

Beispiele

· Konvertieren des Eingangsvideos von nebeneinander parallel in ein anaglyphisches Gelb/Blau-Dubois:

stereo3d=sbsl:aybd

· Konvertieren des Eingangsvideos von oben unten (linkes Auge oben, rechtes Auge unten) in nebeneinander
Fadenkreuz.

stereo3d=abl:sbsr

spp
Wenden Sie einen einfachen Nachbearbeitungsfilter an, der das Bild mehrmals komprimiert und dekomprimiert
(oder - im Fall von Qualität Stufe 6 - alle) verschiebt und durchschnittlich die Ergebnisse.

Der Filter akzeptiert die folgenden Optionen:

Qualität
Qualität einstellen. Diese Option definiert die Anzahl der Ebenen für die Mittelwertbildung. Es akzeptiert ein
Ganzzahl im Bereich 0-6. Bei 0 hat der Filter keine Wirkung. Ein Wert von 6
bedeutet die höhere Qualität. Für jede Erhöhung dieses Wertes sinkt die Geschwindigkeit um einen Faktor
von ungefähr 2. Der Standardwert ist 3.

qp Erzwinge einen konstanten Quantisierungsparameter. Wenn nicht gesetzt, verwendet der Filter die QP von
den Videostream (sofern verfügbar).

Modus
Legen Sie den Schwellenwertmodus fest. Verfügbare Modi sind:

hart
Festlegen des Schwellenwerts (Standard).

weich
Weichen Schwellenwert einstellen (besserer Der-Ringing-Effekt, aber wahrscheinlich verschwommener).

use_bframe_qp
Aktivieren Sie die Verwendung des QP von den B-Frames, wenn auf 1 gesetzt. Die Verwendung dieser Option kann zu
flackern, da die B-Frames oft größere QP haben. Der Standardwert ist 0 (nicht aktiviert).

Untertitel
Zeichnen Sie mit der Libass-Bibliothek Untertitel über das Eingabevideo.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit "--enable-libass" konfigurieren.
Dieser Filter erfordert auch einen Build mit libavcodec und libavformat, um das übergebene zu konvertieren
Untertiteldatei in das ASS-Untertitelformat (Advanced Substation Alpha).

Der Filter akzeptiert die folgenden Optionen:

Dateiname, f
Legen Sie den Dateinamen der Untertiteldatei zum Lesen fest. Es muss angegeben werden.

Originalgröße
Geben Sie die Größe des Originalvideos an, das Video, für das die ASS-Datei komponiert wurde.
Die Syntax dieser Option finden Sie im "Video Größe" Abschnitt in ffmpeg-utils
manuell. Aufgrund eines Fehldesigns in der ASS-Seitenverhältnisarithmetik ist dies notwendig, um
Skalieren Sie die Schriftarten richtig, wenn das Seitenverhältnis geändert wurde.

Schriftendir
Legen Sie einen Verzeichnispfad fest, der Schriftarten enthält, die vom Filter verwendet werden können. Diese Schriftarten
wird zusätzlich zu dem verwendet, was der Schriftartenanbieter verwendet.

charenz
Legen Sie die Zeichencodierung für die Eingabe von Untertiteln fest. Nur "Untertitel"-Filter. Nur sinnvoll, wenn nicht
UTF-8.

stream_index, si
Untertitel-Stream-Index festlegen. Nur "Untertitel"-Filter.

force_style
Überschreiben Sie die Standardstil- oder Skriptinfo-Parameter der Untertitel. Es akzeptiert eine Zeichenfolge
das ASS-Format enthält "KEY=VALUE" Paare, die durch "," getrennt sind.

Wenn der erste Schlüssel nicht angegeben ist, wird angenommen, dass der erste Wert den . angibt
Dateinamen.

Zum Beispiel, um die Datei zu rendern sub.srt Verwenden Sie oben auf dem Eingabevideo den Befehl:

Untertitel=sub.srt

was äquivalent ist zu:

Untertitel=Dateiname=sub.srt

So rendern Sie den Standard-Untertitel-Stream aus einer Datei video.mkvVerwenden Sie:

Untertitel=video.mkv

Um den zweiten Untertitel-Stream aus dieser Datei zu rendern, verwenden Sie:

untertitel=video.mkv:si=1

So lassen Sie die Untertitel streamen von sub.srt erscheinen in transparentem Grün "DejaVu Serif", verwenden Sie:

subtitles=sub.srt:force_style='FontName=DejaVu Serif,PrimaryColour=&HAA00FF00'

super2xsai
Skalieren Sie die Eingabe um das 2-fache und glätten Sie sie mit der Super2xSaI-Pixelgrafik (Scale and Interpolate)
Skalierungsalgorithmus.

Nützlich, um Pixel-Art-Bilder zu vergrößern, ohne die Schärfe zu verringern.

tauschuv
U- und V-Ebene tauschen.

Telecine
Wenden Sie den Telecine-Prozess auf das Video an.

Dieser Filter akzeptiert die folgenden Optionen:

erstes_feld
oben, t
oberstes Feld zuerst

Unterseite, b
unteres Feld zuerst Der Standardwert ist "top".

Anleitungen
Eine Zahlenfolge, die das Pulldown-Muster darstellt, das Sie anwenden möchten. Der Standard
Wert ist 23.

Einige typische Muster:

NTSC-Ausgang (30i):
27.5p: 32222
24p: 23 (klassisch)
24p: 2332 (bevorzugt)
20p: 33
18p: 334
16p: 3444

PAL-Ausgang (25i):
27.5p: 12222
24p: 222222222223 ("Euro-Pulldown")
16.67p: 33
16p: 33333334

Daumennagel
Wählen Sie den repräsentativsten Frame in einer gegebenen Sequenz aufeinanderfolgender Frames aus.

Der Filter akzeptiert die folgenden Optionen:

n Legen Sie die zu analysierende Frame-Stapelgröße fest; in einer Reihe von n Frames, der Filter wählt einen aus
von ihnen und bearbeiten Sie dann die nächste Charge von n Rahmen bis zum Schluss. Standard ist 100.

Da der Filter die gesamte Frame-Sequenz verfolgt, ist ein größeres n Wert ergibt
einen höheren Speicherverbrauch, daher wird ein hoher Wert nicht empfohlen.

Beispiele

· Extrahieren Sie ein Bild alle 50 Frames:

Vorschaubild = 50

· Vollständiges Beispiel einer Thumbnail-Erstellung mit ffmpeg:

ffmpeg -i in.avi -vf thumbnail,scale=300:200 -frames:v 1 out.png

Kachel
Bringen Sie mehrere aufeinanderfolgende Frames zusammen.

Der Filter akzeptiert die folgenden Optionen:

Layout
Legen Sie die Rastergröße fest (dh die Anzahl der Zeilen und Spalten). Für die Syntax davon
Option, aktivieren Sie die "Video Größe" Abschnitt in ffmpeg-utils manuell.

nb_frames
Legen Sie die maximale Anzahl von Frames fest, die im angegebenen Bereich gerendert werden sollen. Es muss kleiner sein als oder
gleich wxh. Der Standardwert ist 0, was bedeutet, dass der gesamte Bereich verwendet wird.

Marge
Legen Sie den äußeren Randrand in Pixel fest.

Polsterung
Legen Sie die Dicke des inneren Rands fest (dh die Anzahl der Pixel zwischen den Bildern). Für mehr
erweiterte Fülloptionen (z. B. unterschiedliche Werte für die Kanten) finden Sie in der
Videofilter auffüllen.

Farbe
Geben Sie die Farbe des nicht verwendeten Bereichs an. Die Syntax dieser Option finden Sie unter "Farbe".
Abschnitt im ffmpeg-utils-Handbuch. Der Standardwert von Farbe ist schwarz".

Beispiele

· Produzieren Sie 8x8 PNG-Kacheln aller Keyframes (-skip_frame kein Schlüssel) in einem Film:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale=128:72,tile=8x8' -an -vsync 0 keyframes%03d.png

Das -vsync 0 ist notwendig, um zu verhindern ffmpeg vom Duplizieren jedes Ausgabeframes auf
Anpassung an die ursprünglich erkannte Bildrate.

· Zeigen Sie 5 Bilder in einem Bereich von "3x2"-Rahmen an, mit 7 Pixeln dazwischen und 2
Pixel des Anfangsrands, mit gemischten flachen und benannten Optionen:

tile=3x2:nb_frames=5:padding=7:margin=2

Interlace
Führen Sie verschiedene Arten von zeitlichem Halbbild-Interlacing durch.

Frames werden beginnend mit 1 gezählt, sodass der erste Eingabeframe als ungerade gilt.

Der Filter akzeptiert die folgenden Optionen:

Modus
Legen Sie den Interlacing-Modus fest. Diese Option kann auch als Wert angegeben werden
allein. Unten finden Sie eine Liste mit Werten für diese Option.

Verfügbare Werte sind:

verschmelzen, 0
Verschiebe ungerade Frames in das obere Halbbild, gerade in das untere Halbbild und erzeuge a
Rahmen mit doppelter Höhe bei halber Bildrate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Ausgang:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

drop_ungerade, 1
Nur gerade Frames ausgeben, ungerade Frames werden verworfen, wodurch ein Frame mit unverändertem . erzeugt wird
Höhe bei halber Framerate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Ausgang:
22222 44444
22222 44444
22222 44444
22222 44444

drop_even, 2
Nur ungerade Frames ausgeben, gerade Frames werden verworfen, wodurch ein Frame mit unverändertem . erzeugt wird
Höhe bei halber Framerate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Ausgang:
11111 33333
11111 33333
11111 33333
11111 33333

Pad, 3
Erweitern Sie jeden Frame auf die volle Höhe, aber füllen Sie abwechselnde Zeilen mit Schwarz auf, wodurch a . erzeugt wird
Frame mit doppelter Höhe bei gleicher Eingabe-Framerate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Ausgang:
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444

interleave_top, 4
Verschachteln Sie das obere Halbbild von ungeraden Bildern mit dem unteren Halbbild von geraden Bildern,
Generieren eines Frames mit unveränderter Höhe bei halber Framerate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-

Ausgang:
11111 33333
22222 44444
11111 33333
22222 44444

interleave_bottom, 5
Verschachteln Sie das untere Halbbild von ungeraden Bildern mit dem oberen Halbbild von geraden Bildern,
Generieren eines Frames mit unveränderter Höhe bei halber Framerate.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444

Ausgang:
22222 44444
11111 33333
22222 44444
11111 33333

interlacex2, 6
Doppelte Bildrate bei unveränderter Höhe. Es werden Rahmen eingefügt, die jeweils die
zweites zeitliches Feld aus dem vorherigen Eingabebild und das erste zeitliche Feld
ab dem nächsten Eingabeframe. Dieser Modus basiert auf dem top_field_first Flag. Sinnvoll
für Interlaced-Videoanzeigen ohne Halbbildsynchronisation.

------> Zeit
Eingang:
Rahmen 1 Rahmen 2 Rahmen 3 Rahmen 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Ausgang:
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444
11111 22222 22222 33333 33333 44444 44444
11111 11111 22222 22222 33333 33333 44444

Numerische Werte sind veraltet, werden jedoch aus Gründen der Abwärtskompatibilität akzeptiert.

Der Standardmodus ist "Zusammenführen".

Fahnen
Legen Sie Flags fest, die den Filterprozess beeinflussen.

Verfügbarer Wert für Fahnen ist:

Tiefpassfilter, vlfp
Aktivieren Sie die vertikale Tiefpassfilterung im Filter. Vertikale Tiefpassfilterung ist
erforderlich, wenn Sie ein Interlaced-Ziel aus einer progressiven Quelle erstellen, die
enthält hochfrequente vertikale Details. Filterung reduziert Interlace 'Twitter'
und Moiré-Musterung.

Die vertikale Tiefpassfilterung kann nur aktiviert werden für Modus interleave_top und
interleave_bottom.

transponieren
Transponieren Sie Zeilen mit Spalten im Eingabevideo und spiegeln Sie es optional.

Es akzeptiert die folgenden Parameter:

dir Geben Sie die Transpositionsrichtung an.

Kann folgende Werte annehmen:

0, 4, cclock_flip
Um 90 Grad gegen den Uhrzeigersinn drehen und vertikal spiegeln (Standard), das heißt:

LR Ll
. . -> . .
lr Rr

1, 5, Uhr
Um 90 Grad im Uhrzeigersinn drehen, das heißt:

LR lL
. . -> . .
lr rR

2, 6, Uhr
Um 90 Grad gegen den Uhrzeigersinn drehen, das heißt:

LR Rr
. . -> . .
lr Ll

3, 7, clock_flip
Um 90 Grad im Uhrzeigersinn drehen und vertikal spiegeln, das heißt:

LR rR
. . -> . .
lr lL

Bei Werten zwischen 4-7 wird die Transponierung nur durchgeführt, wenn die Eingangsvideogeometrie
Hochformat und nicht Querformat. Diese Werte sind veraltet, die Option "Passthrough"
sollte stattdessen verwendet werden.

Numerische Werte sind veraltet und sollten zugunsten symbolischer Konstanten fallengelassen werden.

Durchgang
Wenden Sie die Transposition nicht an, wenn die Eingabegeometrie mit der durch das angegebenen übereinstimmt
Spezifizierter Wert. Es akzeptiert die folgenden Werte:

keine
Wenden Sie immer die Transposition an.

Porträt
Porträtgeometrie beibehalten (wenn Höhe >= Breite).

Landschaft
Landschaftsgeometrie beibehalten (wenn Breite >= Höhe).

Der Standardwert ist "keiner".

Um beispielsweise um 90 Grad im Uhrzeigersinn zu drehen und das Hochformat-Layout beizubehalten:

transpose=dir=1:passthrough=portrait

Der obige Befehl kann auch wie folgt angegeben werden:

transponieren=1:Hochformat

trimmen
Trimmen Sie die Eingabe, sodass die Ausgabe einen fortlaufenden Unterteil der Eingabe enthält.

Es akzeptiert die folgenden Parameter:

Anfang
Geben Sie den Zeitpunkt des Beginns des beibehaltenen Abschnitts an, dh des Frames mit dem Zeitstempel
Anfang wird der erste Frame in der Ausgabe sein.

Ende Geben Sie die Zeit des ersten Frames an, der verworfen wird, dh der Frame sofort
vor dem mit dem Zeitstempel Ende wird der letzte Frame in der Ausgabe sein.

start_pts
Dies ist das gleiche wie Anfang, außer dass diese Option den Startzeitstempel in der Zeitbasis setzt
Einheiten statt Sekunden.

end_pts
Dies ist das gleiche wie Ende, außer dass diese Option den Endzeitstempel in Zeitbasiseinheiten setzt
statt Sekunden.

Dauer
Die maximale Dauer der Ausgabe in Sekunden.

start_frame
Die Nummer des ersten Frames, der an die Ausgabe übergeben werden soll.

end_frame
Die Nummer des ersten Frames, der gelöscht werden soll.

Anfang, Ende und Dauer werden als Zeitdauerspezifikationen ausgedrückt; sehen Uhrzeit
Dauer Abschnitt in ffmpeg-utils(1) manuell für die akzeptierte Syntax.

Beachten Sie, dass die ersten beiden Sätze der Start-/Endoptionen und die Dauer Option schau dir die an
Frame-Zeitstempel, während die _frame-Varianten einfach die Frames zählen, die durch die
Filter. Beachten Sie auch, dass dieser Filter die Zeitstempel nicht ändert. Wenn Sie es wünschen
Ausgabezeitstempel bei Null beginnen, fügen Sie einen Setpts-Filter nach dem Trim-Filter ein.

Wenn mehrere Start- oder Endoptionen festgelegt sind, versucht dieser Filter gierig zu sein und alle
Frames, die mindestens einer der angegebenen Einschränkungen entsprechen. Um nur den Teil zu behalten, der
entspricht allen Beschränkungen auf einmal, verketten Sie mehrere Trim-Filter.

Die Standardeinstellungen sind so, dass alle Eingaben beibehalten werden. So ist es zB möglich, nur die
Endwerte, um alles vor der angegebenen Zeit zu behalten.

Beispiele:

· Alles außer der zweiten Minute der Eingabe löschen:

ffmpeg -i EINGANG -vf trim=60:120

· Behalten Sie nur die erste Sekunde:

ffmpeg -i INPUT -vf trim=Dauer=1

unscharf
Schärfen oder verwischen Sie das Eingangsvideo.

Es akzeptiert die folgenden Parameter:

luma_msize_x, lx
Legen Sie die horizontale Größe der Luma-Matrix fest. Es muss eine ungerade ganze Zahl zwischen 3 und 63 sein
Standardwert ist 5.

luma_msize_y, ly
Stellen Sie die vertikale Größe der Luma-Matrix ein. Es muss eine ungerade ganze Zahl zwischen 3 und 63 sein
Standardwert ist 5.

Luma_Betrag, la
Stellen Sie die Stärke des Luma-Effekts ein. Es muss eine Gleitkommazahl sein, vernünftige Werte
zwischen -1.5 und 1.5 liegen.

Negative Werte machen das Eingangsvideo unscharf, während positive Werte es schärfer machen, a
Der Wert Null deaktiviert den Effekt.

Der Standardwert ist 1.0.

chroma_msize_x, cx
Stellen Sie die horizontale Größe der Chroma-Matrix ein. Es muss eine ungerade ganze Zahl zwischen 3 und 63 sein
Standardwert ist 5.

chroma_msize_y, cy
Stellen Sie die vertikale Größe der Chroma-Matrix ein. Es muss eine ungerade ganze Zahl zwischen 3 und 63 sein
Standardwert ist 5.

Chroma_Betrag, ca
Stellen Sie die Stärke des Chroma-Effekts ein. Es muss eine Gleitkommazahl sein, vernünftige Werte
zwischen -1.5 und 1.5 liegen.

Negative Werte machen das Eingangsvideo unscharf, während positive Werte es schärfer machen, a
Der Wert Null deaktiviert den Effekt.

Der Standardwert ist 0.0.

OpenCL
Wenn auf 1 gesetzt, geben Sie die Verwendung von OpenCL-Fähigkeiten an, nur verfügbar, wenn FFmpeg war
mit "--enable-opencl" konfiguriert. Der Standardwert ist 0.

Alle Parameter sind optional und entsprechen standardmäßig der Zeichenfolge '5:5:1.0:5:5:0.0'.

Beispiele

· Wenden Sie einen starken Luma-Scharf-Effekt an:

unsharp=luma_msize_x=7:luma_msize_y=7:luma_amount=2.5

· Wenden Sie eine starke Unschärfe der Luma- und Chroma-Parameter an:

unsharp=7:7:-2:7:7:-2

uspp
Wenden Sie einen ultralangsamen/einfachen Nachbearbeitungsfilter an, der das Bild komprimiert und dekomprimiert
bei mehreren (oder - im Falle von Qualität Stufe 8 - alle) verschiebt und durchschnittlich die Ergebnisse.

Der Unterschied zum Verhalten von spp besteht darin, dass uspp tatsächlich jedes codiert und decodiert
Fall mit libavcodec Snow, während spp ein vereinfachtes Intra nur 8x8 DCT ähnlich wie . verwendet
MJPEG.

Der Filter akzeptiert die folgenden Optionen:

Qualität
Qualität einstellen. Diese Option definiert die Anzahl der Ebenen für die Mittelwertbildung. Es akzeptiert ein
Ganzzahl im Bereich 0-8. Bei 0 hat der Filter keine Wirkung. Ein Wert von 8
bedeutet die höhere Qualität. Für jede Erhöhung dieses Wertes sinkt die Geschwindigkeit um einen Faktor
von ungefähr 2. Der Standardwert ist 3.

qp Erzwinge einen konstanten Quantisierungsparameter. Wenn nicht gesetzt, verwendet der Filter die QP von
den Videostream (sofern verfügbar).

Vectorscope
Zeigen Sie 2 Farbkomponentenwerte in der zweidimensionalen Grafik an (die als a . bezeichnet wird).
Vektorskop).

Dieser Filter akzeptiert die folgenden Optionen:

Modus m
Stellen Sie den Vektorskopmodus ein.

Es akzeptiert die folgenden Werte:

grau
Grauwerte werden im Diagramm angezeigt, höhere Helligkeit bedeutet, dass mehr Pixel gleich sind
Farbwert der Komponente vor Ort im Diagramm. Dies ist der Standardmodus.

Farbe
Grauwerte werden im Diagramm angezeigt. Umgebende Pixelwerte, die nicht
im Videobild vorhanden sind, werden in einem Farbverlauf von 2 Farbkomponenten gezeichnet, die eingestellt sind
nach Option "x" und "y".

color2
Tatsächliche Farbkomponentenwerte, die im Videobild vorhanden sind, werden im Diagramm angezeigt.

color3
Ähnlich wie color2, aber höhere Häufigkeit der gleichen Werte "x" und "y" im Diagramm
erhöht den Wert einer anderen Farbkomponente, bei der es sich um die Luminanz durch Standardwerte handelt
von "x" und "y".

color4
Tatsächliche Farben, die im Videoframe vorhanden sind, werden im Diagramm angezeigt. Wenn zwei verschiedene
Farben werden auf dieselbe Position im Diagramm abgebildet, dann Farbe mit höherem Wert der Komponente nicht
im Diagramm vorhanden ist ausgewählt.

x Legen Sie fest, welche Farbkomponente auf der X-Achse dargestellt wird. Standard ist 1.

y Legen Sie fest, welche Farbkomponente auf der Y-Achse dargestellt wird. Standard ist 2.

Intensität, i
Stellen Sie die Intensität ein, die von den Modi verwendet wird: Grau, Farbe und Farbe3 zum Erhöhen der Helligkeit von
Farbkomponente, die die Häufigkeit der (X, Y)-Position im Diagramm darstellt.

Umschlag, e
keine
Kein Umschlag, dies ist die Standardeinstellung.

sofortig
Sofortige Hüllkurve, selbst dunkelste Einzelpixel werden deutlich hervorgehoben.

Haupt
Halten Sie die maximalen und minimalen Werte, die im Diagramm über die Zeit angezeigt werden. So kannst du
immer noch Werte außerhalb des Bereichs erkennen, ohne ständig auf das Vektorskop zu schauen.

Spitze+Sofort
Peak- und Instant-Hüllkurve zusammen kombiniert.

vidstabdetektieren
Analysieren Sie die Videostabilisierung/Deshaking. Führen Sie Durchgang 1 von 2 durch, siehe vidstabtransformieren für pass
2.

Dieser Filter generiert eine Datei mit relativen Translations- und Rotationstransformationsinformationen
über nachfolgende Frames, die dann von den vidstabtransformieren Filter.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit konfigurieren
"--enable-libvidstab".

Dieser Filter akzeptiert die folgenden Optionen:

Folge
Legen Sie den Pfad zu der Datei fest, die zum Schreiben der Transformationsinformationen verwendet wird. Standardwert ist
transformiert.trf.

Zittern
Stellen Sie ein, wie verwackelt das Video ist und wie schnell die Kamera ist. Es akzeptiert eine ganze Zahl in der
Bereich 1-10, ein Wert von 1 bedeutet geringes Zittern, ein Wert von 10 bedeutet starkes Zittern.
Der Standardwert ist 5.

Genauigkeit
Stellen Sie die Genauigkeit des Erkennungsprozesses ein. Es muss ein Wert im Bereich von 1-15 sein. EIN
Ein Wert von 1 bedeutet eine geringe Genauigkeit, ein Wert von 15 bedeutet eine hohe Genauigkeit. Der Standardwert ist 15.

Schrittlänge
Stellen Sie die Schrittweite des Suchprozesses ein. Der Bereich um das Minimum wird mit 1 Pixel gescannt
Auflösung. Der Standardwert ist 6.

Minkontrast
Stellen Sie den minimalen Kontrast ein. Unterhalb dieses Wertes wird ein lokales Messfeld verworfen. Muss sein
ein Gleitkommawert im Bereich 0-1. Der Standardwert ist 0.3.

Stativ
Stellen Sie die Referenzbildnummer für den Stativmodus ein.

Wenn aktiviert, wird die Bewegung der Frames mit einem Referenzframe im gefilterten . verglichen
Stream, identifiziert durch die angegebene Nummer. Die Idee ist, alle Bewegungen in auszugleichen
eine mehr oder weniger statische Szene und halten Sie die Kameraansicht absolut ruhig.

Wenn es auf 0 gesetzt ist, ist es deaktiviert. Die Frames werden ab 1 gezählt.

erklären
Felder und Transformationen in den resultierenden Frames anzeigen. Es akzeptiert eine ganze Zahl im Bereich
0-2. Der Standardwert ist 0, wodurch jede Visualisierung deaktiviert wird.

Beispiele

· Standardwerte verwenden:

vidstabdetektieren

· Analysieren Sie stark verwackelte Filme und legen Sie die Ergebnisse in eine Datei meinetransforms.trf:

vidstabdetect=wakiness=10:accuracy=15:result="mytransforms.trf"

· Visualisieren Sie das Ergebnis interner Transformationen im resultierenden Video:

vidstabdetect=show=1

· Analysieren Sie ein Video mit mittlerer Verwacklung mit ffmpeg:

ffmpeg -i input -vf vidstabdetect=shakiness=5:show=1 dummy.avi

vidstabtransformieren
Videostabilisierung/Deshaking: Pass 2 von 2, siehe vidstabdetektieren für Durchgang 1.

Lesen Sie eine Datei mit Transformationsinformationen für jeden Frame und wenden/kompensieren Sie diese. Zusammen
an. Nach der Installation können Sie HEIC-Dateien mit der vidstabdetektieren filter dies kann verwendet werden, um Videos zu entschütteln. Siehe auch
<http://public.hronopik.de/vid.stab>. Es ist wichtig, auch die unscharf filtern, siehe
unten.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie FFmpeg mit konfigurieren
"--enable-libvidstab".

Optionen

Eingabe
Legen Sie den Pfad zu der Datei fest, die zum Lesen der Transformationen verwendet wird. Standardwert ist transformiert.trf.

Glättung
Legen Sie die Anzahl der Bilder fest (Wert*2 + 1), die für die Tiefpassfilterung der Kamera verwendet werden
Bewegungen. Der Standardwert ist 10.

Zum Beispiel bedeutet eine Zahl von 10, dass 21 Frames verwendet werden (10 in der Vergangenheit und 10 in der
Zukunft), um die Bewegung im Video zu glätten. Ein größerer Wert führt zu einem flüssigeren Video,
begrenzt aber die Beschleunigung der Kamera (Schwenk-/Neigebewegungen). 0 ist ein Sonderfall
wo eine statische Kamera simuliert wird.

optalgo
Legen Sie den Algorithmus zur Optimierung des Kamerapfads fest.

Akzeptierte Werte sind:

gauss
Gaußscher Kernel-Tiefpassfilter bei Kamerabewegung (Standard)

avg Mittelwertbildung bei Transformationen

maxshift
Legen Sie die maximale Anzahl von Pixeln fest, um Frames zu übersetzen. Der Standardwert ist -1, d. h. nein
Grenze.

Maximalwinkel
Legen Sie den maximalen Winkel im Bogenmaß (Grad*PI/180) fest, um Frames zu drehen. Der Standardwert ist -1,
bedeutet keine Grenze.

Ernte
Legen Sie fest, wie mit Rändern umgegangen wird, die aufgrund der Bewegungskompensation möglicherweise sichtbar sind.

Verfügbare Werte sind:

halten
Bildinformationen aus dem vorherigen Frame beibehalten (Standard)

Schwarz
Fülle den Rand schwarz

umkehren
Transformationen invertieren, wenn auf 1 gesetzt. Der Standardwert ist 0.

relativ
Betrachten Sie Transformationen als relativ zum vorherigen Frame, wenn auf 1 gesetzt, absolut, wenn auf 0 gesetzt.
Der Standardwert ist 0.

Zoom
Stellen Sie den Prozentsatz zum Zoomen ein. Ein positiver Wert führt zu einem Zoom-In-Effekt, ein negativer
Wert in einem Zoom-Out-Effekt. Der Standardwert ist 0 (kein Zoom).

optzoom
Stellen Sie den optimalen Zoom ein, um Ränder zu vermeiden.

Akzeptierte Werte sind:

0 behindert

1 optimaler statischer Zoomwert wird ermittelt (nur sehr starke Bewegungen führen zu
sichtbare Ränder) (Standard)

2 optimaler adaptiver Zoomwert wird bestimmt (keine Ränder sind sichtbar), siehe
Zoomgeschwindigkeit

Beachten Sie, dass der beim Zoom angegebene Wert zu dem hier berechneten addiert wird.

Zoomgeschwindigkeit
Stellen Sie den Prozentsatz ein, um jeden Frame maximal zu vergrößern (aktiviert, wenn optzoom ist auf 2) eingestellt. Reichweite ist
von 0 bis 5 ist der Standardwert 0.25.

interpol
Geben Sie die Art der Interpolation an.

Verfügbare Werte sind:

nicht keine Interpolation

linear
linear nur horizontal

bilinear
linear in beide Richtungen (Standard)

bikubisch
kubisch in beide Richtungen (langsam)

Stativ
Aktivieren Sie den virtuellen Stativmodus, wenn er auf 1 eingestellt ist, was äquivalent zu . ist
"relativ=0:glätten=0". Der Standardwert ist 0.

Verwenden Sie auch die Option "Stativ" von vidstabdetektieren.

debuggen
Erhöhen Sie die Protokollausführlichkeit, wenn sie auf 1 gesetzt ist. Auch die erkannten globalen Bewegungen werden in geschrieben
die temporäre Datei global_motions.trf. Der Standardwert ist 0.

Beispiele

· Verwenden ffmpeg für eine typische Stabilisierung mit Standardwerten:

ffmpeg -i inp.mpeg -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 inp_stabilized.mpeg

Beachten Sie die Verwendung der unscharf Filter, der immer empfohlen wird.

· Vergrößern Sie etwas mehr und laden Sie Transformationsdaten aus einer bestimmten Datei:

vidstabtransform=zoom=5:input="mytransforms.trf"

· Glätten Sie das Video noch mehr:

vidstabtransform=Glättung=30

vflipp
Spiegeln Sie das Eingangsvideo vertikal.

Um beispielsweise ein Video vertikal zu spiegeln mit ffmpeg:

ffmpeg -i in.avi -vf "vflip" out.avi

Vignette
Machen Sie einen natürlichen Vignettierungseffekt oder kehren Sie ihn um.

Der Filter akzeptiert die folgenden Optionen:

Winkel, a
Stellen Sie den Linsenwinkelausdruck als eine Anzahl von Radianten ein.

Der Wert wird im Bereich "[0,PI/2]" abgeschnitten.

Standardwert: "PI/5"

x0
y0 Legen Sie die Ausdrücke für die Mittelpunktkoordinaten fest. Jeweils "w/2" und "h/2" standardmäßig.

Modus
Vorwärts-/Rückwärtsmodus einstellen.

Verfügbare Modi sind:


Je größer der Abstand vom Mittelpunkt, desto dunkler wird das Bild.

rückwärts
Je größer der Abstand vom Mittelpunkt, desto heller wird das Bild.
Dies kann verwendet werden, um einen Vignetteneffekt umzukehren, obwohl es keine Automatik gibt
Erkennung zum Extrahieren der Linse Winkel und andere Einstellungen (noch). Es kann auch verwendet werden
um einen brennenden Effekt zu erzeugen.

Standardwert ist .

eval
Auswertungsmodus für die Ausdrücke einstellen (Winkel, x0, y0).

Es akzeptiert die folgenden Werte:

init
Werte Ausdrücke nur einmal während der Filterinitialisierung aus.

Rahmen
Bewerten Sie Ausdrücke für jeden eingehenden Frame. Das ist viel langsamer als die init
Modus, da alle Skalierer neu berechnet werden müssen, aber erweiterte
dynamische Ausdrücke.

Standardwert ist init.

Dithering
Stellen Sie Dithering ein, um die kreisförmigen Streifeneffekte zu reduzieren. Der Standardwert ist 1 (aktiviert).

Aussehen
Vignettenaspekt einstellen. Mit dieser Einstellung kann man die Form der Vignette anpassen.
Wenn Sie diesen Wert auf den SAR-Wert der Eingabe einstellen, wird eine rechteckige Vignettierung erstellt
nach den Abmessungen des Videos.

Standard ist "1/1".

Ausdrücke

Das Alpha, x0 und y0 Ausdrücke können die folgenden Parameter enthalten.

w
h Eingabebreite und -höhe

n die Anzahl der Eingaberahmen, beginnend bei 0

pts die PTS-Zeit (Presentation TimeStamp) des gefilterten Videoframes, ausgedrückt in TB
Einheiten, NAN wenn nicht definiert

r Bildrate des Eingangsvideos, NAN, wenn die Eingangsbildrate unbekannt ist

t der PTS (Presentation TimeStamp) des gefilterten Videoframes, ausgedrückt in Sekunden,
NAN wenn nicht definiert

tb Zeitbasis des Eingangsvideos

Beispiele

· Wenden Sie einen einfachen starken Vignettierungseffekt an:

Vignette=PI/4

· Erstellen Sie eine flackernde Vignettierung:

vignette='PI/4+zufällig(1)*PI/50':eval=frame

vstack
Stapeln Sie Eingabevideos vertikal.

Alle Streams müssen dasselbe Pixelformat und dieselbe Breite aufweisen.

Beachten Sie, dass dieser Filter schneller ist als die Verwendung von Auflage und Unterlage filtern, um dieselbe Ausgabe zu erstellen.

Der Filter akzeptiert die folgende Option:

nb_eingaben
Legen Sie die Anzahl der Eingabestreams fest. Standard ist 2.

w3fdif
Deinterlace das Eingangsvideo ("w3fdif" steht für "Weston 3 Field Deinterlacing Filter").

Basierend auf dem von Martin Weston für BBC R&D beschriebenen Prozess und implementiert auf Basis der
De-Interlace-Algorithmus, geschrieben von Jim Easterbrook für BBC R&D, das Weston 3-Feld
Der Deinterlacing-Filter verwendet von BBC R&D berechnete Filterkoeffizienten.

Es gibt zwei Sätze von Filterkoeffizienten, die sogenannten "einfach": und "komplex". Welcher Satz von
Filterkoeffizienten verwendet wird, kann durch Übergabe eines optionalen Parameters eingestellt werden:

Filter
Stellen Sie die Interlacing-Filterkoeffizienten ein. Akzeptiert einen der folgenden Werte:

einfach
Einfacher Filterkoeffizientensatz.

Komplex
Komplexerer Filterkoeffizientensatz.

Standardwert ist Komplex.

deint
Geben Sie an, welche Frames deinterlaced werden sollen. Akzeptieren Sie einen der folgenden Werte:

alle Alle Frames deinterlacen,

verschachtelt
Deinterlacen Sie nur Frames, die als interlaced markiert sind.

Standardwert ist alle.

Wellenform
Videowellenform-Monitor.

Der Wellenformmonitor zeichnet die Intensität der Farbkomponenten auf. Standardmäßig nur Luminanz. Jeder
Spalte der Wellenform entspricht einer Spalte von Pixeln im Quellvideo.

Es akzeptiert die folgenden Optionen:

Modus m
Kann entweder "Zeile" oder "Spalte" sein. Standard ist "Spalte". Im Zeilenmodus wird die Grafik auf dem
linke Seite repräsentiert den Farbkomponentenwert 0 und die rechte Seite repräsentiert den Wert =
255. Im Spaltenmodus repräsentiert die obere Seite den Farbkomponentenwert = 0 und die untere Seite
stellt Wert = 255 dar.

Intensität, i
Intensität einstellen. Kleinere Werte sind nützlich, um herauszufinden, wie viele Werte gleich sind
Luminanz werden über die Eingabezeilen/-spalten verteilt. Der Standardwert ist 0.04. Dürfen
Bereich ist [0, 1].

Spiegel, r
Spiegelungsmodus einstellen. 0 bedeutet ungespiegelt, 1 bedeutet gespiegelt. Im gespiegelten Modus höher
Werte werden auf der linken Seite für den Modus "Zeile" und oben für "Spalte" dargestellt
Modus. Standard ist 1 (gespiegelt).

Anzeige, d
Anzeigemodus einstellen. Es akzeptiert die folgenden Werte:

Auflage
Präsentiert Informationen, die mit denen in der "Parade" identisch sind, außer dass die Grafiken
darstellende Farbkomponenten werden direkt überlagert.

Dieser Anzeigemodus erleichtert das Erkennen relativer Unterschiede oder Ähnlichkeiten in
überlappende Bereiche der Farbkomponenten, die identisch sein sollen, wie z
als neutrales Weiß, Grau oder Schwarz.

Parade
Separate Grafik für die Farbkomponenten nebeneinander im "Reihen"-Modus oder einzeln anzeigen
untereinander im "Spalten"-Modus.

Mit diesem Anzeigemodus können Sie leicht Farbstiche in den Lichtern erkennen und
Schatten eines Bildes durch Vergleich der Konturen der oberen und unteren Grafik von
jede Wellenform. Da Weiß, Grau und Schwarz durch genau gleich gekennzeichnet sind
Mengen an Rot, Grün und Blau, neutrale Bereiche des Bildes sollten drei
Wellenformen von ungefähr gleicher Breite/Höhe. Wenn nicht, ist die Korrektur einfach durchzuführen
indem Sie Pegelanpassungen der drei Wellenformen vornehmen.

Standard ist "Parade".

Komponenten c
Legen Sie fest, welche Farbkomponenten angezeigt werden sollen. Standard ist 1, was nur Luminanz oder Rot bedeutet
Farbkomponente, wenn die Eingabe im RGB-Farbraum erfolgt. Wenn zum Beispiel auf 7 eingestellt ist, wird es
alle 3 (wenn) verfügbaren Farbkomponenten anzeigen.

Umschlag, e
keine
Kein Umschlag, dies ist die Standardeinstellung.

sofortig
Sofortige Hüllkurve, Minimal- und Maximalwerte, die in der Grafik dargestellt werden, werden leicht angezeigt
sichtbar auch bei kleinem "step"-Wert.

Haupt
Halten Sie die minimalen und maximalen Werte, die im Diagramm über die Zeit angezeigt werden. So kannst du
immer noch Werte außerhalb des Bereichs erkennen, ohne ständig auf Wellenformen zu schauen.

Spitze+Sofort
Peak- und Instant-Hüllkurve zusammen kombiniert.

Filter, f
Tiefpass
Keine Filterung, dies ist die Standardeinstellung.

Wohnung
Luma und Chroma kombiniert.

eine Wohnung
Ähnlich wie oben, zeigt jedoch einen Unterschied zwischen blauem und rotem Chroma.

Chroma
Zeigt nur Chroma an.

achromatisch
Ähnlich wie oben, zeigt jedoch einen Unterschied zwischen blauem und rotem Chroma.

Farbe
Zeigt den tatsächlichen Farbwert auf der Wellenform an.

XBR
Wenden Sie den hochwertigen xBR-Vergrößerungsfilter an, der für Pixelkunst entwickelt wurde. Es
folgt einer Reihe von Kantenerkennungsregeln, siehe
<http://www.libretro.com/forums/viewtopic.php?f=6&t=134>.

Es akzeptiert die folgende Option:

n Stellen Sie das Skalierungsmaß ein: 2 für "2xBR", 3 für "3xBR" und 4 für "4xBR". Standard ist 3.

jadif
Deinterlace das Eingangsvideo ("yadif" bedeutet "noch ein Deinterlacing-Filter").

Es akzeptiert die folgenden Parameter:

Modus
Der zu übernehmende Interlacing-Modus. Es akzeptiert einen der folgenden Werte:

0, send_frame
Ausgabe eines Frames für jeden Frame.

1, send_field
Geben Sie für jedes Feld einen Frame aus.

2, send_frame_nospatial
Wie "send_frame", aber es überspringt die Spatial Interlacing-Prüfung.

3, send_field_nospatial
Wie "send_field", aber es überspringt die Prüfung des räumlichen Zeilensprungs.

Der Standardwert ist "send_frame".

Parität
Die für das eingegebene Zeilensprungvideo angenommene Bildfeldparität. Es akzeptiert eine der
folgende Werte:

0, tff
Angenommen, das oberste Feld ist das erste.

1, bff
Angenommen, das untere Feld ist das erste.

-1, Auto
Aktivieren Sie die automatische Erkennung der Feldparität.

Der Standardwert ist "auto". Wenn das Interlacing unbekannt ist oder der Decoder nicht
Exportieren Sie diese Informationen, das oberste Feld wird zuerst angenommen.

deint
Geben Sie an, welche Frames deinterlaced werden sollen. Akzeptieren Sie einen der folgenden Werte:

0, alle
Deinterlacen Sie alle Frames.

1, verschachtelt
Deinterlacen Sie nur Frames, die als interlaced markiert sind.

Der Standardwert ist "alle".

Zoompan
Wenden Sie den Zoom & Pan-Effekt an.

Dieser Filter akzeptiert die folgenden Optionen:

Zoomen, z
Stellen Sie den Zoom-Ausdruck ein. Standard ist 1.

x
y Legen Sie den x- und y-Ausdruck fest. Standard ist 0.

d Legen Sie den Dauerausdruck in der Anzahl der Frames fest. Dies legt fest, wie viele
Frames-Effekt hält für ein einzelnes Eingabebild an.

s Legen Sie die Ausgabebildgröße fest, der Standardwert ist 'hd720'.

Jeder Ausdruck kann die folgenden Konstanten enthalten:

in_w, iw
Eingabebreite.

in_h, ih
Eingabehöhe.

aus_w, ow
Ausgabebreite.

aus_h, oh
Ausgabehöhe.

in Eingabebildanzahl.

on Anzahl der Ausgabe-Frames.

x
y Zuletzt berechnete 'x'- und 'y'-Position aus 'x'- und 'y'-Ausdruck für die aktuelle Eingabe
Rahmen.

px
py 'x' und 'y' des letzten Ausgabeframes des vorherigen Eingabeframes oder 0, wenn es noch nicht vorhanden war
solchen Rahmen (erster Eingaberahmen).

Zoom
Zuletzt berechneter Zoom aus 'z'-Ausdruck für das aktuelle Eingabebild.

pzoom
Zuletzt berechneter Zoom des letzten Ausgabeframes des vorherigen Eingabeframes.

Dauer
Anzahl der Ausgabeframes für das aktuelle Eingabeframe. Berechnet aus 'd'-Ausdruck für
jedes Eingabeframe.

Dauer
Anzahl der Ausgabeframes, die für das vorherige Eingabeframe erstellt wurden

a Rationale Zahl: Eingabebreite / Eingabehöhe

sar Beispiel-Seitenverhältnis

geben Anzeige-Seitenverhältnis

Beispiele

· Vergrößern Sie bis zu 1.5 und schwenken Sie gleichzeitig zu einer Stelle in der Nähe der Bildmitte:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='if(gte(zoom,1.5),x,x+1/a)':y='if(gte(zoom,1.5),y,y+1)':s=640x360

· Vergrößern Sie bis zu 1.5 und schwenken Sie immer in die Bildmitte:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

VIDEO QUELLEN


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Videoquellen.

puffern
Puffern Sie Videoframes und stellen Sie sie der Filterkette zur Verfügung.

Diese Quelle ist hauptsächlich für eine programmatische Verwendung gedacht, insbesondere durch die Schnittstelle
definiert in libavfilter/vsrc_buffer.h.

Es akzeptiert die folgenden Parameter:

Video Größe
Geben Sie die Größe (Breite und Höhe) der gepufferten Videobilder an. Für die Syntax von
Aktivieren Sie diese Option "Video Größe" Abschnitt in ffmpeg-utils manuell.

Breite
Die Breite des Eingangsvideos.

Höhe
Die Höhe des Eingangsvideos.

pix_fmt
Eine Zeichenfolge, die das Pixelformat der gepufferten Videoframes darstellt. Es kann sein
Nummer, die einem Pixelformat entspricht, oder ein Pixelformatname.

Zeitbasis
Geben Sie die Zeitbasis an, die von den Zeitstempeln der gepufferten Frames angenommen wird.

Bildrate
Geben Sie die für den Videostream erwartete Bildrate an.

pixel_aspekt, sar
Das Beispielseitenverhältnis (Pixel) des Eingangsvideos.

sws_param
Geben Sie die optionalen Parameter an, die für den automatisch aktivierten Skalierungsfilter verwendet werden sollen
eingefügt, wenn eine Eingabeänderung in der Eingabegröße oder im Eingabeformat erkannt wird.

Beispielsweise:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

weist die Quelle an, Videoframes mit der Größe 320x240 und mit dem Format zu akzeptieren
"yuv410p", wobei 1/24 als Zeitbasis und quadratische Pixel des Zeitstempels angenommen wird (1:1 Beispielseitenverhältnis)
Verhältnis). Da das Pixelformat mit dem Namen "yuv410p" der Zahl 6 entspricht (überprüfe die
enum AVPixelFormat-Definition in libavutil/pixfmt.h), entspricht dieses Beispiel:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

Alternativ können die Optionen als flacher String angegeben werden, aber diese Syntax ist
veraltet:

Breite:Höhe:pix_fmt:time_base.num:time_base.den:pixel_aspekt.num:pixel_aspect.den[:sws_param]

cellauto
Erstellen Sie ein Muster, das von einem elementaren zellulären Automaten generiert wird.

Der Anfangszustand des zellularen Automaten kann definiert werden durch die Dateinamen und
Anleitungen Optionen. Wenn solche Optionen nicht angegeben werden, wird zufällig ein Anfangszustand erzeugt.

Bei jedem neuen Frame wird eine neue Zeile im Video mit dem Ergebnis des Mobilfunks gefüllt
Automat der nächsten Generation. Das Verhalten beim Füllen des gesamten Rahmens wird durch die
blättern .

Diese Quelle akzeptiert die folgenden Optionen:

Dateiname, f
Lesen Sie den anfänglichen Zustand des zellularen Automaten, dh die Startzeile, aus dem angegebenen
Datei. In der Datei wird jedes Nicht-Leerzeichen als lebendige Zelle betrachtet, a
newline beendet die Zeile und weitere Zeichen in der Datei werden ignoriert.

Muster, p
Lesen Sie den anfänglichen Zustand des zellularen Automaten, dh die Startzeile, aus dem angegebenen
String.

Jedes Zeichen in der Zeichenfolge, das kein Leerzeichen ist, wird als lebendige Zelle, als Zeilenumbruch, betrachtet
beendet die Zeile und weitere Zeichen in der Zeichenfolge werden ignoriert.

Bewertung, r
Stellen Sie die Videorate ein, d. h. die Anzahl der Bilder, die pro Sekunde erzeugt werden. Standard ist 25.

random_fill_ratio, Verhältnis
Legen Sie das zufällige Füllverhältnis für die erste Zeile des Mobilfunkautomaten fest. Es ist ein schwebendes
Punktzahlwert im Bereich von 0 bis 1, standardmäßig 1/PHI.

Diese Option wird ignoriert, wenn eine Datei oder ein Muster angegeben wird.

random_seed, Samen
Setzt den Seed zum zufälligen Füllen der Anfangszeile, muss eine ganze Zahl zwischen sein
0 und UINT32_MAX. Wenn nicht angegeben oder explizit auf -1 gesetzt, versucht der Filter,
Verwenden Sie einen guten Zufalls-Seed auf Best-Effort-Basis.

regieren
Legen Sie die Regel für den Mobilfunkautomaten fest, es handelt sich um eine Zahl im Bereich von 0 bis 255. Standardwert
ist 110.

Größe, s
Legen Sie die Größe des Ausgabevideos fest. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell.

If Dateinamen or Anleitungen angegeben ist, ist die Größe standardmäßig auf die Breite des
angegebene Anfangszustandszeile, und die Höhe wird auf gesetzt Breite * PHI.

If Größe gesetzt ist, muss es die Breite der angegebenen Musterzeichenfolge enthalten, und die
Das angegebene Muster wird in der größeren Reihe zentriert.

Wenn kein Dateiname oder keine Musterzeichenfolge angegeben wird, ist der Größenwert standardmäßig
"320x518" (wird für einen zufällig generierten Anfangszustand verwendet).

blättern
Wenn auf 1 gesetzt, scrollen Sie die Ausgabe nach oben, wenn alle Zeilen in der Ausgabe
schon gefüllt. Bei 0 wird die neu generierte Zeile über die oberste Zeile geschrieben
kurz nachdem die untere Reihe gefüllt ist. Standardmäßig auf 1.

start_voll, voller
Wenn der Wert auf 1 gesetzt ist, füllen Sie die Ausgabe vollständig mit generierten Zeilen, bevor Sie die
erster Rahmen. Dies ist das Standardverhalten, zum Deaktivieren setzen Sie den Wert auf 0.

Stich
Wenn auf 1 eingestellt, nähen Sie die linke und rechte Reihenkante zusammen. Dies ist die Standardeinstellung
Verhalten, zum Deaktivieren setzen Sie den Wert auf 0.

Beispiele

· Lesen Sie den Ausgangszustand aus Anleitungen, und geben Sie eine Ausgabe der Größe 200x400 an.

cellauto=f=Muster:s=200x400

· Generieren Sie eine zufällige Anfangszeile mit einer Breite von 200 Zellen mit einem Füllverhältnis von 2/3:

cellauto=verhältnis=2/3:s=200x200

· Erstellen Sie ein von Regel 18 generiertes Muster, beginnend mit einer einzelnen lebenden Zelle, die auf einem zentriert ist
Anfangsreihe mit Breite 100:

cellauto=p=@s=100x400:full=0:rule=18

· Geben Sie ein ausgefeilteres Anfangsmuster an:

cellauto=p='@@ @ @@':s=100x400:full=0:rule=18

Mandelbrot
Generieren Sie ein Mandelbrot-Mengen-Fraktal und zoomen Sie schrittweise zu dem mit angegebenen Punkt
start_x und start_y.

Diese Quelle akzeptiert die folgenden Optionen:

end_pts
Stellen Sie den Pkt-Wert des Terminals ein. Der Standardwert ist 400.

end_scale
Stellen Sie den Endskalenwert ein. Muss ein Gleitkommawert sein. Der Standardwert ist 0.3.

innere
Legen Sie den inneren Farbmodus fest, d. h. den Algorithmus, der zum Zeichnen des Mandelbrot-Fraktales verwendet wird
innerer Bereich.

Er nimmt einen der folgenden Werte an:

Schwarz
Schwarzmodus einstellen.

Konvergenz
Zeit bis zur Konvergenz anzeigen.

mincol
Legen Sie die Farbe basierend auf dem Punkt fest, der dem Ursprung der Iterationen am nächsten liegt.

Zeit
Periodenmodus einstellen.

Standardwert ist mincol.

Rettungs
Legen Sie den Bailout-Wert fest. Der Standardwert ist 10.0.

maxiter
Legen Sie das Maximum der vom Rendering-Algorithmus durchgeführten Iterationen fest. Standardwert ist
7189

äußere
Stellen Sie den äußeren Farbmodus ein. Er nimmt einen der folgenden Werte an:

iteration_count
Stellen Sie den Iterationszählmodus ein.

normalized_iteration_count
setze den normalisierten Iterationszählmodus.

Standardwert ist normalized_iteration_count.

Bewertung, r
Bildrate einstellen, ausgedrückt als Anzahl der Bilder pro Sekunde. Der Standardwert ist "25".

Größe, s
Rahmengröße einstellen. Die Syntax dieser Option finden Sie im Abschnitt "Videogröße" im
ffmpeg-utils-Handbuch. Der Standardwert ist "640x480".

start_scale
Stellen Sie den anfänglichen Skalenwert ein. Der Standardwert ist 3.0.

start_x
Legen Sie die anfängliche x-Position fest. Muss ein Gleitkommawert zwischen -100 und 100 sein.
Der Standardwert ist -0.743643887037158704752191506114774.

start_y
Legen Sie die anfängliche y-Position fest. Muss ein Gleitkommawert zwischen -100 und 100 sein.
Der Standardwert ist -0.131825904205311970493132056385139.

mptestrc
Generieren Sie verschiedene Testmuster, wie sie vom MPlayer-Testfilter generiert werden.

Die Größe des generierten Videos ist fest und beträgt 256x256. Diese Quelle ist nützlich in
insbesondere zum Testen von Codierungsfunktionen.

Diese Quelle akzeptiert die folgenden Optionen:

Bewertung, r
Geben Sie die Bildrate des Quellvideos als Anzahl der pro erzeugten Bilder an
zweite. Es muss ein String im Format sein Frame_Rate_num/Frame_Rate_Den, eine ganze Zahl
Zahl, eine Gleitkommazahl oder eine gültige Abkürzung für die Videobildrate. Der Standard
Wert ist "25".

Dauer, d
Legen Sie die Dauer des Quellvideos fest. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax.

Wenn nicht angegeben oder die angegebene Dauer negativ ist, soll das Video sein
für immer generiert.

Test t
Legen Sie die Nummer oder den Namen des durchzuführenden Tests fest. Unterstützte Tests sind:

dc_luma
dc_chroma
freq_luma
Frequenz_Chroma
amp_luma
amp_chroma
Cbp
mv
ring1
ring2
alle

Der Standardwert ist "all", der die Liste aller Tests durchläuft.

Einige Beispiele:

mptestsrc=t=dc_luma

erzeugt ein "dc_luma" Testmuster.

frei0r_src
Geben Sie eine freie Quelle an.

Um die Kompilierung dieses Filters zu aktivieren, müssen Sie den frei0r-Header installieren und konfigurieren
FFmpeg mit "--enable-frei0r".

Diese Quelle akzeptiert die folgenden Parameter:

Größe
Die Größe des zu generierenden Videos. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell.

Framerate
Die Framerate des generierten Videos. Es kann ein String der Form . sein num/am oder eine
Abkürzung für die Bildrate.

Filtername
Der Name der frei0r-Quelle, die geladen werden soll. Weitere Informationen zu frei0r und wie
Um die Parameter einzustellen, lesen Sie die frei0r Abschnitt in der Videofilter-Dokumentation.

filter_params
Eine durch '|' getrennte Liste von Parametern, die an die frei0r-Quelle übergeben werden.

Zum Beispiel, um eine frei0r partik0l Quelle mit einer Größe von 200x200 und einer Bildrate von 10 . zu generieren
die dem Overlay-Filter-Haupteingang überlagert wird:

frei0r_src=size=200x200:framerate=10:filter_name=partik0l:filter_params=1234 [Overlay]; [in][Überlagerung] Überlagerung

life
Erzeuge ein Lebensmuster.

Diese Quelle basiert auf einer Verallgemeinerung des Lebensspiels von John Conway.

Die Quelleneingabe stellt ein Lebensraster dar, jedes Pixel stellt eine Zelle dar, die in einer sein kann
von zwei möglichen Zuständen, lebendig oder tot. Jede Zelle interagiert mit ihren acht Nachbarn,
Dies sind die Zellen, die horizontal, vertikal oder diagonal benachbart sind.

Bei jeder Interaktion entwickelt sich das Gitter gemäß der angenommenen Regel, die die
Anzahl der benachbarten lebenden Zellen, die eine Zelle am Leben bleiben oder geboren werden lassen. Der regieren zu erhalten
ermöglicht es, die zu übernehmende Regel anzugeben.

Diese Quelle akzeptiert die folgenden Optionen:

Dateiname, f
Legen Sie die Datei fest, aus der der anfängliche Rasterzustand gelesen werden soll. In der Datei wird jede nicht-
Whitespace-Zeichen gelten als lebendige Zelle, und Newline wird verwendet, um die
Ende jeder Reihe.

Wenn diese Option nicht angegeben ist, wird das Anfangsraster zufällig generiert.

Bewertung, r
Stellen Sie die Videorate ein, d. h. die Anzahl der Bilder, die pro Sekunde erzeugt werden. Standard ist 25.

random_fill_ratio, Verhältnis
Legen Sie das zufällige Füllverhältnis für das anfängliche Zufallsraster fest. Es ist eine Gleitkommazahl
Wert im Bereich von 0 bis 1, standardmäßig 1/PHI. Sie wird ignoriert, wenn eine Datei angegeben wird.

random_seed, Samen
Setzt den Seed zum Füllen des anfänglichen Zufallsrasters, muss eine ganze Zahl zwischen sein
0 und UINT32_MAX. Wenn nicht angegeben oder explizit auf -1 gesetzt, versucht der Filter,
Verwenden Sie einen guten Zufalls-Seed auf Best-Effort-Basis.

regieren
Legen Sie die Lebensregel fest.

Eine Regel kann mit einem Code der Art "S ." angegeben werdenNS/BNB", wo NS und NB sind
Zahlenfolgen im Bereich 0-8, NS gibt die Anzahl der lebenden Nachbarzellen an
die eine lebende Zelle am Leben halten lassen, und NB die Anzahl der lebenden Nachbarzellen, die
eine tote Zelle zum Leben erwecken (dh "geboren"). "s" und "b" können an Ort und Stelle verwendet werden
von "S" bzw. "B".

Alternativ kann eine Regel durch eine 18-Bit-Ganzzahl angegeben werden. Die 9 höherwertigen Bits sind
Wird verwendet, um den nächsten Zellzustand zu codieren, wenn er für jede Anzahl von lebenden Nachbarn lebt
Zellen, die niederwertigen Bits spezifizieren die Regel für das "Geboren" neuer Zellen. Bits höherer Ordnung
für eine höhere Anzahl von Nachbarzellen codieren. Zum Beispiel die Zahl 6153 =
"(12<<9)+9" gibt eine Stay-Alive-Regel von 12 und eine Born-Regel von 9 an, was entspricht
zu "S23/B03".

Der Standardwert ist "S23/B3", die ursprüngliche Spiel-des-Lebens-Regel von Conway und wird
hält eine Zelle am Leben, wenn sie 2 oder 3 lebende Nachbarzellen hat, und wird eine neue Zelle geboren, wenn
Es gibt drei lebende Zellen um eine tote Zelle.

Größe, s
Legen Sie die Größe des Ausgabevideos fest. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell.

If Dateinamen angegeben ist, ist die Größe standardmäßig auf die gleiche Größe der Eingabe eingestellt
Datei. Wenn Größe gesetzt ist, muss sie die in der Eingabedatei angegebene Größe enthalten, und die
Das in dieser Datei definierte Anfangsraster wird im größeren resultierenden Bereich zentriert.

Wenn kein Dateiname angegeben wird, ist der Größenwert standardmäßig "320x240" (verwendet für a
zufällig generiertes Anfangsraster).

Stich
Wenn auf 1 gesetzt, nähen Sie die linke und rechte Gitterkante zusammen und die obere und untere
auch Kanten. Standardmäßig auf 1.

Schimmel
Zellenformgeschwindigkeit einstellen. Wenn gesetzt, geht eine tote Zelle von Tod_Farbe zu Schimmel_Farbe mit
Schritt von Schimmel. Schimmel kann einen Wert von 0 bis 255 haben.

leben_farbe
Legen Sie die Farbe von lebenden (oder neugeborenen) Zellen fest.

Tod_Farbe
Legen Sie die Farbe der toten Zellen fest. Wenn Schimmel gesetzt ist, ist dies die erste Farbe, die verwendet wird, um darzustellen
eine tote Zelle.

Schimmel_Farbe
Schimmelfarbe einstellen, für definitiv abgestorbene und verschimmelte Zellen.

Die Syntax dieser 3 Farboptionen finden Sie im Abschnitt "Farbe" in den ffmpeg-utils
Handbuch.

Beispiele

· Lesen Sie ein Raster von Anleitungen, und zentrieren Sie es auf einem Raster der Größe 300 x 300 Pixel:

Leben=f=Muster:s=300x300

· Generieren Sie ein zufälliges Raster der Größe 200x200 mit einem Füllverhältnis von 2/3:

Leben=Verhältnis=2/3:s=200x200

· Geben Sie eine benutzerdefinierte Regel zum Entwickeln eines zufällig generierten Rasters an:

Leben=Regel=S14/B34

· Vollständiges Beispiel mit Slow-Death-Effekt (Schimmel) mit ffplay:

ffplay -f lavfi life=s=300x200:mold=10:r=60:ratio=0.1:death_color=#C83232:life_color=#00ff00,scale=1200:800:flags=16

allrgb, Allyuv, Farbe, Farbe, haldclutsrc, nullsrc, rgbtestrc, smptebars, smptehdbars, Testsrc
Die Quelle "allrgb" gibt Frames der Größe 4096x4096 aller RGB-Farben zurück.

Die Quelle "allyuv" gibt Frames der Größe 4096x4096 aller Yuv-Farben zurück.

Die Quelle "Farbe" liefert eine einheitlich farbige Eingabe.

Die Quelle "haldclutsrc" stellt eine Identität Hald CLUT bereit. Siehe auch halsklaue Filter.

Die Quelle "nullsrc" gibt unverarbeitete Videoframes zurück. Es ist hauptsächlich nützlich, angestellt zu sein
in Analyse-/Debugging-Tools oder als Quelle für Filter, die die Eingabedaten ignorieren.

Die Quelle "rgbtestsrc" generiert ein RGB-Testmuster, das für die Erkennung von RGB vs. BGR . nützlich ist
Probleme. Sie sollten einen roten, grünen und blauen Streifen von oben nach unten sehen.

Die Quelle "smptebars" generiert ein Farbbalkenmuster basierend auf dem SMPTE-Engineering
Richtlinie EG 1-1990.

Die Quelle "smptehdbars" generiert ein Farbbalkenmuster basierend auf der SMPTE RP 219-2002.

Die Quelle "testsrc" erzeugt ein Testvideomuster, das ein Farbmuster zeigt, ein Scrollen
Farbverlauf und ein Zeitstempel. Dies ist hauptsächlich für Testzwecke gedacht.

Die Quellen akzeptieren die folgenden Parameter:

Farbe, Farbe, c
Geben Sie die Farbe der Quelle an, die nur in der Quelle "Farbe" verfügbar ist. Für die Syntax
dieser Option überprüfen Sie den Abschnitt "Farbe" im ffmpeg-utils-Handbuch.

Grad des
Geben Sie den Pegel der Hald CLUT an, die nur in der Quelle "haldclutsrc" verfügbar ist. EIN
Level von "N" erzeugt ein Bild von "N*N*N" von "N*N*N" Pixeln, das als Identität verwendet wird
Matrix für 3D-Lookup-Tabellen. Jede Komponente ist auf einer "1/(N*N)"-Skala kodiert.

Größe, s
Geben Sie die Größe des Quellvideos an. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "320x240".

Diese Option ist beim Filter "haldclutsrc" nicht verfügbar.

Bewertung, r
Geben Sie die Bildrate des Quellvideos als Anzahl der pro erzeugten Bilder an
zweite. Es muss ein String im Format sein Frame_Rate_num/Frame_Rate_Den, eine ganze Zahl
Zahl, eine Gleitkommazahl oder eine gültige Abkürzung für die Videobildrate. Der Standard
Wert ist "25".

sar Legen Sie das Beispielseitenverhältnis des Quellvideos fest.

Dauer, d
Legen Sie die Dauer des Quellvideos fest. Sehen Uhrzeit Dauer Abschnitt in
ffmpeg-utils(1) manuell für die akzeptierte Syntax.

Wenn nicht angegeben oder die angegebene Dauer negativ ist, soll das Video sein
für immer generiert.

Dezimalstellen, n
Legen Sie die Anzahl der Dezimalstellen fest, die im Zeitstempel angezeigt werden sollen, nur verfügbar in "testsrc"
Quelle.

Der angezeigte Zeitstempelwert entspricht dem ursprünglichen Zeitstempelwert
multipliziert mit der Zehnerpotenz des angegebenen Wertes. Der Standardwert ist 10.

Zum Beispiel folgendes:

testsrc=duration=5.3:size=qcif:rate=10

erzeugt ein Video mit einer Dauer von 5.3 Sekunden, mit einer Größe von 176x144 und einer Bildrate
von 10 Bildern pro Sekunde.

Die folgende Diagrammbeschreibung erzeugt eine rote Quelle mit einer Opazität von 0.2, mit
Größe "qcif" und einer Bildrate von 10 Bildern pro Sekunde.

Farbe=c=[E-Mail geschützt] :s=qcif:r=10

Soll der Eingabeinhalt ignoriert werden, kann "nullsrc" verwendet werden. Der folgende Befehl
erzeugt Rauschen in der Luminanzebene durch Verwendung des "geq"-Filters:

nullsrc=s=256x256, geq=zufällig(1)*255:128:128

Befehle

Die Quelle "color" unterstützt die folgenden Befehle:

c, Farbe
Legen Sie die Farbe des erstellten Bildes fest. Akzeptiert die gleiche Syntax des entsprechenden Farbe
.

VIDEO SPÜLEN


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Videosenken.

Puffersenke
Puffern Sie Videoframes und stellen Sie sie am Ende des Filterdiagramms zur Verfügung.

Diese Senke ist hauptsächlich für den programmatischen Gebrauch gedacht, insbesondere über die Schnittstelle
definiert in libavfilter/buffersink.h oder das Optionssystem.

Es akzeptiert einen Zeiger auf eine AVBufferSinkContext-Struktur, die die eingehenden . definiert
Pufferformate, die als undurchsichtiger Parameter an "avfilter_init_filter" übergeben werden für
Initialisierung.

Nullsenke
Null-Videosenke: Machen Sie absolut nichts mit dem Eingabevideo. Es ist hauptsächlich nützlich als
Vorlage und zur Verwendung in Analyse-/Debugging-Tools.

MULTIMEDIA FILTER


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Multimediafilter.

Aphasemeter
Wandeln Sie Eingangsaudio in einen Videoausgang um und zeigen Sie die Audiophase an.

Der Filter akzeptiert die folgenden Optionen:

Bewertung, r
Stellen Sie die Ausgabe-Framerate ein. Der Standardwert ist 25.

Größe, s
Legen Sie die Videogröße für die Ausgabe fest. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "800x400".

rc
gc
bc Geben Sie den Rot-, Grün- und Blaukontrast an. Standardwerte sind 2, 7 und 1. Zulässiger Bereich
ist "[0, 255]".

mpc Legen Sie die Farbe fest, die zum Zeichnen der Medianphase verwendet wird. Wenn die Farbe "keine" ist, ist dies
Standardmäßig wird kein Median-Phasenwert gezeichnet.

Der Filter exportiert auch die Frame-Metadaten "lavfi.aphasemeter.phase", die den Mittelwert darstellen
Phase des aktuellen Audioframes. Der Wert liegt im Bereich "[-1, 1]". Die "-1" bedeutet links und rechts
Kanäle sind vollständig phasenverschoben und 1 bedeutet, dass Kanäle phasengleich sind.

Vektorskop
Wandeln Sie Eingangsaudio in einen Videoausgang um, der den Audiovektorbereich darstellt.

Der Filter wird verwendet, um den Unterschied zwischen den Kanälen des Stereo-Audiostreams zu messen. EIN
monoaurales Signal, bestehend aus identischem linken und rechten Signal, ergibt gerades
vertikale Linie. Jede Stereotrennung ist als Abweichung von dieser Linie sichtbar, wodurch ein
Lissajous-Figur. Wenn die gerade (oder davon abweichende) aber horizontale Linie erscheint, ist dies
zeigt an, dass der linke und der rechte Kanal phasenverschoben sind.

Der Filter akzeptiert die folgenden Optionen:

Modus m
Stellen Sie den Vektorskopmodus ein.

Verfügbare Werte sind:

Lissajous
Lissajous um 45 Grad gedreht.

lissajous_xy
Wie oben, aber nicht gedreht.

polar
Form ähnlich einem halben Kreis.

Standardwert ist Lissajous.

Größe, s
Legen Sie die Videogröße für die Ausgabe fest. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "400x400".

Bewertung, r
Stellen Sie die Ausgabe-Framerate ein. Der Standardwert ist 25.

rc
gc
bc
ac Geben Sie den Rot-, Grün-, Blau- und Alpha-Kontrast an. Standardwerte sind 40, 160, 80 und
255. Zulässiger Bereich ist "[0, 255]".

rf
gf
bf
af Legen Sie Rot-, Grün-, Blau- und Alpha-Fade fest. Standardwerte sind 15, 10, 5 und 5.
Zulässiger Bereich ist "[0, 255]".

Zoom
Stellen Sie den Zoomfaktor ein. Der Standardwert ist 1. Erlaubter Bereich ist "[1, 10]".

Beispiele

· Komplettes Beispiel mit ffplay:

ffplay -f lavfi 'movie=input.mp3, asplit [a][out1];
[a] avectorscope=zoom=1.3:rc=2:gc=200:bc=10:rf=1:gf=8:bf=7 [out0]'

concat
Verketten Sie Audio- und Videostreams und fügen Sie sie nacheinander zusammen.

Der Filter arbeitet mit Segmenten synchronisierter Video- und Audiostreams. Alle Segmente müssen
haben die gleiche Anzahl von Streams jedes Typs, und das wird auch die Anzahl der Streams sein
am Ausgang.

Der Filter akzeptiert die folgenden Optionen:

n Legen Sie die Anzahl der Segmente fest. Standard ist 2.

v Legen Sie die Anzahl der ausgegebenen Videostreams fest, d. h. die Anzahl der Videostreams in
jedes Segment. Standard ist 1.

a Legen Sie die Anzahl der ausgegebenen Audiostreams fest, d. h. die Anzahl der Audiostreams in
jedes Segment. Standard ist 0.

unsicher
Unsicheren Modus aktivieren: Nicht fehlschlagen, wenn Segmente ein anderes Format haben.

Der Filter hat v+a Ausgänge: zuerst v Videoausgänge, dann a Audio-Ausgänge.

Es gibt nx(v+a) Eingaben: zuerst die Eingaben für das erste Segment, in der gleichen Reihenfolge wie die
Ausgänge, dann die Eingänge für das zweite Segment usw.

Ähnliche Streams haben aus verschiedenen Gründen nicht immer genau dieselbe Dauer
einschließlich Codec-Frame-Größe oder schlampiges Authoring. Aus diesem Grund verbundene synchronisierte
Streams (zB ein Video und seine Audiospur) sollten auf einmal verkettet werden. Der Konkat
Filter verwendet die Dauer des längsten Streams in jedem Segment (außer dem letzten),
und wenn nötig kürzere Audiostreams mit Stille auffüllen.

Damit dieser Filter richtig funktioniert, müssen alle Segmente beim Zeitstempel 0 beginnen.

Alle entsprechenden Streams müssen in allen Segmenten dieselben Parameter aufweisen; die Filterung
das System wählt automatisch ein gemeinsames Pixelformat für Videostreams und ein gemeinsames
Sample-Format, Sample-Rate und Kanal-Layout für Audiostreams, aber auch andere Einstellungen, wie z
als Auflösung, muss vom Benutzer explizit konvertiert werden.

Unterschiedliche Bildraten sind akzeptabel, führen jedoch zu einer variablen Bildrate bei der Ausgabe; Sein
Stellen Sie sicher, dass Sie die Ausgabedatei so konfigurieren, dass sie damit verarbeitet wird.

Beispiele

· Verketten Sie eine Eröffnung, eine Episode und ein Ende, alles in zweisprachiger Version (Video in
Stream 0, Audio in Stream 1 und 2):

ffmpeg -i Eröffnung.mkv -i Episode.mkv -i Endung.mkv -filter_complex \
'[0:0] [0:1] [0:2] [1:0] [1:1] [1:2] [2:0] [2:1] [2:2]
concat=n=3:v=1:a=2 [v] [a1] [a2]' \
-map '[v]' -map '[a1]' -map '[a2]' Ausgabe.mkv

· Verketten Sie zwei Teile, indem Sie Audio und Video getrennt behandeln, indem Sie den (a)Film verwenden
Quellen und Anpassen der Auflösung:

film=part1.mp4, scale=512:288 [v1] ; amovie=part1.mp4 [a1] ;
film=part2.mp4, scale=512:288 [v2] ; amovie=part2.mp4 [a2] ;
[v1] [v2] concat [outv] ; [a1] [a2] concat=v=0:a=1 [outa]

Beachten Sie, dass beim Stitch eine Desynchronisierung stattfindet, wenn die Audio- und Videostreams dies nicht tun
haben in der ersten Datei genau die gleiche Dauer.

ebur128
EBU R128 Scannerfilter. Dieser Filter nimmt einen Audiostream als Eingabe und gibt ihn aus
unverändert. Standardmäßig protokolliert es eine Nachricht mit einer Frequenz von 10 Hz mit dem Momentary
Lautheit (gekennzeichnet durch "M"), Kurzzeitlautstärke ("S"), Integrierte Lautheit ("I") und
Lautstärkebereich ("LRA").

Der Filter hat auch einen Videoausgang (siehe Video Option) mit einer Echtzeitgrafik zu
Beobachten Sie die Lautstärkeentwicklung. Die Grafik enthält die oben erwähnte protokollierte Nachricht,
es wird also nicht mehr gedruckt, wenn diese Option gesetzt ist, es sei denn, die ausführliche Protokollierung ist eingestellt.
Der Hauptgrafikbereich enthält die Kurzzeitlautstärke (3 Sekunden Analyse) und die
Anzeige rechts ist für die momentane Lautstärke (400 Millisekunden).

Mehr Informationen zur Loudness-Empfehlung EBU R128 auf
<http://tech.ebu.ch/loudness>.

Der Filter akzeptiert die folgenden Optionen:

Video
Aktivieren Sie den Videoausgang. Der Audiostream wird unverändert übergeben, unabhängig davon, ob diese Option aktiviert ist
eingestellt oder nein. Der Videostream ist der erste Ausgabestream, wenn er aktiviert ist. Standard ist
0.

Größe
Stellen Sie die Videogröße ein. Diese Option gilt nur für Videos. Für die Syntax dieser Option,
Überprüf den "Video Größe" Abschnitt in ffmpeg-utils manuell. Standard und Minimum
Auflösung ist "640x480".

Meter
Stellen Sie den EBU-Skalenmesser ein. Der Standardwert ist 9. Übliche Werte sind 9 bzw. 18 für
EBU-Skalenmesser +9 und EBU-Skalenmesser +18. Jeder andere ganzzahlige Wert zwischen diesem Bereich
ist erlaubt.

Metadaten
Legen Sie die Metadateninjektion fest. Wenn auf 1 gesetzt, wird der Audioeingang in 100 ms unterteilt
Ausgabeframes, von denen jeder verschiedene Lautheitsinformationen in Metadaten enthält. Alle
den Metadatenschlüsseln wird "lavfi.r128." vorangestellt.

Standard ist 0.

Framelog
Erzwingen Sie die Frame-Protokollierungsebene.

Verfügbare Werte sind:

Info
Informationsprotokollierungsebene

ausführlich
ausführliche Protokollierungsebene

Standardmäßig ist die Protokollierungsebene auf eingestellt Info. Wenn der Video oder im Metadaten Optionen sind
eingestellt, wechselt es zu ausführlich.

Haupt
Spitzenmodus(e) einstellen.

Verfügbare Modi können kumuliert werden (die Option ist ein "Flag"-Typ). Mögliche Werte sind:

keine
Deaktivieren Sie jeden Peak-Modus (Standard).

Sample
Aktivieren Sie den Sample-Peak-Modus.

Einfacher Peak-Modus auf der Suche nach dem höheren Sample-Wert. Es protokolliert eine Nachricht für
Sample-Peak (gekennzeichnet durch "SPK").

was immer dies auch sein sollte.
Aktivieren Sie den True-Peak-Modus.

Wenn aktiviert, erfolgt die Peak-Suche auf einer überabgetasteten Version des Eingabestreams
für eine bessere Spitzengenauigkeit. Es protokolliert eine Nachricht für True-Peak. (gekennzeichnet durch "TPK")
und True-Peak pro Frame (identifiziert durch "FTPK"). Dieser Modus erfordert einen Build mit
"libswresample".

Beispiele

· Echtzeit-Grafik mit ffplay, mit einem EBU-Skalenmesser +18:

ffplay -f lavfi -i "movie=input.mp3,ebur128=video=1:meter=18 [out0][out1]"

· Führen Sie eine Analyse durch mit ffmpeg:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -

verschachteln, verschachteln
Frames von mehreren Eingängen zeitlich verschachteln.

"interleave" arbeitet mit Videoeingängen, "ainterleave" mit Audio.

Diese Filter lesen Frames von mehreren Eingängen und senden den ältesten Frame in der Warteschlange an den
Ausgabe.

Eingabestreams müssen gut definierte, monoton ansteigende Frame-Zeitstempelwerte aufweisen.

Um einen Frame an die Ausgabe zu senden, müssen diese Filter mindestens einen Frame in die Warteschlange stellen
für jeden Eingang, so dass sie nicht funktionieren können, falls ein Eingang noch nicht abgeschlossen ist und nicht funktioniert
eingehende Frames empfangen.

Betrachten Sie zum Beispiel den Fall, dass eine Eingabe ein "Auswahl"-Filter ist, der Eingaben immer auslässt
Rahmen. Der "Interleave"-Filter liest weiterhin aus dieser Eingabe, wird es jedoch nie sein
in der Lage, neue Frames an den Ausgang zu senden, bis der Eingang ein Stream-Ende-Signal sendet.

Abhängig von der Eingangssynchronisation werden die Filter auch Frames verwerfen, falls ein Eingang
empfängt mehr Frames als die anderen und die Warteschlange ist bereits gefüllt.

Diese Filter akzeptieren die folgenden Optionen:

nb_eingaben, n
Stellen Sie die Anzahl der verschiedenen Eingänge ein, standardmäßig sind es 2.

Beispiele

· Verschachteln Sie Frames, die zu verschiedenen Streams gehören, mit ffmpeg:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0:v][1:v] interleave" out.avi

· Flimmernde Unschärfe-Effekt hinzufügen:

select='if(gt(zufällig(0), 0.2), 1, 2)':n=2 [tmp], boxblur=2:2, [tmp] interleave

Dauerwellen, apermen
Legen Sie Lese-/Schreibberechtigungen für die Ausgabeframes fest.

Diese Filter richten sich hauptsächlich an Entwickler, um den direkten Pfad im folgenden Filter zu testen
in der Filtergrafik.

Die Filter akzeptieren die folgenden Optionen:

Modus
Wählen Sie den Berechtigungsmodus aus.

Es akzeptiert die folgenden Werte:

keine
Nichts tun. Dies ist die Standardeinstellung.

ro Legen Sie alle Ausgabeframes schreibgeschützt fest.

rw Stellen Sie alle Ausgabeframes direkt beschreibbar ein.

Umschalten
Machen Sie den Frame schreibgeschützt, wenn er beschreibbar ist, und schreibbar, wenn er schreibgeschützt ist.

zufällig
Legen Sie jeden Ausgaberahmen schreibgeschützt oder zufällig beschreibbar fest.

Samen
Setzen Sie den Samen für die zufällig mode, muss eine ganze Zahl zwischen 0 und sein
"UINT32_MAX". Wenn nicht angegeben oder explizit auf "-1" gesetzt, versucht der Filter,
Verwenden Sie einen guten Zufalls-Seed auf Best-Effort-Basis.

Hinweis: Im Falle eines automatisch eingefügten Filters zwischen dem Berechtigungsfilter und dem folgenden,
die Berechtigung wird im folgenden Filter möglicherweise nicht wie erwartet empfangen. Einfügen von a
Format or aformat Filter vor dem Perms/Aperms-Filter kann dieses Problem vermeiden.

auswählen, auswählen
Wählen Sie Frames aus, die ausgegeben werden sollen.

Dieser Filter akzeptiert die folgenden Optionen:

Ausdruck, e
Set-Ausdruck, der für jeden Eingaberahmen ausgewertet wird.

Wenn der Ausdruck zu Null ausgewertet wird, wird der Frame verworfen.

Wenn das Bewertungsergebnis negativ oder NaN ist, wird der Frame an den ersten Ausgang gesendet;
andernfalls wird es mit dem Index "ceil(val)-1" an den Ausgang gesendet, vorausgesetzt, der Eingang
Index beginnt bei 0.

Beispielsweise entspricht ein Wert von 1.2 der Ausgabe mit dem Index "ceil(1.2)-1 = 2-1 =
1", das ist die zweite Ausgabe.

Ausgänge, n
Stellen Sie die Anzahl der Ausgänge ein. Der Ausgang, an den der ausgewählte Frame gesendet werden soll, basiert auf
das Ergebnis der Auswertung. Der Standardwert ist 1.

Der Ausdruck kann die folgenden Konstanten enthalten:

n Die (laufende) Nummer des gefilterten Frames, beginnend bei 0.

ausgewählt_n
Die (laufende) Nummer des ausgewählten Frames, beginnend bei 0.

vorherige_ausgewählte_n
Die fortlaufende Nummer des zuletzt ausgewählten Frames. Es ist NAN, wenn nicht definiert.

TB Die Zeitbasis der Eingabezeitstempel.

pts Der PTS (Presentation TimeStamp) des gefilterten Videoframes, ausgedrückt in TB Einheiten.
Es ist NAN, wenn nicht definiert.

t Der PTS des gefilterten Videoframes, ausgedrückt in Sekunden. Es ist NAN, wenn nicht definiert.

prev_pts
Der PTS des zuvor gefilterten Videoframes. Es ist NAN, wenn nicht definiert.

vorherige_ausgewählte_pts
Der PTS des letzten zuvor gefilterten Videoframes. Es ist NAN, wenn nicht definiert.

prev_ausgewählt_t
Der PTS des zuletzt ausgewählten Videoframes. Es ist NAN, wenn nicht definiert.

start_pts
Der PTS des ersten Videoframes im Video. Es ist NAN, wenn nicht definiert.

start_t
Die Zeit des ersten Videoframes im Video. Es ist NAN, wenn nicht definiert.

Bildtyp (Video nur)
Der Typ des gefilterten Frames. Es kann einen der folgenden Werte annehmen:

I
P
B
S
SI
SP
BI
interlace_typ (Video nur)
Der Frame-Interlace-Typ. Es kann einen der folgenden Werte annehmen:

PROGRESSIV
Der Frame ist progressiv (nicht interlaced).

OBEN ZUERST
Der Frame ist Top-Field-First.

UNTENFIRST
Der Rahmen ist mit dem unteren Halbbild zuerst.

verbraucht_sample_n (Audio nur)
die Anzahl der ausgewählten Samples vor dem aktuellen Frame

Proben_n (Audio nur)
die Anzahl der Samples im aktuellen Frame

Beispielrate (Audio nur)
die Eingangs-Samplerate

Schlüssel Dies ist 1, wenn der gefilterte Frame ein Keyframe ist, ansonsten 0.

Post die Position des gefilterten Frames in der Datei, -1 wenn die Informationen nicht verfügbar sind
(zB für synthetisches Video)

Szene (Video nur)
Wert zwischen 0 und 1, um eine neue Szene anzuzeigen; ein niedriger Wert spiegelt eine geringe Wahrscheinlichkeit wider
für den aktuellen Frame, um eine neue Szene einzuleiten, während ein höherer Wert den aktuellen
Rahmen ist eher einer (siehe das Beispiel unten)

Der Standardwert des Auswahlausdrucks ist "1".

Beispiele

· Wählen Sie alle Frames in der Eingabe aus:

wählen

Das obige Beispiel ist dasselbe wie:

auswählen=1

· Alle Frames überspringen:

auswählen=0

· Wählen Sie nur I-Frames aus:

select='eq(pict_type\,I)'

· Wählen Sie alle 100 ein Bild aus:

select='not(mod(n\,100))'

· Wählen Sie nur Bilder aus, die im Zeitintervall 10-20 enthalten sind:

select=zwischen(t\,10\,20)

· Wählen Sie nur I-Frames aus, die im Zeitintervall 10-20 enthalten sind:

select=zwischen(t\,10\,20)*eq(pict_type\,I)

· Bilder mit einem Mindestabstand von 10 Sekunden auswählen:

select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'

· Verwenden Sie aselect, um nur Audioframes mit einer Sample-Nummer > 100 auszuwählen:

aselect='gt(samples_n\,100)'

· Erstellen Sie ein Mosaik der ersten Szenen:

ffmpeg -i video.avi -vf select='gt(scene\,0.4)',scale=160:120,tile -frames:v 1 preview.png

Vergleich Szene gegen einen Wert zwischen 0.3 und 0.5 ist im Allgemeinen eine vernünftige Wahl.

· Senden Sie gerade und ungerade Frames an separate Ausgänge und setzen Sie sie zusammen:

select=n=2:e='mod(n, 2)+1' [ungerade][gerade]; [ungerade] pad=h=2*ih [tmp]; [tmp][even] overlay=y=h

sendcmd, asendcmd
Senden Sie Befehle an Filter im Filtergraph.

Diese Filter lesen Befehle, die an andere Filter im Filtergraph gesendet werden sollen.

"sendcmd" muss zwischen zwei Videofiltern eingefügt werden, "asendcmd" muss dazwischen eingefügt werden
zwei Audiofilter, aber ansonsten verhalten sie sich gleich.

Die Angabe von Befehlen kann in den Filterargumenten mit dem Befehle
Option, oder in einer Datei, die von der Dateinamen .

Diese Filter akzeptieren die folgenden Optionen:

Befehle, c
Legen Sie die Befehle fest, die gelesen und an die anderen Filter gesendet werden sollen.

Dateiname, f
Legen Sie den Dateinamen der Befehle fest, die gelesen und an die anderen Filter gesendet werden sollen.

Befehle Syntax

Eine Befehlsbeschreibung besteht aus einer Folge von Intervallangaben, bestehend aus a
Liste von Befehlen, die ausgeführt werden sollen, wenn ein bestimmtes Ereignis in Bezug auf dieses Intervall auftritt.
Das auftretende Ereignis ist normalerweise die aktuelle Frame-Zeit, die eine bestimmte Zeit betritt oder verlässt
Intervall.

Ein Intervall wird durch die folgende Syntax angegeben:

[- ] ;

Das Zeitintervall wird durch die Starte das Spiel und ENDE Zeiten. ENDE ist optional und voreingestellt
zur maximalen Zeit.

Die aktuelle Framezeit wird innerhalb des angegebenen Intervalls berücksichtigt, wenn sie in enthalten ist
das Intervall [Starte das Spiel, ENDE), d. h. wenn die Zeit größer oder gleich ist Starte das Spiel und ein
weniger als ENDE.

BEFEHLE besteht aus einer Folge von einer oder mehreren Befehlsangaben, getrennt durch ",",
in Bezug auf dieses Intervall. Die Syntax einer Befehlsspezifikation ist gegeben durch:

[ ]

FLAGGEN ist optional und gibt die Art der Ereignisse an, die sich auf das Zeitintervall beziehen, das
ermöglicht das Senden des angegebenen Befehls und muss eine Folge von Identifier-Flags sein, die nicht null ist
getrennt durch "+" oder "|" und zwischen "[" und "]" eingeschlossen.

Folgende Flags werden erkannt:

eingeben
Der Befehl wird gesendet, wenn der aktuelle Frame-Zeitstempel in das angegebene Intervall eintritt. In
mit anderen Worten, der Befehl wird gesendet, wenn der vorherige Frame-Zeitstempel nicht im
gegebenen Intervall, und der Strom ist.

verlassen
Der Befehl wird gesendet, wenn der aktuelle Frame-Zeitstempel das angegebene Intervall verlässt. In
mit anderen Worten, der Befehl wird gesendet, wenn der vorherige Frame-Zeitstempel im angegebenen Wert war
Intervall, und der Strom ist es nicht.

If FLAGGEN nicht angegeben ist, wird ein Standardwert von "[enter]" angenommen.

TARGET gibt das Ziel des Befehls an, normalerweise den Namen der Filterklasse oder a
spezifischer Name der Filterinstanz.

COMMAND gibt den Namen des Befehls für den Zielfilter an.

ARG ist optional und gibt die optionale Liste von Argumenten für die angegebene an COMMAND.

Zwischen einer Intervallangabe und einer anderen, Leerzeichen oder Zeichenfolgen
beginnend mit "#" bis zum Zeilenende werden ignoriert und können zur Kommentierung von Kommentaren verwendet werden.

Es folgt eine vereinfachte BNF-Beschreibung der Befehlsspezifikationssyntax:

::= "eingeben" | "verlassen"
::= [(+|"|") ]
::= ["[" "]"] [ ]
::= [, ]
::= [- ]
::= [; ]

Beispiele

· Geben Sie die Audiotempoänderung bei Sekunde 4 an:

asendcmd=c='4.0 atempo tempo 1.5',atempo

· Geben Sie eine Liste von Zeichentext- und Farbtonbefehlen in einer Datei an.

# Text im Intervall 5-10 . anzeigen
5.0-10.0 [enter] drawtext reinit 'fontfile=FreeSerif.ttf:text=hallo world',
[leave] drawtext reinit 'fontfile=FreeSerif.ttf:text=';

# Entsättigen Sie das Bild im Intervall von 15-20
15.0-20.0 [Eingabe] Farbton 0,
[enter] drawtext reinit 'fontfile=FreeSerif.ttf:text=nocolor',
[lassen] Farbton s 1,
[leave] drawtext reinit 'fontfile=FreeSerif.ttf:text=color';

# Wenden Sie einen exponentiellen Sättigungs-Ausblendeffekt an, beginnend mit der Zeit 25
25 [Eingabe] Hue s exp(25-t)

Ein Filtergraph, der es ermöglicht, die obige Befehlsliste, die in einer Datei gespeichert ist, zu lesen und zu verarbeiten
test.cmd, kann angegeben werden mit:

sendcmd=f=test.cmd,drawtext=fontfile=FreeSerif.ttf:text='',hue

Einstellungen, astpts
Ändern Sie den PTS (Präsentationszeitstempel) der Eingabeframes.

"setpts" funktioniert bei Video-Frames, "asetpts" bei Audio-Frames.

Dieser Filter akzeptiert die folgenden Optionen:

ausdr
Der Ausdruck, der für jeden Frame ausgewertet wird, um seinen Zeitstempel zu erstellen.

Der Ausdruck wird über die eval-API ausgewertet und kann die folgenden Konstanten enthalten:

FRAME_RATE
Bildrate, nur für Videos mit konstanter Bildrate definiert

PTS Der Präsentationszeitstempel in der Eingabe

N Die Zählung des Eingabeframes für Video oder die Anzahl der verbrauchten Samples, nicht
einschließlich des aktuellen Frames für Audio, beginnend bei 0.

NB_CONSUMED_SAMPLES
Die Anzahl der konsumierten Samples, ohne den aktuellen Frame (nur Audio)

NB_SAMPLES, S
Die Anzahl der Samples im aktuellen Frame (nur Audio)

BEISPIELRATE, SR
Die Audio-Samplerate.

STARTPTS
Der PTS des ersten Frames.

STARTT
die Zeit in Sekunden des ersten Frames

VERNETZT
Geben Sie an, ob der aktuelle Frame interlaced ist.

T die Zeit in Sekunden des aktuellen Frames

POS ursprüngliche Position in der Datei des Rahmens oder undefiniert, wenn für den aktuellen nicht definiert
Rahmen

PREV_INPTS
Der vorherige Eingabe-PTS.

PREV_INT
vorherige Eingabezeit in Sekunden

PREV_OUTPTS
Der vorherige Ausgabe-PTS.

PREV_OUTT
vorherige Ausgabezeit in Sekunden

RTCTIME
Die Zeit der Wanduhr (RTC) in Mikrosekunden. Dies ist veraltet, verwenden Sie Zeit(0) statt.

RTCSTART
Die Wanduhrzeit (RTC) zu Beginn des Films in Mikrosekunden.

TB Die Zeitbasis der Eingabezeitstempel.

Beispiele

· Beginnen Sie mit dem PTS-Zählen von Null

setpts=PTS-STARTPTS

· Zeitraffereffekt anwenden:

setpts=0.5*PTS

· Zeitlupeneffekt anwenden:

setpts=2.0*PTS

· Feste Rate von 25 Bildern pro Sekunde einstellen:

Sätze=N/(25*TB)

· Feste Rate 25 fps mit etwas Jitter einstellen:

setpts='1/(25*TB) * (N + 0.05 * sin(N*2*PI/25))'

· Wenden Sie einen Offset von 10 Sekunden auf den Eingangs-PTS an:

setpts=PTS+10/TB

· Zeitstempel aus einer "Live-Quelle" generieren und auf die aktuelle Zeitbasis umbasieren:

setpts='(RTCTIME - RTCSTART) / (TB * 1000000)'

· Zeitstempel durch Zählen von Samples generieren:

asetpts=N/SR/TB

setb, asettb
Legen Sie die Zeitbasis fest, die für die Zeitstempel der Ausgabeframes verwendet werden soll. Es ist hauptsächlich zum Testen nützlich
Konfiguration der Zeitbasis.

Es akzeptiert die folgenden Parameter:

Ausdruck, tb
Der Ausdruck, der in die Ausgabezeitbasis ausgewertet wird.

Der Wert für tb ist ein arithmetischer Ausdruck, der ein rationales repräsentiert. Der Ausdruck kann
enthalten die Konstanten "AVTB" (die Standardzeitbasis), "intb" (die Eingabezeitbasis) und "sr"
(die Abtastrate, nur Audio). Der Standardwert ist "intb".

Beispiele

· Stellen Sie die Zeitbasis auf 1/25:

settb=expr=1/25

· Stellen Sie die Zeitbasis auf 1/10:

setb=expr=0.1

· Stellen Sie die Zeitbasis auf 1001/1000:

settb=1+0.001

· Stellen Sie die Zeitbasis auf 2*intb ein:

settb=2*intb

· Legen Sie den Standardwert für die Zeitbasis fest:

settb=AVTB

showcqt
Wandeln Sie Eingangsaudio in einen Videoausgang um, der das Frequenzspektrum logarithmisch darstellt
(unter Verwendung konstanter Q-Transformation mit Brown-Puckette-Algorithmus), mit musikalischer Tonskala, von
E0 bis D#10 (10 Oktaven).

Der Filter akzeptiert die folgenden Optionen:

Volumen
Geben Sie den Ausdruck für das Transformationsvolumen (Multiplikator) an. Der Ausdruck kann enthalten
Variablen:

Frequenz, Frequenz, f
die Frequenz, bei der die Transformation ausgewertet wird

Zeitschaltuhr, tc
Wert der Timeclamp-Option

und Funktionen:

a_gewichtung(f)
A-Bewertung gleicher Lautstärke

b_gewichtung(f)
B-Bewertung gleicher Lautstärke

c_gewichtung(f)
C-Bewertung gleicher Lautstärke

Der Standardwert ist 16.

tlänge
Geben Sie den Ausdruck für die Transformationslänge an. Der Ausdruck kann Variablen enthalten:

Frequenz, Frequenz, f
die Frequenz, bei der die Transformation ausgewertet wird

Zeitschaltuhr, tc
Wert der Timeclamp-Option

Der Standardwert ist "384/f*tc/(384/f+tc)".

Zeitschaltuhr
Geben Sie die Transformationszeitspanne an. Bei niedriger Frequenz gibt es einen Kompromiss zwischen der Genauigkeit
im Zeit- und Frequenzbereich. Wenn timeclamp niedriger ist, ist das Ereignis im Zeitbereich
genauer dargestellt (zB schnelle Bassdrum), sonst Ereignis in Frequenz
Domäne wird genauer dargestellt (z. B. Bassgitarre). Akzeptabler Wert ist [0.1,
1.0]. Der Standardwert ist 0.17.

Koeffizientenklemme
Geben Sie die Transformations-Koeffizientenklemme an. Wenn coeffclamp niedriger ist, ist die Transformation genauer,
andernfalls ist die Transformation schneller. Der zulässige Wert ist [0.1, 10.0]. Der Standardwert ist 1.0.

Gamma
Gamma angeben. Niedrigeres Gamma macht das Spektrum kontrastreicher, höheres Gamma macht das
Spektrum mit mehr Reichweite. Der zulässige Wert ist [1.0, 7.0]. Der Standardwert ist 3.0.

gamma2
Geben Sie das Gamma des Balkendiagramms an. Der zulässige Wert ist [1.0, 7.0]. Der Standardwert ist 1.0.

Schriftdatei
Geben Sie die Schriftartdatei für die Verwendung mit Freetype an. Wenn nicht angegeben, verwenden Sie eingebettete Schriftarten.

Schriftfarbe
Geben Sie den Ausdruck für die Schriftfarbe an. Dies ist ein arithmetischer Ausdruck, der zurückgeben sollte
ganzzahliger Wert 0xRRGGBB. Der Ausdruck kann Variablen enthalten:

Frequenz, Frequenz, f
die Frequenz, bei der die Transformation ausgewertet wird

Zeitschaltuhr, tc
Wert der Timeclamp-Option

und Funktionen:

Midi (w)
Midi-Zahl der Frequenz f, einige Midi-Zahlen: E0(16) C1(24) C2(36) A4(69)

r(x), g(x), b(x)
Rot-, Grün- und Blauwert der Intensität x

Standardwert ist "st(0, (midi(f)-59.5)/12); st(1, if(zwischen(ld(0),0,1),
0.5-0.5*cos(2*PI*ld(0)), 0)); R(1-ld(1)) + b(ld(1))"

fullhd
Bei Einstellung auf 1 (Standard) beträgt die Videogröße 1920 x 1080 (Full HD), bei Einstellung auf 0 wird die
Videogröße ist 960x540. Verwenden Sie diese Option, um die CPU-Auslastung zu verringern.

fps Videofps angeben. Der Standardwert ist 25.

zählen
Geben Sie die Anzahl der Transformationen pro Frame an, damit es fps*count-Transformationen pro Sekunde gibt.
Beachten Sie, dass die Audiodatenrate durch fps*count teilbar sein muss. Der Standardwert ist 6.

Beispiele

· Audio abspielen, während das Spektrum angezeigt wird:

ffplay -f lavfi 'movie=a.mp3, asplit [a][out1]; [a] showcqt [out0]'

· Wie oben, jedoch mit einer Bildrate von 30 fps:

ffplay -f lavfi 'movie=a.mp3, asplit [a][out1]; [a] showcqt=fps=30:count=5 [out0]'

· Spielen mit 960 x 540 und geringerer CPU-Auslastung:

ffplay -f lavfi 'movie=a.mp3, asplit [a][out1]; [a] showcqt=fullhd=0:count=3 [out0]'

· A1 und seine Harmonischen: A1, A2, (nahe)E3, A3:

ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit[a][out1]; [a] showcqt [out0]'

· Wie oben, jedoch mit höherer Genauigkeit im Frequenzbereich (und langsamer):

ffplay -f lavfi 'aevalsrc=0.1*sin(2*PI*55*t)+0.1*sin(4*PI*55*t)+0.1*sin(6*PI*55*t)+0.1*sin(8*PI*55*t),
asplit[a][out1]; [a] showcqt=timeclamp=0.5 [out0]'

· B-Bewertung gleicher Lautstärke

Volumen=16*b_Gewichtung(f)

· Niedrigerer Q-Faktor

tlänge=100/f*tc/(100/f+tc)

· Benutzerdefinierte Schriftfarbe, C-Note ist grün gefärbt, andere sind blau gefärbt

fontcolor='if(mod(floor(midi(f)+0.5),12), 0x0000FF, g(1))'

· Benutzerdefiniertes Gamma, jetzt ist das Spektrum linear zur Amplitude.

gamma=2:gamma2=2

Showfreqs
Wandeln Sie Eingangsaudio in Videoausgang um, der das Audioleistungsspektrum darstellt. Audio
die Amplitude befindet sich auf der Y-Achse, während die Frequenz auf der X-Achse liegt.

Der Filter akzeptiert die folgenden Optionen:

Größe, s
Geben Sie die Größe des Videos an. Die Syntax dieser Option finden Sie im "Video Größe" Abschnitt
in ffmpeg-utils manuell. Der Standardwert ist "1024 x 512".

Modus
Anzeigemodus einstellen. Damit legen Sie fest, wie jedes Frequenz-Bin dargestellt wird.

Es akzeptiert die folgenden Werte:

Linie
Bar
Punkt

Standard ist "bar".

eine Skala
Amplitudenskala einstellen.

Es akzeptiert die folgenden Werte:

lin Lineare Skalierung.

sqrt
Quadratwurzelskala.

cbrt
Kubische Wurzelskala.

Log Logarithmische Darstellung.

Standard ist "log".

fscale
Frequenzskala einstellen.

Es akzeptiert die folgenden Werte:

lin Lineare Skalierung.

Log Logarithmische Darstellung.

rlog
Umgekehrte logarithmische Skala.

Standard ist "lin".

win_size
Fenstergröße einstellen.

Es akzeptiert die folgenden Werte:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

Standard ist "w2048"

win_func
Fensterfunktion einstellen.

Es akzeptiert die folgenden Werte:

richtig
Bartlett
Hanning
hämmern
schwarzer Mann
welch
Flattop
Bharris
groß
bhann
ihre
verrückt

Standard ist "hanning".

überlappen
Fensterüberlappung einstellen. Im Bereich "[0, 1]". Der Standardwert ist 1, was eine optimale Überlappung für . bedeutet
ausgewählte Fensterfunktion wird ausgewählt.

Mittelung
Zeitmittelung einstellen. Wenn Sie dies auf 0 setzen, werden die aktuellen maximalen Spitzenwerte angezeigt. Standard ist
1, was bedeutet, dass die Zeitmittelung deaktiviert ist.

Farbe
Geben Sie eine Liste von Farben an, die durch Leerzeichen oder '|' getrennt sind. die verwendet wird, um den Kanal zu zeichnen
Frequenzen. Nicht erkannte oder fehlende Farben werden durch weiße Farbe ersetzt.

Showspektrum
Wandeln Sie Eingangsaudio in einen Videoausgang um, der das Audiofrequenzspektrum darstellt.

Der Filter akzeptiert die folgenden Optionen:

Größe, s
Geben Sie die Videogröße für die Ausgabe an. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "640x512".

Schlitten
Geben Sie an, wie das Spektrum entlang des Fensters gleiten soll.

Es akzeptiert die folgenden Werte:

ersetzen
die Samples beginnen wieder links, wenn sie rechts ankommen

blättern
die Proben scrollen von rechts nach links

Vollbild
Frames werden nur produziert, wenn die Samples das richtige erreichen

Der Standardwert ist "ersetzen".

Modus
Anzeigemodus angeben.

Es akzeptiert die folgenden Werte:

kombiniert
alle Kanäle werden in derselben Zeile angezeigt

getrennte
alle Kanäle werden in separaten Zeilen angezeigt

Standardwert ist kombiniert.

Farbe
Geben Sie den Anzeigefarbmodus an.

Es akzeptiert die folgenden Werte:

Kanal
jeder Kanal wird in einer eigenen Farbe angezeigt

Intensität
jeder Kanal wird im gleichen Farbschema angezeigt

Standardwert ist Kanal.

Treppe
Geben Sie die Skala an, die zum Berechnen der Intensitätsfarbwerte verwendet wird.

Es akzeptiert die folgenden Werte:

lin linear

sqrt
Quadratwurzel, Standard

cbrt
Kubikwurzel

Log logarithmisch

Standardwert ist sqrt.

Sättigung
Stellen Sie den Sättigungsmodifikator für die angezeigten Farben ein. Negative Werte bieten Alternative
Farbschema. 0 ist überhaupt keine Sättigung. Die Sättigung muss im Bereich von [-10.0, 10.0] liegen.
Der Standardwert ist 1.

win_func
Fensterfunktion einstellen.

Es akzeptiert die folgenden Werte:

keine
Keine Probenvorverarbeitung (erwarten Sie nicht, dass dies schneller ist)

hann
Hann Fenster

hämmern
Hamming-Fenster

schwarzer Mann
Blackman-Fenster

Der Standardwert ist "hann".

Die Verwendung ist der des showwaves-Filters sehr ähnlich; siehe die Beispiele in diesem Abschnitt.

Beispiele

· Großes Fenster mit logarithmischer Farbskalierung:

showspectrum=s=1280x480:scale=log

· Vollständiges Beispiel für ein farbiges und gleitendes Spektrum pro Kanal mit ffplay:

ffplay -f lavfi 'movie=input.mp3, asplit [a][out1];
[a] showspectrum=mode=separate:color=intensity:slide=1:scale=cbrt [out0]'

Showvolumen
Wandeln Sie die Eingangsaudiolautstärke in eine Videoausgabe um.

Der Filter akzeptiert die folgenden Optionen:

Bewertung, r
Videorate einstellen.

b Rahmenbreite einstellen, zulässiger Bereich ist [0, 5]. Standard ist 1.

w Kanalbreite einstellen, zulässiger Bereich ist [40, 1080]. Der Standardwert ist 400.

h Kanalhöhe einstellen, zulässiger Bereich ist [1, 100]. Standard ist 20.

f Fade einstellen, zulässiger Bereich ist [1, 255]. Standard ist 20.

c Stellen Sie den Farbausdruck für die Lautstärke ein.

Der Ausdruck kann die folgenden Variablen verwenden:

VOLUME
Aktuelle maximale Lautstärke des Kanals in dB.

KANAL
Aktuelle Kanalnummer, beginnend bei 0.

t Wenn eingestellt, werden Kanalnamen angezeigt. Standard ist aktiviert.

Showwaves
Wandeln Sie Eingangsaudio in einen Videoausgang um, der die Sample-Wellen darstellt.

Der Filter akzeptiert die folgenden Optionen:

Größe, s
Geben Sie die Videogröße für die Ausgabe an. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "600x240".

Modus
Anzeigemodus einstellen.

Verfügbare Werte sind:

Punkt
Zeichne für jede Probe einen Punkt.

Linie
Zeichnen Sie für jede Probe eine vertikale Linie.

p2p Zeichne für jede Probe einen Punkt und eine Linie dazwischen.

Cline
Zeichnen Sie für jede Probe eine zentrierte vertikale Linie.

Der Standardwert ist "Punkt".

n Stellen Sie die Anzahl der Proben ein, die auf derselben Spalte gedruckt werden. Ein größerer Wert wird
die Framerate verringern. Muss eine positive ganze Zahl sein. Diese Option kann nur eingestellt werden, wenn
der Wert für Rate ist nicht explizit angegeben.

Bewertung, r
Stellen Sie die (ungefähre) Ausgabe-Bildrate ein. Dies geschieht durch Setzen der Option n. Standard
Wert ist "25".

split_channels
Legen Sie fest, ob Kanäle separat oder überlappend gezeichnet werden sollen. Der Standardwert ist 0.

Beispiele

· Geben Sie das Audio der Eingabedatei und die entsprechende Videodarstellung gleichzeitig aus
Zeit:

amovie=a.mp3,asplit[out0],showwaves[out1]

· Erstellen Sie ein synthetisches Signal und zeigen Sie es mit Showwaves an, wodurch eine Bildrate von 30 . erzwungen wird
Bilder pro Sekunde:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

showwavespic
Wandeln Sie Eingangsaudio in einen einzelnen Videoframe um, der die Sample-Wellen repräsentiert.

Der Filter akzeptiert die folgenden Optionen:

Größe, s
Geben Sie die Videogröße für die Ausgabe an. Die Syntax dieser Option finden Sie im "Video
Größe" Abschnitt in ffmpeg-utils manuell. Der Standardwert ist "600x240".

split_channels
Legen Sie fest, ob Kanäle separat oder überlappend gezeichnet werden sollen. Der Standardwert ist 0.

Beispiele

· Extrahieren Sie eine Kanal-Split-Darstellung der Wellenform einer ganzen Audiospur in a
1024x800 Bild mit ffmpeg:

ffmpeg -i audio.flac -lavfi showwavespic=split_channels=1:s=1024x800 wave.png

Teilt, eine Teilung
Teilen Sie die Eingabe in mehrere identische Ausgaben auf.

"asplit" funktioniert mit Audioeingang, "split" mit Video.

Der Filter akzeptiert einen einzelnen Parameter, der die Anzahl der Ausgänge angibt. Wenn
nicht angegeben, standardmäßig auf 2.

Beispiele

· Erstellen Sie zwei separate Ausgaben aus derselben Eingabe:

[in] aufteilen [out0][out1]

· Um 3 oder mehr Ausgänge zu erstellen, müssen Sie die Anzahl der Ausgänge angeben, wie in:

[in] asplit=3 [out0][out1][out2]

· Erstellen Sie zwei separate Ausgaben aus derselben Eingabe, eine beschnittene und eine aufgefüllte:

[in] teilen [splitout1][splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· Erstellen Sie 5 Kopien des Eingangsaudios mit ffmpeg:

ffmpeg -i EINGANG -filter_complex asplit=5 AUSGANG

zmq, azmq
Empfangen Sie Befehle, die über einen libzmq-Client gesendet werden, und leiten Sie sie an Filter im weiter
Filtergraph.

"zmq" und "azmq" arbeiten als Pass-Through-Filter. "zmq" muss zwischen zwei Videos eingefügt werden
Filter, "azmq" zwischen zwei Audiofiltern.

Um diese Filter zu aktivieren, müssen Sie die libzmq-Bibliothek und -Header installieren und konfigurieren
FFmpeg mit "--enable-libzmq".

Weitere Informationen zu libzmq finden Sie unter:http://www.zeromq.org/>

Die Filter "zmq" und "azmq" arbeiten als libzmq-Server, der die gesendeten Nachrichten empfängt
eine Netzwerkschnittstelle definiert durch die bind_adresse .

Die empfangene Nachricht muss folgendes Format haben:

[ ]

TARGET gibt das Ziel des Befehls an, normalerweise den Namen der Filterklasse oder a
spezifischer Name der Filterinstanz.

COMMAND gibt den Namen des Befehls für den Zielfilter an.

ARG ist optional und spezifiziert die optionale Argumentliste für das angegebene COMMAND.

Nach dem Empfang wird die Nachricht verarbeitet und der entsprechende Befehl wird in eingefügt
der Filtergraph. Abhängig vom Ergebnis sendet der Filter eine Antwort an den Client,
das Format annehmen:




NACHRICHT es ist optional.

Beispiele

Ansehen Tools/zmqsend für ein Beispiel für einen zmq-Client, der zum Senden von Befehlen verwendet werden kann
von diesen Filtern verarbeitet.

Betrachten Sie den folgenden Filtergraph, der von . erzeugt wurde ffplay

ffplay -dumpgraph 1 -f lavfi "
Farbe=s=100x100:c=rot [l];
Farbe=s=100x100:c=blau [r];
nullsrc=s=200x100, zmq [bg];
[bg][l] Überlagerung [bg+l];
[bg+l][r] Overlay=x=100 "

Um die Farbe der linken Seite des Videos zu ändern, kann der folgende Befehl verwendet werden:

echo Parsed_color_0 c gelb | tools/zmqsend

So ändern Sie die rechte Seite:

echo Parsed_color_1 c rosa | tools/zmqsend

MULTIMEDIA QUELLEN


Nachfolgend finden Sie eine Beschreibung der derzeit verfügbaren Multimediaquellen.

ein Film
Dies ist das gleiche wie Film Quelle, außer dass standardmäßig ein Audiostream ausgewählt wird.

Film
Lesen Sie Audio- und/oder Videostreams aus einem Filmcontainer.

Es akzeptiert die folgenden Parameter:

Dateinamen
Der Name der zu lesenden Ressource (nicht unbedingt eine Datei; er kann auch ein Gerät oder ein
Stream, auf den über ein Protokoll zugegriffen wird).

Formatname, f
Gibt das Format an, das für das Lesen des Films angenommen wird, und kann entweder der Name eines
Behälter oder ein Eingabegerät. Wenn nicht angegeben, wird das Format erraten von Filmname
oder durch Sondieren.

Suchpunkt, sp
Gibt den Suchpunkt in Sekunden an. Die Frames werden ab dieser Suche ausgegeben
Punkt. Der Parameter wird mit "av_strtod" ausgewertet, der Zahlenwert kann also sein
mit einem IS-Postfix angehängt. Der Standardwert ist "0".

Ströme, s
Gibt die zu lesenden Streams an. Es können mehrere Streams angegeben werden, getrennt durch "+". Der
source hat dann ebenso viele Ausgänge in der gleichen Reihenfolge. Die Syntax wird erklärt in
den Abschnitt ``Stream specifiers'' im ffmpeg-Handbuch. Zwei besondere Namen, "dv" und
"da" gibt den standardmäßigen (am besten geeigneten) Video- und Audiostream an. Standard ist
"dv" oder "da", wenn der Filter als "Amovie" bezeichnet wird.

stream_index, si
Gibt den Index des zu lesenden Videostreams an. Wenn der Wert -1 ist, ist der am besten geeignete
Videostream wird automatisch ausgewählt. Der Standardwert ist "-1". Veraltet. Wenn
Der Filter heißt "Film", er wählt Audio anstelle von Video aus.

Schleife
Gibt an, wie oft der Stream nacheinander gelesen werden soll. Wenn der Wert kleiner als 1 ist
der Stream wird immer wieder gelesen. Der Standardwert ist "1".

Beachten Sie, dass beim Loopen des Films die Quellzeitstempel nicht geändert werden
erzeugen nicht monoton ansteigende Zeitstempel.

Es ermöglicht das Überlagern eines zweiten Videos über den Haupteingang eines Filtergraphen, wie in gezeigt
diese Grafik:

Eingabe -----------> Deltapts0 --> Überlagerung --> Ausgabe
^
|
Film --> Maßstab --> Deltapts1 -------+

Beispiele

· Überspringen Sie 3.2 Sekunden ab dem Anfang der AVI-Datei in.avi und legen Sie sie über das
Eingang mit der Bezeichnung "in":

movie=in.avi:seek_point=3.2, scale=180:-1, setpts=PTS-STARTPTS [über];
[in] setpts=PTS-STARTPTS [Haupt];
[main][over] overlay=16:16 [aus]

· Von einem video4linux2-Gerät lesen und über den Eingang mit der Bezeichnung "in" legen:

movie=/dev/video0:f=video4linux2, scale=180:-1, setpts=PTS-STARTPTS [über];
[in] setpts=PTS-STARTPTS [Haupt];
[main][over] overlay=16:16 [aus]

· Lesen Sie den ersten Videostream und den Audiostream mit der ID 0x81 von dvd.vob; das Video
ist mit dem Pad mit dem Namen "Video" verbunden und das Audio ist mit dem Pad mit dem Namen verbunden
"Audio":

Film=dvd.vob:s=v:0+#0x81 [Video] [Audio]

Verwenden Sie ffmpeg-Filter online mit den onworks.net-Diensten


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad