EnglezăFrancezăSpaniolă

Ad


Favicon OnWorks

ffmpeg-filters - Online în cloud

Rulați filtre ffmpeg în furnizorul de găzduire gratuit OnWorks prin Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

Aceasta este comanda ffmpeg-filters care poate fi rulată în furnizorul de găzduire gratuit OnWorks folosind una dintre multiplele noastre stații de lucru online gratuite, cum ar fi Ubuntu Online, Fedora Online, emulator online Windows sau emulator online MAC OS

PROGRAM:

NUME


ffmpeg-filters - filtre FFmpeg

DESCRIERE


Acest document descrie filtrele, sursele și receptorii furnizate de biblioteca libavfilter.

FILTRU INTRODUCERE


Filtrarea în FFmpeg este activată prin biblioteca libavfilter.

În libavfilter, un filtru poate avea mai multe intrări și mai multe ieșiri. Pentru a ilustra
un fel de lucruri care sunt posibile, luăm în considerare următorul filtergraph.

[principal]
intrare --> împărțire ---------------------> suprapunere --> ieșire
| ^
|[tmp] [flip]|
+-----> crop --> vflip -------+

Acest filtergraph împarte fluxul de intrare în două fluxuri, apoi trimite un flux prin intermediul
decupați filtrul și filtrul vflip, înainte de a le îmbina înapoi cu celălalt flux
suprapunându-l deasupra. Puteți utiliza următoarea comandă pentru a realiza acest lucru:

ffmpeg -i INPUT -vf „împărțit [principal][tmp]; [tmp] crop=iw:ih/2:0:0, vflip [întoarcere]; [principal][flip] suprapunere=0:H/2” IEȘIRE

Rezultatul va fi că jumătatea superioară a videoclipului este reflectată în jumătatea inferioară a videoclipului
ieșire video.

Filtrele din același lanț liniar sunt separate prin virgule și lanțuri liniare distincte de
filtrele sunt separate prin punct și virgulă. În exemplul nostru, trunchi, vflip sunt într-un lanț liniar,
împărţi și acoperire sunt separat în altul. Punctele în care se unesc lanțurile liniare sunt
etichetate cu nume cuprinse între paranteze pătrate. În exemplu, filtrul divizat generează
două ieșiri care sunt asociate etichetelor [principal] și [tmp].

Fluxul trimis la a doua ieșire a împărţi, etichetat ca [tmp], este procesat prin intermediul
cultură filtru, care decupează jumătatea inferioară a videoclipului, apoi pe verticală
răsturnat. The acoperire filtrul primește în intrare prima ieșire neschimbată a filtrului divizat
(care a fost etichetat ca [principal]), și suprapune pe jumătatea inferioară a ieșirii generate de
trunchi, vflip filterchain.

Unele filtre preiau in intrare o lista de parametri: sunt specificati dupa numele filtrului
și un semn egal și sunt separate unul de celălalt prin două puncte.

Există așa-numitele sursă Filtre care nu au o intrare audio/video și chiuvetă
Filtre care nu va avea ieșire audio/video.

GRAFIC


graph2dot program inclus în FFmpeg Unelte directorul poate fi folosit pentru a analiza a
filtergraph descriere și emite o reprezentare textuală corespunzătoare în punct
limba.

Invocați comanda:

graph2dot -h

pentru a vedea cum se folosește graph2dot.

Apoi puteți transmite descrierea punctului către punct program (din suita graphviz a
programe) și obțineți o reprezentare grafică a filtergraphului.

De exemplu, secvența de comenzi:

ecou | \
tools/graph2dot -o graph.tmp && \
punct -Tpng graph.tmp -o graph.png && \
afișare grafic.png

poate fi folosit pentru a crea și afișa o imagine reprezentând graficul descris de
GRAPH_DESCRIPTION şir. Rețineți că acest șir trebuie să fie un grafic complet autonom,
cu intrările și ieșirile sale definite în mod explicit. De exemplu, dacă linia de comandă este de
forma:

ffmpeg -i infile -vf scale=640:360 outfile

ta GRAPH_DESCRIPTION șirul va trebui să aibă forma:

nullsrc,scale=640:360,nullsink

este posibil să fie necesar să setați nullsrc parametri și adăugați a format filtra pentru a
simulează un anumit fișier de intrare.

GRAFUL FILTRULUI DESCRIERE


Un filtergraph este un grafic direcționat al filtrelor conectate. Poate conține cicluri, și acolo
pot fi legături multiple între o pereche de filtre. Fiecare link are un pad de intrare pe o parte
conectându-l la un filtru de la care își ia intrarea și la un pad de ieșire pe celălalt
partea care îl conectează la un filtru acceptând ieșirea acestuia.

Fiecare filtru dintr-un filtergraph este o instanță a unei clase de filtru înregistrată în
aplicație, care definește caracteristicile și numărul de tampoane de intrare și ieșire ale
filtru.

Un filtru fără pad-uri de intrare este numit „sursă”, iar un filtru fără pad-uri de ieșire este
numită „chiuvetă”.

Filtergraph sintaxă
Un filtergraph are o reprezentare textuală, care este recunoscută de -filtru/-vf/-af și
-complex_filtru opțiuni în FFMPEG și -vf/-af in ffplay, și de către
Funcția „avfilter_graph_parse_ptr()” definită în libavfilter/avfilter.h.

Un filterchain constă dintr-o secvență de filtre conectate, fiecare conectat la
precedentul din succesiune. Un filterchain este reprezentat de o listă de ","-separate
descrierile filtrelor.

Un filtergraph constă dintr-o secvență de filterchains. O succesiune de filterchains este
reprezentată de o listă de descrieri de lanțuri de filtre separate prin „;”.

Un filtru este reprezentat de un șir de forma:
[în_link_1]...[in_link_N]nume_filtru=argumente[out_link_1]...[out_link_M]

nume_filtru este numele clasei de filtru a cărei instanță este filtrul descris
de și trebuie să fie numele uneia dintre clasele de filtre înregistrate în program. The
numele clasei de filtrare este urmat opțional de un șir „=argumente".

argumente este un șir care conține parametrii utilizați pentru a inițializa filtrul
instanță. Poate avea una dintre cele două forme:

· O listă „:”-separată de cheie=valoare perechi.

· O listă „:”-separată de valoare. În acest caz, se presupune că cheile sunt opțiunea
nume în ordinea în care sunt declarate. De exemplu, filtrul „fade” declară trei opțiuni
aceasta comanda -- tip, start_frame și nb_frames. Apoi lista de parametri în:0:30 mijloace
că valoarea in este atribuit opțiunii tip, 0 la start_frame și 30 la
nb_frames.

· O listă separată „:” de direct mixt valoare și lung cheie=valoare perechi. Directa valoare
trebuie să precedă cheie=valoare perechi și urmează aceeași ordine de constrângeri a lui
punctul anterior. Următoarele cheie=valoare perechile pot fi setate în orice ordine preferată.

Dacă valoarea opțiunii în sine este o listă de elemente (de exemplu, filtrul „format” preia o listă de
pixeli), elementele din listă sunt de obicei separate prin |.

Lista de argumente poate fi citată folosind caracterul ' ca semn inițial și final și
caracterul \ pentru evadarea caracterelor din textul citat; altfel argumentul
șirul este considerat terminat atunci când următorul caracter special (aparținând setului
[]=;,) este întâlnită.

Numele și argumentele filtrului sunt precedate și urmate opțional de o listă de
etichete de linkuri. O etichetă de legătură permite să denumească o legătură și să o asocieze la o ieșire de filtru
sau tastatura de intrare. Etichetele precedente în_link_1 ... in_link_N, sunt asociate filtrului
tampoane de intrare, următoarele etichete out_link_1 ... out_link_M, sunt asociate ieșirii
tampoane.

Când două etichete de link cu același nume sunt găsite în filtergraph, o legătură între
este creat pad-ul de intrare și ieșire corespunzător.

Dacă un pad de ieșire nu este etichetat, acesta este legat în mod implicit la prima intrare neetichetată
tamponul următorului filtru din filterchain. De exemplu, în filterchain

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

instanța de filtru divizat are două pad-uri de ieșire, iar instanța de filtru de suprapunere două intrări
tampoane. Primul pad de ieșire al diviziunii este etichetat „L1”, primul pad de intrare al suprapunerii este
etichetat „L2”, iar al doilea pad de ieșire al split este legat de al doilea pad de intrare al
suprapunere, care sunt ambele neetichetate.

Într-o descriere a filtrului, dacă eticheta de intrare a primului filtru nu este specificată, „în” este
asumat; dacă eticheta de ieșire a ultimului filtru nu este specificată, se presupune „out”.

Într-un filterchain complet trebuie să existe toate tampoanele de intrare și de ieșire a filtrului neetichetate
conectat. Un grafic cu filtru este considerat valid dacă toate tampoanele de intrare și ieșire ale filtrului
toate filterchain-urile sunt conectate.

Libavfilter se va insera automat scară filtre în care este necesară conversia formatului.
Este posibil să specificați steaguri swscale pentru acești scalatori inserati automat de
înainte de „sws_flags=steaguri;" la descrierea graficului cu filtru.

Iată o descriere BNF a sintaxei filtergraph:

::= secvență de caractere alfanumerice și „_”
::= „[” "]"
::= [ ]
::= secvență de caractere (eventual citată)
::= [ ] ["=" ] [ ]
::= [, ]
::= [sws_flags= ;] [; ]

notițe on filtrugraf evadarea
Compoziția descrierii filtrului implică mai multe niveluri de evadare. Vedea il „Citat
și scăpare" secțiune in il ffmpeg-utils(1) manual pentru mai multe informații despre
procedură de evadare folosită.

O evadare de prim nivel afectează conținutul fiecărei valori ale opțiunii de filtru, care poate conține
caracterul special „:” folosit pentru a separa valorile sau unul dintre caracterele de evacuare „\’”.

O evadare de al doilea nivel afectează întreaga descriere a filtrului, care poate conține
caracterele de evacuare „\’” sau caracterele speciale „[],;” folosit de filtergraph
Descriere.

În cele din urmă, când specificați un filtergraph pe o linie de comandă shell, trebuie să efectuați a
al treilea nivel de evadare pentru caracterele speciale shell conținute în acesta.

De exemplu, luați în considerare următorul șir a fi încorporat în fișierul desen text filtru
descriere a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. valoare:

acesta este un „șir”: poate conține unul sau mai multe caractere speciale

Acest șir conține caracterul special de evadare „’” și caracterul special „:”, deci
trebuie scăpat în acest fel:

text=acesta este un \'șir\'\: poate conține unul sau mai multe caractere speciale

Un al doilea nivel de evadare este necesar atunci când încorporați descrierea filtrului în a
descriere filtergraph, pentru a scăpa de toate caracterele speciale filtergraph. Prin urmare
exemplul de mai sus devine:

drawtext=text=acesta este un \\\'șir\\\'\\: poate conține unul\, sau mai multe\, caractere speciale

(rețineți că, pe lângă caracterele speciale care scapă „\'", trebuie să fie și ","
scăpat).

În cele din urmă, este necesar un nivel suplimentar de evadare atunci când scrieți descrierea graficului cu filtru
într-o comandă shell, care depinde de regulile de evadare ale shell-ului adoptat. De exemplu,
presupunând că „\” este special și trebuie să fie scapat cu un alt „\”, șirul anterior
va avea ca rezultat in final:

-vf „drawtext=text=acesta este un \\\\\\'șir\\\\\\'\\\\: poate conține unul\\ sau mai multe\\, caractere speciale”

CRONOLOGIE EDITAREA


Unele filtre acceptă un generic permite opțiune. Pentru filtrele care acceptă editarea cronologiei,
această opțiune poate fi setată la o expresie care este evaluată înainte de a trimite un cadru către
filtru. Dacă evaluarea este diferită de zero, filtrul va fi activat, în caz contrar cadrul
va fi trimis neschimbat la următorul filtru din filtergraph.

Expresia acceptă următoarele valori:

t marca temporală exprimată în secunde, NAN dacă marca temporală de intrare este necunoscută

n numărul secvenţial al cadrului de intrare, începând de la 0

post poziția în fișier a cadrului de intrare, NAN dacă necunoscută

w
h lățimea și înălțimea cadrului de intrare dacă este video

În plus, aceste filtre acceptă un permite comandă care poate fi folosită pentru a redefini
expresie.

Ca orice altă opțiune de filtrare, și permite opțiunea urmează aceleași reguli.

De exemplu, pentru a activa un filtru de estompare (smartblur) de la 10 secunde la 3 minute și a
curbe filtru incepand de la 3 secunde:

smartblur = enable='between(t,10,3*60)',
curves = enable='gte(t,3)': preset=cross_process

AUDIO FILTRE


Când configurați versiunea FFmpeg, puteți dezactiva oricare dintre filtrele existente folosind
„--disable-filters”. Ieșirea de configurare va afișa filtrele audio incluse în dvs
construi.

Mai jos este o descriere a filtrelor audio disponibile în prezent.

overfade
Aplicați cross fade de la un flux audio de intrare la un alt flux audio de intrare. Crucea
estomparea este aplicată pentru o durată specificată aproape de sfârșitul primului flux.

Filtrul acceptă următoarele opțiuni:

nb_samples, ns
Specificați numărul de mostre pentru care efectul de estompare încrucișată trebuie să dureze. La sfârșitul
din efectul de estompare încrucișată, prima intrare audio va fi complet silențioasă. Implicit este
44100.

durată, d
Specificați durata efectului de estompare încrucișată. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată. În mod implicit, durata este determinată
by nb_samples. Dacă este setată, această opțiune este folosită în loc de nb_samples.

suprapune, o
Ar trebui să se suprapună primul flux de sfârșit cu începerea celui de-al doilea flux. Implicit este activat.

curba1
Setați curba pentru tranziția cu fade încrucișată pentru primul flux.

curba2
Setați curba pentru tranziția cu fade încrucișată pentru al doilea flux.

Pentru descrierea tipurilor de curbe disponibile vezi afade descrierea filtrului.

Exemple

· Fade încrucișat de la o intrare la alta:

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

· Fade încrucișat de la o intrare la alta, dar fără suprapunere:

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

o întârziere
Întârzie unul sau mai multe canale audio.

Mostrele din canalul întârziat sunt pline de tăcere.

Filtrul acceptă următoarea opțiune:

întârzieri
Setați lista de întârzieri în milisecunde pentru fiecare canal, separate prin „|”. Cel puțin unul
ar trebui furnizată o întârziere mai mare de 0. Întârzierile neutilizate vor fi ignorate în tăcere. Dacă
numărul de întârzieri date este mai mic decât numărul de canale pe care îl vor avea toate canalele rămase
să nu fie amânată.

Exemple

· Întârzieți primul canal cu 1.5 secunde, al treilea canal cu 0.5 secunde și părăsiți
al doilea canal (și orice alte canale care pot fi prezente) neschimbate.

adelay=1500|0|500

ecou
Aplicați ecou la sunetul de intrare.

Ecourile sunt sunete reflectate și pot apărea în mod natural printre munți (și uneori mari
clădiri) când vorbesc sau strigă; efectele ecou digitale emulează acest comportament și sunt
adesea folosit pentru a ajuta la completarea sunetului unui singur instrument sau vocal. Diferența de timp
între semnalul inițial și reflexie este „întârzierea” și volumul
semnalul reflectat este „degradarea”. Ecourile multiple pot avea diferite întârzieri și dezintegrari.

Urmează o descriere a parametrilor acceptați.

in_castig
Setați câștigul de intrare al semnalului reflectat. Implicit este 0.6.

out_gain
Setați câștigul de ieșire al semnalului reflectat. Implicit este 0.3.

întârzieri
Setați lista de intervale de timp în milisecunde între semnalul original și reflexii
separate prin „|”. Intervalul permis pentru fiecare „întârziere” este „(0 - 90000.0]”. Implicit este 1000.

se descompune
Setați lista de intensități ale semnalelor reflectate separate prin „|”. Interval permis pentru fiecare
„decay” este „(0 - 1.0]". Implicit este 0.5.

Exemple

· Faceți să sune ca și cum ar fi de două ori mai multe instrumente decât se cântă de fapt:

echo=0.8:0.88:60:0.4

· Dacă întârzierea este foarte scurtă, atunci sună ca un robot (metalic) care redă muzică:

echo=0.8:0.88:6:0.4

· O întârziere mai mare va suna ca un concert în aer liber la munte:

echo=0.8:0.9:1000:0.3

· La fel ca mai sus, dar cu încă un munte:

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

aeval
Modificați un semnal audio conform expresiilor specificate.

Acest filtru acceptă una sau mai multe expresii (una pentru fiecare canal), care sunt evaluate
și folosit pentru a modifica un semnal audio corespunzător.

Acceptă următorii parametri:

exprs
Setați lista de expresii separate de „|” pentru fiecare canal separat. Dacă numărul de
canale de intrare este mai mare decât numărul de expresii, ultima specificată
expresia este folosită pentru canalele de ieșire rămase.

channel_layout, c
Setați aspectul canalului de ieșire. Dacă nu este specificat, aspectul canalului este specificat de
numărul de expresii. Dacă este setat la acelaşi, va folosi implicit același canal de intrare
aspect.

Fiecare expresie în exprs poate conține următoarele constante și funcții:

ch numărul de canal al expresiei curente

n numărul eșantionului evaluat, începând de la 0

s rata simpla

t timpul eșantionului evaluat exprimat în secunde

nb_in_canale
nb_out_channels
numărul de canale de intrare și ieșire

val(CH)
valoarea canalului de intrare cu număr CH

Notă: acest filtru este lent. Pentru o procesare mai rapidă, ar trebui să utilizați un filtru dedicat.

Exemple

· Jumătate de volum:

aeval=val(ch)/2:c=la fel

· Faza inversată a celui de-al doilea canal:

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

afade
Aplicați efect de fade-in/out la intrarea audio.

Urmează o descriere a parametrilor acceptați.

tip, t
Specificați tipul efectului, poate fi fie „in” pentru fade-in, fie „out” pentru fade-out
efect. Implicit este „în”.

start_sample, ss
Specificați numărul eșantionului de pornire pentru începerea aplicării efectului de estompare. Mod implicit
este 0.

nb_samples, ns
Specificați numărul de mostre pentru care efectul de estompare trebuie să dureze. La sfârșitul
efect de fade-in, sunetul de ieșire va avea același volum ca și sunetul de intrare, la
La sfârșitul tranziției fade-out, sunetul de ieșire va fi tăcere. Implicit este 44100.

timpul de începere, st
Specificați ora de începere a efectului de estompare. Implicit este 0. Valoarea trebuie specificată
ca durată de timp; vedea il Timp durată secțiune in il ffmpeg-utils(1) manual pentru
sintaxa acceptată. Dacă este setată, această opțiune este folosită în loc de start_sample.

durată, d
Specificați durata efectului de estompare. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată. La sfârșitul efectului de fade-in
sunetul de ieșire va avea același volum ca și sunetul de intrare, la sfârșitul fade-out-ului
tranziția audio de ieșire va fi tăcere. În mod implicit, durata este determinată de
nb_samples. Dacă este setată, această opțiune este folosită în loc de nb_samples.

curba
Setați curba pentru tranziția de estompare.

Acceptă următoarele valori:

tri selectați panta triunghiulară, liniară (implicit)

qsin
selectați sfert de undă sinusoidală

hsin
selectați jumătate din unda sinusoidală

inspirație
selectați unda sinusoidală exponențială

log selectați logaritmic

cumnat
selectați parabola inversată

aici selectați pătratică

pui selectați cubic

mp selectați rădăcina pătrată

CBR selectați rădăcina cubică

de selectați parabola

exp selectați exponențial

iqsin
selectați sfert inversat de undă sinusoidală

ihsin
selectați jumătate inversată a undei sinusoidale

dori
selectați scaunul dublu exponențial

dif
selectați sigmoid dublu exponențial

Exemple

· Fade în primele 15 secunde de sunet:

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

· Eliminați ultimele 25 de secunde ale unui sunet de 900 de secunde:

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

aformat
Setați restricții de format de ieșire pentru sunetul de intrare. Cadrul va negocia cel mai mult
format adecvat pentru a minimiza conversiile.

Acceptă următorii parametri:

sample_fmts
O listă separată de „|” a formatelor de mostre solicitate.

rate_eșantionare
O listă separată de „|” a ratelor de eșantionare solicitate.

channel_layouts
O listă separată de „|” cu aspecte ale canalelor solicitate.

Vedea il Canal Aspect secțiune in il ffmpeg-utils(1) manual pentru sintaxa cerută.

Dacă un parametru este omis, toate valorile sunt permise.

Forțați ieșirea să fie stereo pe 8 biți sau semnat pe 16 biți

Aformat = eșantion_fmts = U8 | S16: canal_layouts = stereo

toate trec
Aplicați un filtru trece-all cu doi poli cu frecvență centrală (în Hz) frecvenţă, și filtre-
lățime lățime. Un filtru all-pass modifică relația dintre frecvența audio și faza
fără a-și modifica relația de frecvență cu amplitudine.

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența în Hz.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type.

apari
Îmbină două sau mai multe fluxuri audio într-un singur flux multicanal.

Filtrul acceptă următoarele opțiuni:

intrări
Setați numărul de intrări. Implicit este 2.

Dacă structurile de canal ale intrărilor sunt disjunse și, prin urmare, compatibile, canalul
layout-ul ieșirii va fi setat în consecință și canalele vor fi reordonate ca
necesar. Dacă structurile de canale ale intrărilor nu sunt disjunse, ieșirea va avea toate
canalele primei intrări apoi toate canalele celei de-a doua intrări, în această ordine,
iar aspectul canalului de ieșire va fi valoarea implicită corespunzătoare totalului
numărul de canale.

De exemplu, dacă prima intrare este în 2.1 (FL+FR+LF) și a doua intrare este FC+BL+BR,
atunci ieșirea va fi în 5.1, cu canalele în următoarea ordine: a1, a2, b1, a3,
b2, b3 (a1 este primul canal al primei intrări, b1 este primul canal al celei de-a doua
intrare).

Pe de altă parte, dacă ambele intrări sunt stereo, canalele de ieșire vor fi implicite
ordine: a1, a2, b1, b2, iar aspectul canalului va fi setat în mod arbitrar la 4.0, care poate sau
poate să nu fie valoarea așteptată.

Toate intrările trebuie să aibă aceeași frecvență de eșantionare și același format.

Dacă intrările nu au aceeași durată, ieșirea se va opri cu cea mai scurtă.

Exemple

· Îmbina două fișiere mono într-un flux stereo:

amovie=left.wav [l] ; amovie=right.mp3 [r] ; [l] [r] amerge

· Îmbinări multiple presupunând 1 flux video și 6 fluxuri audio intrare.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 ieșire.mkv

un amestec
Mixează mai multe intrări audio într-o singură ieșire.

Rețineți că acest filtru acceptă numai eșantioane flotante ( apari și tigaie filtre audio
suportă multe formate). Dacă un amestec intrarea are mostre întregi atunci sunt eșantion va fi
inserat automat pentru a efectua conversia în mostre flotante.

De exemplu

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

va amesteca 3 fluxuri audio de intrare la o singură ieșire cu aceeași durată ca prima
intrare și un timp de tranziție de abandon de 3 secunde.

Acceptă următorii parametri:

intrări
Numărul de intrări. Dacă nu este specificat, valoarea implicită este 2.

durată
Cum să determinați sfârșitul fluxului.

cea mai lungă
Durata celei mai lungi intrări. (Mod implicit)

cel mai scurt
Durata celei mai scurte intrări.

primul
Durata primei intrări.

abandon_tranziție
Timpul de tranziție, în secunde, pentru renormalizarea volumului când se termină un flux de intrare.
Valoarea implicită este de 2 de secunde.

anula
Treceți sursa audio neschimbată la ieșire.

Tată
Adăugați sfârșitul unui flux audio cu tăcere.

Acesta poate fi folosit împreună cu FFMPEG -cel mai scurt pentru a extinde fluxurile audio la aceeași lungime
ca fluxul video.

Urmează o descriere a opțiunilor acceptate.

dimensiunea_pachet
Setați dimensiunea pachetului de liniște. Valoarea implicită este 4096.

pad_len
Setați numărul de mostre de tăcere pentru a adăuga la sfârșit. După ce valoarea este atinsă,
fluxul este terminat. Această opțiune se exclude reciproc cu întreg_len.

întreg_len
Setați numărul total minim de mostre în fluxul audio de ieșire. Dacă valoarea este
mai mare decât lungimea audio de intrare, liniștea este adăugată la sfârșit, până când valoarea este
atins. Această opțiune se exclude reciproc cu pad_len.

Dacă nici cel pad_len nici întreg_len opțiunea este setată, filtrul va adăuga liniște
sfârșitul fluxului de intrare pe termen nelimitat.

Exemple

· Adăugați 1024 de mostre de liniște la sfârșitul intrării:

apad=pad_len=1024

· Asigurați-vă că ieșirea audio va conține cel puțin 10000 de mostre, completați intrarea cu
tăcere dacă este necesar:

apad=whole_len=10000

· Utilizare FFMPEG pentru a completa intrarea audio cu tăcere, astfel încât fluxul video să fie întotdeauna
rezultatul este cel mai scurt și va fi convertit până la sfârșit în fișierul de ieșire la utilizare
il cel mai scurt opţiune:

ffmpeg -i VIDEO -i AUDIO -filter_complex „[1:0]apad” -cel mai scurt OUTPUT

aphaser
Adăugați un efect de fază la sunetul de intrare.

Un filtru de fazer creează o serie de vârfuri și jgheaburi în spectrul de frecvență. The
poziția vârfurilor și jgheaburilor sunt modulate astfel încât acestea să varieze în timp, creând a
efect de măturare.

Urmează o descriere a parametrilor acceptați.

in_castig
Setați câștigul de intrare. Implicit este 0.4.

out_gain
Setați câștigul de ieșire. Implicit este 0.74

întârziere
Setați întârzierea în milisecunde. Implicit este 3.0.

descompunere
Setați degradarea. Implicit este 0.4.

viteză
Setați viteza de modulație în Hz. Implicit este 0.5.

tip
Setați tipul de modulație. Implicit este triunghiular.

Acceptă următoarele valori:

triunghiular, t
sinusoidal, s

sunt eșantion
Reeșantionați sunetul de intrare la parametrii specificați, folosind biblioteca libswresample. Dacă
nu sunt specificate, atunci filtrul va converti automat între intrarea și
ieșire.

Acest filtru este, de asemenea, capabil să întindă/strânge datele audio pentru a le face să se potrivească cu marcajele de timp
sau pentru a injecta tăcere / decupați sunetul pentru a se potrivi cu marcajele de timp, faceți o combinație de
ambele sau nu faceți niciuna.

Filtrul acceptă sintaxa [rata simpla:]resampler_options, În cazul în care rata simpla își exprimă
o rată de eșantionare și resampler_options este o listă a cheie=valoare perechi, separate prin „:”. Vedea
manualul ffmpeg-resampler pentru lista completă a opțiunilor acceptate.

Exemple

· Reeșantionați audio de intrare la 44100 Hz:

aresample=44100

· Întindeți/strângeți mostre la marcajele de timp date, cu maximum 1000 de mostre pe
a doua compensare:

aresample=async=1000

asetnsamples
Setați numărul de mostre pentru fiecare cadru audio de ieșire.

Ultimul pachet de ieșire poate conține un număr diferit de mostre, deoarece filtrul se va spăla
toate mostrele rămase atunci când semnalul audio de intrare îi semnalează sfârșitul.

Filtrul acceptă următoarele opțiuni:

nb_out_samples, n
Setați numărul de cadre pentru fiecare cadru audio de ieșire. Numărul este destinat ca
numărul de mostre pentru fiecare canal. Valoarea implicită este 1024.

tampon, p
Dacă este setat la 1, filtrul va umple ultimul cadru audio cu zerouri, astfel încât ultimul
cadru va conține același număr de mostre ca și cele anterioare. Valoarea implicită este
1.

De exemplu, pentru a seta numărul de mostre per cadru la 1234 și pentru a dezactiva umplutura pentru
ultimul cadru, folosește:

asetnsamples=n=1234:p=0

asetrate
Setați rata de eșantionare fără a modifica datele PCM. Acest lucru va duce la o schimbare a vitezei
și pitch.

Filtrul acceptă următoarele opțiuni:

rata simpla, r
Setați rata de eșantionare de ieșire. Implicit este 44100 Hz.

ashowinfo
Afișați o linie care conține diverse informații pentru fiecare cadru audio de intrare. Audio de intrare este
nemodificat.

Linia afișată conține o secvență de perechi cheie/valoare ale formularului cheie:valoare.

Următoarele valori sunt afișate în rezultat:

n Numărul (secvențial) al cadrului de intrare, începând de la 0.

pct Marca temporală de prezentare a cadrului de intrare, în unități de bază de timp; baza de timp
depinde de panoul de intrare al filtrului și este de obicei 1/rata simpla.

pts_time
Marca temporală de prezentare a cadrului de intrare în secunde.

post poziția cadrului în fluxul de intrare, -1 dacă această informație nu este disponibilă
și/sau lipsit de sens (de exemplu, în cazul sunetului sintetic)

fmt Formatul eșantionului.

chlayout
Aspectul canalului.

rată
Frecvența de eșantionare pentru cadrul audio.

nb_samples
Numărul de mostre (pe canal) din cadru.

checksum
Suma de control Adler-32 (imprimată în hexazecimal) a datelor audio. Pentru audio planar,
datele sunt tratate ca și cum toate planurile ar fi concatenate.

plane_checksums
O listă de sume de control Adler-32 pentru fiecare plan de date.

astats
Afișează informații statistice în domeniul timpului despre canalele audio. Statisticile sunt
calculate și afișate pentru fiecare canal audio și, după caz, o cifră generală
este, de asemenea, dat.

Acceptă următoarea opțiune:

lungime
Lungime scurtă a ferestrei în secunde, utilizată pentru măsurarea RMS de vârf și minim. Implicit este
0.05 (50 milisecunde). Intervalul permis este „[0.1 - 10]”.

metadate
Setați injectarea metadatelor. Toate cheile de metadate sunt prefixate cu „lavfi.astats.X”,
unde „X” este numărul canalului care începe de la 1 sau șirul „Overall”. Implicit este dezactivat.

Cheile disponibile pentru fiecare canal sunt: ​​DC_offset Min_level Max_level Min_difference
Diferența_max. Diferența_medie Nivelul_vârf RMS_peak RMS_trough Factor_crest Factor_plat
Peak_count Bit_depth

și pentru Overall: DC_offset Min_level Max_level Min_difference Max_difference
Mean_difference Peak_level RMS_level RMS_peak RMS_trough Factor_plat Peak_count
Adâncime_biți Număr_de_probele

De exemplu, cheia completă arată așa „lavfi.astats.1.DC_offset” sau acesta
„lavfi.astats.Overall.Peak_count”.

Pentru descriere ce înseamnă fiecare cheie, citiți mai jos.

reseta
Setați numărul de cadre după care statisticile vor fi recalculate. Implicit este
dezactivat.

Urmează o descriere a fiecărui parametru afișat:

DC compensa
Deplasarea medie a amplitudinii de la zero.

Min nivel
Nivel minim de probă.

max nivel
Nivelul maxim al probei.

Min diferenţă
Diferență minimă între două mostre consecutive.

max diferenţă
Diferența maximă între două probe consecutive.

medie diferenţă
Diferența medie între două probe consecutive. Media fiecărei diferențe
între două mostre consecutive.

Vârf nivel dB
RMS nivel dB
Vârf standard și nivel RMS măsurat în dBFS.

RMS vârf dB
RMS jgheab dB
Valorile maxime și minime pentru nivelul RMS măsurate pe o fereastră scurtă.

coamă factor
Raportul standard dintre vârf și nivelul RMS (notă: nu în dB).

Plat factor
Planeitatea (adică mostre consecutive cu aceeași valoare) a semnalului la vârf
niveluri (adică fie Min nivel or max nivel).

Vârf conta
Numărul de ocazii (nu numărul de eșantioane) în care a atins semnalul Min
nivel or max nivel.

Pic adâncime
Adâncimea generală de biți a sunetului. Numărul de biți utilizați pentru fiecare probă.

astreamsync
Redirecționați două fluxuri audio și controlați ordinea în care sunt transmise bufferele.

Filtrul acceptă următoarele opțiuni:

expr, e
Setați expresia decizând ce flux trebuie redirecționat în continuare: dacă rezultatul este
negativ, primul flux este transmis; dacă rezultatul este pozitiv sau zero, al doilea
fluxul este transmis. Poate folosi următoarele variabile:

b1 b2
numărul de buffer-uri transmise până acum pe fiecare flux

s1 s2
numărul de mostre transmise până acum pe fiecare flux

t1 t2
marca temporală curentă a fiecărui flux

Valoarea implicită este „t1-t2”, ceea ce înseamnă să redirecționați întotdeauna fluxul care are a
marca temporală mai mică.

Exemple

Testul de stres „amerge” prin trimiterea aleatorie a bufferelor pe intrarea greșită, evitând în același timp
o mare desincronizare:

amovie=file.ogg [a] ; amovie=file.mp3 [b] ;
[a] [b] astreamsync=(2*aleator(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] amerge

asincrone
Sincronizați datele audio cu marcajele de timp prin strângerea/întinderea și/sau scăparea acestora
mostre/adăugând tăcere atunci când este necesar.

Acest filtru nu este construit implicit, vă rugăm să utilizați sunt eșantion a face strângere/întindere.

Acceptă următorii parametri:

compensa
Activați extinderea/strângerea datelor pentru a le face să se potrivească cu marcajele de timp. Dezactivat de
Mod implicit. Când este dezactivat, intervalele de timp sunt acoperite cu tăcere.

min_delta
Diferența minimă dintre marcajele de timp și datele audio (în secunde) de declanșat
adăugarea/eliminarea mostrelor. Valoarea implicită este 0.1. Dacă obțineți o sincronizare imperfectă cu
acest filtru, încercați să setați acest parametru la 0.

max_comp
Compensarea maximă în mostre pe secundă. Relevant doar cu compensate=1. The
valoarea implicită este 500.

primul_pt
Să presupunem că primul PTS ar trebui să fie această valoare. Baza de timp este 1 / rata de eșantionare. Acest
permite umplutura/tunderea la începutul fluxului. În mod implicit, nu există nicio presupunere
realizat în jurul valorii PTS așteptate pentru primul cadru, deci nu se face nicio umplutură sau tăiere. Pentru
de exemplu, acesta ar putea fi setat la 0 pentru a completa începutul cu tăcere în cazul unui flux audio
începe după fluxul video sau pentru a tăia orice eșantioane cu un PTS negativ din cauza
întârziere codificatorului.

atempo
Reglați tempo-ul audio.

Filtrul acceptă exact un parametru, tempo-ul audio. Dacă nu este specificat, atunci
filtrul va presupune un tempo nominal de 1.0. Tempo trebuie să fie în intervalul [0.5, 2.0].

Exemple

· Încetiniți sunetul la 80% tempo:

atempo=0.8

· Pentru a accelera sunetul la 125% tempo:

atempo=1.25

atrim
Tăiați intrarea astfel încât ieșirea să conțină o subparte continuă a intrării.

Acceptă următorii parametri:

Începe
Marca temporală (în secunde) a începutului secțiunii de păstrat. Adică proba audio cu
marca temporală Începe va fi primul eșantion din ieșire.

capăt Specificați ora primului eșantion audio care va fi aruncat, adică proba audio
imediat anterior celui cu marca temporală capăt va fi ultima mostră din
ieșire.

start_pts
La fel ca Începe, cu excepția faptului că această opțiune setează marcajul de timp de început în mostre în loc de
secunde.

end_pts
La fel ca capăt, cu excepția că această opțiune setează marcajul de timp de sfârșit în mostre în loc de secunde.

durată
Durata maximă a ieșirii în secunde.

start_sample
Numărul primului eșantion care ar trebui să fie scos.

end_sample
Numărul primului eșantion care ar trebui abandonat.

Începe, capăt, și durată sunt exprimate ca specificații de durată de timp; vedea il Timp
durată secțiune in il ffmpeg-utils(1) manual.

Rețineți că primele două seturi de opțiuni de început/sfârșit și durată opțiunea uită-te la
marca temporală a cadrului, în timp ce opțiunile _sample pur și simplu numără mostrele care trec prin
filtru. Deci start/end_pts și start/end_sample vor da rezultate diferite atunci când
marcajele temporale sunt greșite, inexacte sau nu încep de la zero. De asemenea, rețineți că acest filtru nu
modificați marcajele de timp. Dacă doriți ca marcajele de timp de ieșire să înceapă de la zero, introduceți
asetpts filtru după filtrul atrim.

Dacă sunt setate mai multe opțiuni de început sau de sfârșit, acest filtru încearcă să fie lacom și să păstreze toate
eșantioane care se potrivesc cu cel puțin una dintre constrângerile specificate. Pentru a păstra doar partea care
se potrivește simultan cu toate constrângerile, conectează mai multe filtre atrim.

Valorile implicite sunt astfel încât toate intrările să fie păstrate. Deci, este posibil să setați, de exemplu, doar
valori finale pentru a păstra totul înainte de ora specificată.

Exemple:

· Eliminați totul, cu excepția celui de-al doilea minut de intrare:

ffmpeg -i INPUT -af atrim=60:120

· Păstrați numai primele 1000 de mostre:

ffmpeg -i INPUT -af atrim=end_sample=1000

bandpass
Aplicați un filtru trece-bandă Butterworth cu doi poli cu frecvență centrală frecvenţă, și
(3dB-punct) lățimea de bandă. The CSG opțiunea selectează un câștig constant al fustei (câștig maxim =
Q) în loc de implicit: câștig de vârf constant de 0dB. Filtrul se dezactivează la 6 dB pe octava
(20dB pe deceniu).

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența centrală a filtrului. Implicit este 3000.

CSG Câștig de fustă constant dacă este setat la 1. Implicit la 0.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type.

bandreject
Aplicați un filtru de respingere a benzii Butterworth cu doi poli cu frecvență centrală frecvenţă, și
(3dB-punct) lățime de bandă lățime. Filtrul se dezactivează la 6dB pe octava (20dB pe deceniu).

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența centrală a filtrului. Implicit este 3000.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type.

bas
Măriți sau reduceți frecvențele joase (inferioare) ale sunetului folosind un filtru de rafturi cu doi poli
cu un răspuns similar cu cel al controalelor de ton ale unui hi-fi standard. Acest lucru este cunoscut și ca
egalizare pe rafturi (EQ).

Filtrul acceptă următoarele opțiuni:

câștiga, g
Dați câștigul la 0 Hz. Intervalul său util este de aproximativ -20 (pentru o tăietură mare) până la +20 (pentru a
impuls mare). Atenție la tăiere atunci când utilizați un câștig pozitiv.

frecvență, f
Setați frecvența centrală a filtrului și astfel poate fi folosit pentru a extinde sau reduce
intervalul de frecvență care urmează să fie mărit sau redus. Valoarea implicită este 100 Hz.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Determinați cât de abruptă este tranziția raftului filtrului.

biquad
Aplicați un filtru biquad IIR cu coeficienții dați. Unde b0, b1, b2 și a0, a1, a2
sunt coeficienții numărătorului și, respectiv, numitorului.

bs2b
Transformare Bauer stereo în binaurală, care îmbunătățește ascultarea stereo la căști
înregistrări audio.

Acceptă următorii parametri:

profil
Nivel de alimentare încrucișat predefinit.

lipsă
Nivel implicit (fcut=700, feed=50).

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

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

fcut
Frecvența de tăiere (în Hz).

hrăni
Nivel de alimentare (în Hz).

harta canalelor
Remapează canalele de intrare în locații noi.

Acceptă următorii parametri:

channel_layout
Aspectul canalului fluxului de ieșire.

Hartă Hartă canalele de la intrare la ieșire. Argumentul este o listă de mapări separate de „|”,
fiecare în "canal_in_canal-canal_out" or în_canal formular. în_canal poate fi fie
numele canalului de intrare (de ex. FL pentru partea din față stânga) sau indexul acestuia în canalul de intrare
aspect. canal_out este numele canalului de ieșire sau indexul acestuia în ieșire
aspectul canalului. Dacă canal_out nu este dat atunci este implicit un index, pornind
cu zero și crescând cu unu pentru fiecare mapare.

Dacă nu este prezentă nicio mapare, filtrul va mapa implicit canalele de intrare la ieșire
canale, păstrând indici.

De exemplu, presupunând un fișier MOV de intrare 5.1+downmix,

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

va crea un fișier WAV de ieșire etichetat ca stereo din canalele de downmix ale intrării.

Pentru a remedia un WAV 5.1 codificat incorect în ordinea canalului nativ AAC

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

channelsplit
Împărțiți fiecare canal dintr-un flux audio de intrare într-un flux de ieșire separat.

Acceptă următorii parametri:

channel_layout
Aspectul canalului fluxului de intrare. Valoarea implicită este „stereo”.

De exemplu, presupunând un fișier MP3 de intrare stereo,

ffmpeg -i in.mp3 -filter_complex ChannelSplit Out.MKV

va crea un fișier Matroska de ieșire cu două fluxuri audio, unul care conține doar cel din stânga
canalul iar celălalt canalul potrivit.

Împărțiți un fișier WAV 5.1 în fișiere pe canal:

ffmpeg -i in.wav -filter_complex
„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]'
lateral_dreapta.wav

cor
Adăugați un efect de refren la sunet.

Poate scoate un singur sunet vocal ca un refren, dar poate fi aplicat și instrumentației.

Chorus seamănă cu un efect de ecou cu o întârziere scurtă, dar în timp ce cu ecou, ​​întârzierea este
constantă, cu cor, se variază folosind modulația sinusoidală sau triunghiulară. The
adâncimea modulației definește intervalul în care întârzierea modulată este redată înainte sau după
întârziere. Prin urmare, sunetul întârziat va suna mai lent sau mai repede, adică sunetul întârziat
reglat în jurul celui original, ca într-un refren în care unele voci sunt ușor deplasate.

Acceptă următorii parametri:

in_castig
Setați câștigul de intrare. Implicit este 0.4.

out_gain
Setați câștigul de ieșire. Implicit este 0.4.

întârzieri
Setați întârzieri. O întârziere tipică este de aproximativ 40 ms până la 60 ms.

se descompune
Setați degradari.

viteze
Setați viteze.

adâncimi
Setați adâncimi.

Exemple

· O singură întârziere:

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

· Două întârzieri:

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

· Refren cu sunet mai plin cu trei întârzieri:

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

compand
Comprimați sau extindeți intervalul dinamic al sunetului.

Acceptă următorii parametri:

Atacurile
se descompune
O listă de ori în secunde pentru fiecare canal peste care nivelul instantaneu al
Se face o medie a semnalului de intrare pentru a determina volumul acestuia. Atacurile se referă la creșterea volumului
și se descompune se referă la scăderea volumului. Pentru majoritatea situațiilor, timpul de atac
(răspunsul la sunetul care devine mai puternic) ar trebui să fie mai scurt decât timpul de dezintegrare, deoarece
urechea umană este mai sensibilă la sunetul tare brusc decât sunetul moale brusc. Un tipic
valoarea pentru atac este de 0.3 secunde și o valoare tipică pentru dezintegrare este de 0.8 secunde. Dacă
numărul specificat de atacuri și decaderi este mai mic decât numărul de canale, ultimul set
atacul/degradarea va fi folosit pentru toate canalele rămase.

puncte
O listă de puncte pentru funcția de transfer, specificate în dB raportat la maxim
amplitudinea posibilă a semnalului. Fiecare listă de puncte cheie trebuie definită folosind următoarele
sintaxă: „x0/y0|x1/y1|x2/y2|....” sau „x0/y0 x1/y1 x2/y2 ....”

Valorile de intrare trebuie să fie în ordine strict crescătoare, dar funcția de transfer o face
nu trebuie să fie monoton în creștere. Se presupune punctul „0/0”, dar poate fi suprascris
(prin „0/out-dBn”). Valorile tipice pentru funcția de transfer sunt „-70/-70|-60/-20”.

genunchi moale
Setați raza curbei în dB pentru toate îmbinările. Este implicit la 0.01.

câştig
Setați câștigul suplimentar în dB pentru a fi aplicat în toate punctele funcției de transfer.
Acest lucru permite ajustarea ușoară a câștigului general. Este implicit la 0.

volum
Setați un volum inițial, în dB, care să fie presupus pentru fiecare canal când începe filtrarea.
Acest lucru permite utilizatorului să furnizeze inițial un nivel nominal, astfel încât, de exemplu, a
amplificarea foarte mare nu este aplicată nivelurilor inițiale ale semnalului înainte ca compresia să aibă
a inceput sa functioneze. O valoare tipică pentru sunetul care este inițial silențios este -90 dB. Aceasta
implicit la 0.

întârziere
Setați o întârziere, în secunde. Sunetul de intrare este analizat imediat, dar sunetul este întârziat
înainte de a fi alimentat la reglatorul de volum. Specificând o întârziere aproximativ egală cu
timpii de atac/decădere permit filtrului să funcționeze eficient în predicție, mai degrabă decât
modul reactiv. Este implicit la 0.

Exemple

· Faceți muzică atât cu pasaje liniștite, cât și zgomotoase, potrivite pentru ascultare într-un mediu zgomotos
mediu inconjurator:

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

Un alt exemplu de sunet cu piese de șoaptă și explozie:

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

· O poartă de zgomot pentru când zgomotul este la un nivel mai scăzut decât semnalul:

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

· Iată o altă poartă de zgomot, de data aceasta pentru când zgomotul este la un nivel mai înalt decât cel
semnal (făcându-l, în anumite privințe, similar cu squelch-ul):

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

dcshift
Aplicați o schimbare DC la sunet.

Acest lucru poate fi util pentru a elimina un offset DC (cauzat probabil de o problemă hardware în
lanț de înregistrare) din audio. Efectul unui offset DC este un spațiu redus și, prin urmare
volum. The astats filtrul poate fi folosit pentru a determina dacă un semnal are un offset DC.

schimbare
Setați schimbarea DC, intervalul permis este [-1, 1]. Indică cantitatea de mutat
Audio.

limitator de câștig
Opțional. Ar trebui să aibă o valoare mult mai mică decât 1 (de ex. 0.05 sau 0.02) și este folosit pentru
previne tăierea.

dynaudnorm
Normalizator audio dinamic.

Acest filtru aplică o anumită cantitate de câștig la sunetul de intrare pentru a-și aduce vârful
magnitudinea la un nivel țintă (de exemplu, 0 dBFS). Cu toate acestea, spre deosebire de mai „simplu”
algoritmi de normalizare, Dynamic Audio Normalizer *dinamic* reajustează câștigul
factor la intrarea audio. Acest lucru permite aplicarea unui câștig suplimentar la secțiunile „liniștite” ale
audio, evitând în același timp distorsiunile sau tăierea secțiunilor „tare”. Cu alte cuvinte: The
Dynamic Audio Normalizer va „uniformiza” volumul secțiunilor silențioase și zgomotoase, în
simt că volumul fiecărei secțiuni este adus la același nivel țintă. Rețineți, totuși,
că Dynamic Audio Normalizer atinge acest obiectiv *fără* să aplice „interval dinamic
comprimarea". Va reține 100% din intervalul dinamic *în cadrul* fiecărei secțiuni a audio
fișier.

f Setați lungimea cadrului în milisecunde. Într-un interval de la 10 la 8000 milisecunde. Mod implicit
este de 500 milisecunde. Normalizatorul audio dinamic procesează sunetul de intrare în format mic
bucăți, denumite rame. Acest lucru este necesar, deoarece o magnitudine de vârf are nu
însemnând doar o singură valoare eșantion. În schimb, trebuie să determinăm vârful
magnitudinea pentru o secvență adiacentă de valori ale eșantionului. În timp ce un normalizator „standard”.
ar folosi pur și simplu mărimea maximă a fișierului complet, Dynamic Audio Normalizer
determină mărimea vârfului individual pentru fiecare cadru. Lungimea unui cadru este
specificat în milisecunde. În mod implicit, Dynamic Audio Normalizer utilizează un cadru
lungime de 500 de milisecunde, care s-a dovedit a da rezultate bune cu majoritatea fișierelor.
Rețineți că lungimea exactă a cadrului, în număr de mostre, va fi determinată
automat, pe baza ratei de eșantionare a fișierului audio de intrare individual.

g Setați dimensiunea ferestrei filtrului Gaussian. În intervalul de la 3 la 301, trebuie să fie un număr impar.
Implicit este 31. Probabil cel mai important parametru al Dynamic Audio Normalizer
este „dimensiunea ferestrei” a filtrului de netezire gaussian. Dimensiunea ferestrei filtrului este
specificate în cadre, centrate în jurul cadrului curent. De dragul simplitatii,
acesta trebuie să fie un număr impar. În consecință, valoarea implicită de 31 ia în considerare
cadrul curent, precum și cele 15 cadre precedente și cele 15 cadre ulterioare.
Folosirea unei ferestre mai mari are ca rezultat un efect de netezire mai puternic și, prin urmare, un câștig mai mic
variație, adică adaptare mai lentă a câștigului. În schimb, utilizarea unei ferestre mai mici are ca rezultat
un efect de netezire mai slab și astfel într-o variație mai mare a câștigului, adică câștig mai rapid
adaptare. Cu alte cuvinte, cu cât creșteți mai mult această valoare, cu atât este mai dinamică
Normalizatorul audio se va comporta ca un filtru de normalizare „tradițional”. Pe
dimpotrivă, cu cât scădeți mai mult această valoare, cu atât va fi mai mult Dynamic Audio Normalizer
se comportă ca un compresor cu gamă dinamică.

p Setați valoarea maximă țintă. Acesta specifică cel mai înalt nivel de magnitudine permis pentru
intrarea audio normalizată. Acest filtru va încerca să se apropie de magnitudinea maximă țintă
cât mai aproape posibil, dar în același timp se asigură și că se normalizează
semnalul nu va depăși niciodată amplitudinea de vârf. Factorul maxim de câștig local al unui cadru este
impusă direct de mărimea vârfului țintă. Valoarea implicită este 0.95 și astfel
lasă un spațiu liber de 5%*. Nu este recomandat să treceți peste această valoare.

m Setați factorul de câștig maxim. În intervalul de la 1.0 la 100.0. Implicit este 10.0. Dinamica
Audio Normalizer determină factorul de câștig maxim posibil (local) pentru fiecare intrare
cadru, adică factorul de câștig maxim care nu are ca rezultat tăierea sau distorsiunea.
Factorul de câștig maxim este determinat de eșantionul de cea mai mare magnitudine a cadrului.
Cu toate acestea, Dynamic Audio Normalizer limitează suplimentar câștigul maxim al cadrului
factor de un factor de câștig maxim predeterminat (global). Acest lucru se face pentru a evita
factori de câștig excesiv în cadre „silențioase” sau aproape silentioase. Implicit, maximul
factorul de câștig este 10.0, pentru majoritatea intrărilor, valoarea implicită ar trebui să fie suficientă și aceasta
de obicei nu se recomandă creșterea acestei valori. Cu toate acestea, pentru intrare cu un extrem
nivel scăzut al volumului general, poate fi necesar să se permită factori de câștig și mai mari. Notă,
totuși, că Dynamic Audio Normalizer nu aplică pur și simplu un prag „dur”.
(adică valori tăiate peste prag). În schimb, o funcție de prag „sigmoid”.
va fi aplicat. În acest fel, factorii de câștig se vor apropia fără probleme de prag
valoare, dar nu depășește niciodată această valoare.

r Setați valoarea RMS țintă. În intervalul de la 0.0 la 1.0. Implicit este 0.0 - dezactivat. În mod implicit,
Normalizatorul audio dinamic efectuează normalizarea „de vârf”. Aceasta înseamnă că
factorul maxim de câștig local pentru fiecare cadru este definit (numai) de cel mai mare cadru
eșantion de magnitudine. În acest fel, probele pot fi amplificate cât mai mult posibil fără
depășirea nivelului maxim de semnal, adică fără clipping. Opțional, totuși,
Dynamic Audio Normalizer poate lua în considerare și rădăcina pătrată medie a cadrului,
RMS prescurtat. În inginerie electrică, RMS este utilizat în mod obișnuit pentru a determina
puterea unui semnal care variază în timp. Prin urmare, se consideră că RMS este mai bun
o aproximare a „puterniciei percepute” decât doar a privi vârful semnalului
magnitudinea. În consecință, prin ajustarea tuturor cadrelor la o valoare RMS constantă, o uniformă
se poate stabili „puterea percepută”. Dacă a fost specificată o valoare RMS țintă, a
factorul de câștig local al cadrului este definit ca factorul care ar avea ca rezultat exact asta
Valoarea RMS. Rețineți, totuși, că factorul maxim de câștig local este încă limitat de
eșantionul de cea mai mare magnitudine a cadrului, pentru a preveni tăierea.

n Activați cuplarea canalelor. În mod implicit, este activat. În mod implicit, Dynamic Audio
Normalizatorul va amplifica toate canalele cu aceeași cantitate. Aceasta înseamnă același câștig
factorul va fi aplicat tuturor canalelor, adică factorul de câștig maxim posibil este
determinat de canalul „cel mai tare”. Cu toate acestea, în unele înregistrări, se poate întâmpla ca
volumul diferitelor canale este neuniform, de exemplu, un canal poate fi „mai liniștit” decât
ceilalti). În acest caz, această opțiune poate fi folosită pentru a dezactiva canalul
cuplare. În acest fel, factorul de câștig va fi determinat independent pentru fiecare canal,
în funcție doar de eșantionul de cea mai mare magnitudine a canalului individual. Acest lucru permite
armonizarea volumului diferitelor canale.

c Activați corecția de polarizare DC. Implicit este dezactivat. Un semnal audio (în timp
domeniu) este o secvență de valori ale eșantionului. În Dynamic Audio Normalizer aceste mostre
valorile sunt reprezentate în intervalul de la -1.0 la 1.0, indiferent de intrarea inițială
format. În mod normal, semnalul audio, sau „forma de undă”, ar trebui să fie centrat în jurul zero
punct. Asta înseamnă că dacă calculăm valoarea medie a tuturor mostrelor dintr-un fișier sau dintr-un
un singur cadru, atunci rezultatul ar trebui să fie 0.0 sau cel puțin foarte aproape de acea valoare. Dacă,
cu toate acestea, există o abatere semnificativă a valorii medii de la 0.0, în oricare dintre acestea
direcție pozitivă sau negativă, aceasta este denumită polarizare DC sau offset DC. De când a
Polarizarea DC este în mod clar nedorită, Normalizatorul audio dinamic oferă polarizarea DC opțională
corecţie. Cu corecția de polarizare DC activată, Normalizatorul audio dinamic o va face
determinați valoarea medie, sau offset-ul „corecției DC”, a fiecărui cadru de intrare și scădeți
acea valoare din toate valorile eșantionului cadrului care asigură că acele mostre sunt
centrat în jurul valorii de 0.0 din nou. De asemenea, pentru a evita „golurile” la limitele cadrului, cel
Valorile de offset ale corecției DC vor fi interpolate fără probleme între cadrele învecinate.

b Activați modul de delimitare alternativ. Implicit este dezactivat. Audio dinamic
Normalizatorul ține cont de o anumită vecinătate în jurul fiecărui cadru. Aceasta include
cadrele precedente precum și cadrele ulterioare. Cu toate acestea, pentru „limită”
cadre, situate chiar la începutul și la sfârșitul fișierului audio, nu toate
sunt disponibile rame învecinate. În special, pentru primele câteva cadre din
fișier audio, cadrele precedente nu sunt cunoscute. Și, la fel, pentru ultimii
cadre din fișierul audio, cadrele ulterioare nu sunt cunoscute. Astfel, întrebarea
apare care factori de câștig ar trebui să fie presupuși pentru cadrele lipsă din „limită”
regiune. Normalizatorul audio dinamic implementează două moduri pentru a face față acestei situații.
Modul de limită implicit presupune un factor de câștig de exact 1.0 pentru cadrele lipsă,
rezultând o „fade in” și „fade out” lină la începutul și la sfârșitul
de intrare, respectiv.

s Setați factorul de comprimare. În intervalul de la 0.0 la 30.0. Implicit este 0.0. În mod implicit,
Dynamic Audio Normalizer nu aplică compresie „tradițională”. Aceasta înseamnă că
vârfurile de semnal nu vor fi tăiate și astfel se va păstra întregul interval dinamic
în cadrul fiecărui cartier local. Cu toate acestea, în unele cazuri, poate fi de dorit să se combine
algoritmul de normalizare al Dynamic Audio Normalizer cu un aspect mai „tradițional”
comprimare. În acest scop, Dynamic Audio Normalizer oferă un opțional
funcția de compresie (de prag). Dacă (și numai dacă) caracteristica de compresie este
activat, toate cadrele de intrare vor fi procesate de o funcție de prag moale a genunchiului înainte
la procesul propriu-zis de normalizare. Mai simplu spus, funcția de prag va fi
tăiați toate probele a căror magnitudine depășește o anumită valoare de prag. Însă
Dynamic Audio Normalizer nu aplică pur și simplu o valoare de prag fixă. În schimb, cel
valoarea pragului va fi ajustată pentru fiecare cadru individual. În general, mai mic
parametrii au ca rezultat o compresie mai puternică și invers. Valorile sub 3.0 nu sunt
recomandat, deoarece poate apărea o distorsiune sonoră.

cerumen
Faceți sunetul mai ușor de ascultat la căști.

Acest filtru adaugă „indicii” la sunetul stereo de 44.1 kHz (adică format audio CD), astfel încât atunci când
ascultată la căști, imaginea stereo este mutată din interiorul capului (standard pentru
căști) în exterior și în fața ascultătorului (standard pentru difuzoare).

Portat de la SoX.

egalizator
Aplicați un filtru bipolar de egalizare a vârfului (EQ). Cu acest filtru, nivelul semnalului la
și în jurul unei frecvențe selectate pot fi mărite sau micșorate, în timp ce (spre deosebire de bandpass și
filtre de respingere a benzii) care la toate celelalte frecvențe este neschimbată.

Pentru a produce curbe de egalizare complexe, acest filtru poate fi dat de mai multe ori,
fiecare cu o frecvență centrală diferită.

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența centrală a filtrului în Hz.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type.

câștiga, g
Setați câștigul sau atenuarea necesară în dB. Atenție la tăiere atunci când utilizați un pozitiv
câștiga.

Exemple

· Atenuați 10 dB la 1000 Hz, cu o lățime de bandă de 200 Hz:

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

· Aplicați un câștig de 2 dB la 1000 Hz cu Q 1 și atenuați 5 dB la 100 Hz cu Q 2:

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

Flanger
Aplicați un efect de flanging la sunet.

Filtrul acceptă următoarele opțiuni:

întârziere
Setați întârzierea de bază în milisecunde. Interval de la 0 la 30. Valoarea implicită este 0.

adâncime
Setați întârzierea de baleiaj adăugată în milisecunde. Interval de la 0 la 10. Valoarea implicită este 2.

Regen
Setați regenerarea procentuală (feedback de semnal întârziat). Interval de la -95 la 95. Implicit
valoarea este 0.

lățime
Setați procentajul semnalului întârziat amestecat cu originalul. Interval de la 0 la 100. Implicit
valoarea este 71.

viteză
Setați sweep-uri pe secundă (Hz). Interval de la 0.1 la 10. Valoarea implicită este 0.5.

forma
Setați forma de undă măturată, poate fi triunghiular or sinusoidal. Valoarea implicită este sinusoidal.

fază
Setați deplasarea procentuală a undei măturate pentru mai multe canale. Interval de la 0 la 100. Valoare implicită
este 25.

interp
Setați interpolarea liniei de întârziere, liniar or pătratic. Implicit este liniar.

trecere inalta
Aplicați un filtru trece-înalt cu o frecvență punctuală de 3 dB. Filtrul poate fi fie unipolar,
sau bipolar (implicit). Filtrul se dezactivează la 6dB per pol pe octava (20dB per
pol pe deceniu).

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența în Hz. Implicit este 3000.

stalpi, p
Setați numărul de poli. Implicit este 2.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type. Se aplică numai la poli dublu
filtru. Valoarea implicită este 0.707q și oferă un răspuns Butterworth.

alătura
Uniți mai multe fluxuri de intrare într-un flux multicanal.

Acceptă următorii parametri:

intrări
Numărul de fluxuri de intrare. Este implicit la 2.

channel_layout
Aspectul dorit al canalului de ieșire. Este implicit la stereo.

Hartă Hartați canalele de la intrări la ieșiri. Argumentul este o listă de mapări separate de „|”,
fiecare în "input_idx.in_channel-out_channel" formular. input_idx este indicele bazat pe 0 al
fluxul de intrare. în_canal poate fi fie numele canalului de intrare (de exemplu FL pentru
față stânga) sau indexul acestuia în fluxul de intrare specificat. canal_out este numele
canal de ieșire.

Filtrul va încerca să ghicească mapările atunci când acestea nu sunt specificate în mod explicit. Aceasta
face acest lucru încercând mai întâi să găsească un canal de intrare potrivit nefolosit și dacă nu reușește
alege primul canal de intrare neutilizat.

Uniți 3 intrări (cu dispoziții de canal setate corespunzător):

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

Creați o ieșire 5.1 din 6 fluxuri cu un singur canal:

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'
afară

ladspa
Încărcați un plugin LADSPA (Linux Audio Developer's Simple Plugin API).

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu „--enable-ladspa”.

fişier, f
Specifică numele bibliotecii de plugin-uri LADSPA de încărcat. Dacă variabila de mediu
LADSPA_PATH este definit, pluginul LADSPA este căutat în fiecare dintre directoare
specificate de lista cu două puncte separate în LADSPA_PATH, altfel în LADSPA standard
căi, care sunt în această ordine: HOME/.ladspa/lib/, /usr/local/lib/ladspa/,
/usr/lib/ladspa/.

plugin, p
Specifică pluginul din bibliotecă. Unele biblioteci conțin un singur plugin, dar
altele conțin multe dintre ele. Dacă nu este setat, filtrul va lista toate pluginurile disponibile
în cadrul bibliotecii specificate.

controale, c
Setați „|” listă separată de controale care sunt zero sau mai multe valori în virgulă mobilă
care determină comportamentul pluginului încărcat (de exemplu întârziere, prag sau
câştig). Controalele trebuie definite folosind următoarea sintaxă:
c0=valoare0|c1=valoare1|c2=valoare2|..., unde valorile este valoarea setată pe i- al-lea control.
If controale este setat la „ajutor”, toate controalele disponibile și intervalele lor valide sunt
imprimate.

rata simpla, s
Specificați rata de eșantionare, implicit la 44100. Folosit numai dacă pluginul nu are intrări.

nb_samples, n
Setați numărul de mostre pe canal pentru fiecare cadru de ieșire, implicit este 1024. Numai
folosit dacă pluginul nu are intrări.

durată, d
Setați durata minimă a sunetului sursă. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată. Rețineți că durata rezultată poate
să fie mai mare decât durata specificată, deoarece sunetul generat este întotdeauna tăiat la
capătul unui cadru complet. Dacă nu este specificat sau durata exprimată este negativă,
audio ar trebui să fie generat pentru totdeauna. Folosit numai dacă pluginul nu are intrări.

Exemple

· Listați toate pluginurile disponibile din biblioteca amp (exemplu de plugin LADSPA):

ladspa=file=amp

· Listați toate controalele disponibile și intervalele lor valide pentru pluginul „vcf_notch” din „VCF”
bibliotecă:

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

· Simulați echipamente audio de calitate scăzută folosind pluginul „Computer Music Toolkit” (CMT).
bibliotecă:

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

· Adăugați reverberație la sunet folosind pluginuri TAP (pluginuri Tom's Audio Processing):

ladspa=file=tap_reverb:tap_reverb

· Generați zgomot alb, cu 0.2 amplitudine:

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

· Generați clicuri de 20 bpm utilizând pluginul „C* Click - Metronome” din „C* Audio Plugin”
Biblioteca Suite" (CAPS):

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

· Aplicați efectul „C* Eq10X2 - Egalizator stereo cu 10 benzi”:

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

Comenzi

Acest filtru acceptă următoarele comenzi:

cN Modificați N-a valoare de control.

Dacă valoarea specificată nu este validă, aceasta este ignorată și se păstrează cea anterioară.

trece jos
Aplicați un filtru trece-jos cu o frecvență punctuală de 3 dB. Filtrul poate fi fie unipolar, fie
poli dublu (implicit). Filtrul se dezactivează la 6 dB pe pol pe octavă (20 dB pe pol
pe deceniu).

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența în Hz. Implicit este 500.

stalpi, p
Setați numărul de poli. Implicit este 2.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Specificați lățimea de bandă a unui filtru în unități width_type. Se aplică numai la poli dublu
filtru. Valoarea implicită este 0.707q și oferă un răspuns Butterworth.

tigaie
Mixați canale cu niveluri de câștig specifice. Filtrul acceptă aspectul canalului de ieșire
urmată de un set de definiții de canale.

Acest filtru este, de asemenea, proiectat pentru a remapa eficient canalele unui flux audio.

Filtrul acceptă parametri de forma: "l|outdef|outdef|..."

l aspectul canalului de ieșire sau numărul de canale

outdef
specificația canalului de ieșire, sub forma:
"out_name=[câştig*]în_nume[+[câştig*]în_nume...]"

out_name
canal de ieșire de definit, fie un nume de canal (FL, FR, etc.) fie un număr de canal
(c0, c1 etc.)

câştig
coeficient multiplicativ pentru canal, 1 lăsând neschimbat volumul

în_nume
canal de intrare de utilizat, vezi out_name pentru detalii; nu se poate amesteca numit și
canale de intrare numerotate

Dacă `=' dintr-o specificație de canal este înlocuit cu `<', atunci câștigurile pentru asta
specificația va fi renormalizată astfel încât totalul să fie 1, evitându-se astfel zgomotul de tăiere.

Amestecarea exemple

De exemplu, dacă doriți să mixați în jos de la stereo la mono, dar cu un factor mai mare pentru
canalul din stânga:

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

Un down-mix personalizat la stereo care funcționează automat pentru 3, 4, 5 și 7 canale
surround:

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

Rețineți că FFMPEG integrează un sistem implicit de down-mix (și up-mix) care ar trebui să fie
preferat (vezi opțiunea „-ac”) cu excepția cazului în care aveți nevoi foarte specifice.

remapping exemple

Remaparea canalului va fi eficientă dacă și numai dacă:

*
*

Dacă toate aceste condiții sunt îndeplinite, filtrul va anunța utilizatorul („Canal pur
cartografierea detectată") și utilizați o metodă optimizată și fără pierderi pentru a efectua remaparea.

De exemplu, dacă aveți o sursă 5.1 și doriți un flux audio stereo, renunțând la extra
canale:

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

Având aceeași sursă, puteți, de asemenea, să comutați canalele față stânga și față dreapta și să păstrați
aspectul canalului de intrare:

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

Dacă intrarea este un flux audio stereo, puteți dezactiva canalul din față stânga (și încă păstrați
aspectul canalului stereo) cu:

pan="stereo|c1=c1"

Încă cu o intrare de flux audio stereo, puteți copia canalul din dreapta în ambele părți din față stânga
si dreapta:

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

replaygain
Filtrul scanerului ReplayGain. Acest filtru preia un flux audio ca intrare și îl scoate la ieșire
neschimbat. La sfârșitul filtrării, afișează „track_gain” și „track_peak”.

reeșantionați
Convertiți formatul eșantionului audio, rata de eșantionare și aspectul canalului. Nu este menit să fie
folosit direct.

sidechaincompress
Acest filtru acționează ca un compresor normal, dar are capacitatea de a comprima semnalul detectat
folosind al doilea semnal de intrare. Are nevoie de două fluxuri de intrare și returnează un flux de ieșire.
Primul flux de intrare va fi procesat în funcție de al doilea semnal de flux. Cel filtrat
semnalul poate fi filtrat cu alte filtre în etapele ulterioare ale procesării. Vedea tigaie și
apari filtru.

Filtrul acceptă următoarele opțiuni:

prag
Dacă un semnal al celui de-al doilea flux crește peste acest nivel, va afecta reducerea câștigului
a primului flux. Implicit este 0.125. Intervalul este între 0.00097563 și 1.

raport
Setați un raport pentru care semnalul este redus. 1:2 înseamnă că dacă nivelul a crescut cu 4dB
peste prag, acesta va fi cu numai 2 dB peste prag după reducere. Implicit este 2.
Intervalul este între 1 și 20.

ataca
Cantitatea de milisecunde în care semnalul trebuie să se ridice peste pragul înainte de câștig
începe reducerea. Implicit este 20. Intervalul este între 0.01 și 2000.

eliberaţi
Cantitatea de milisecunde în care semnalul trebuie să scadă sub pragul înainte ca reducerea să fie
a scăzut din nou. Implicit este 250. Intervalul este între 0.01 și 9000.

machiaj
Setați cantitatea în funcție de cât de mult semnalul va fi amplificat după procesare. Implicit este 2.
Intervalul este de la 1 la 64.

genunchi
Curbați genunchiul ascuțit în jurul pragului pentru a intra mai ușor în reducerea câștigului.
Implicit este 2.82843. Intervalul este între 1 și 8.

legătură
Alegeți dacă nivelul „mediu” dintre toate canalele fluxului side-chain sau
canalul mai puternic ("maxim") al fluxului de lanț lateral afectează reducerea. Implicit este
"in medie".

detectare
Ar trebui să fie luat semnalul exact în caz de „vârf” sau unul RMS în cazul „rms”.
Implicit este „rms”, care este în principal mai lin.

Exemple

· Exemplu complet de ffmpeg cu 2 intrări audio, prima intrare care va fi comprimată în funcție de
semnalul celei de-a doua intrări și semnalul comprimat ulterior să fie îmbinat cu a doua intrare:

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

tăceredetect
Detectează tăcerea într-un flux audio.

Acest filtru înregistrează un mesaj atunci când detectează că volumul audio de intrare este mai mic sau egal cu
o valoare a toleranței la zgomot pe o durată mai mare sau egală cu zgomotul minim detectat
durată.

Timpul și durata tipărite sunt exprimate în secunde.

Filtrul acceptă următoarele opțiuni:

durată, d
Setați durata tăcerii până la notificare (implicit este de 2 secunde).

zgomot, n
Setați toleranța la zgomot. Poate fi specificat în dB (în cazul în care „dB” este adăugat la valoarea specificată
valoare) sau raportul de amplitudine. Implicit este -60dB sau 0.001.

Exemple

· Detectează 5 secunde de liniște cu toleranță la zgomot de -50 dB:

silencedetect=n=-50dB:d=5

· Exemplu complet cu FFMPEG pentru a detecta liniștea cu toleranță la zgomot de 0.0001 în
tăcere.mp3:

ffmpeg -i silence.mp3 -af silencedetect=zgomot=0.0001 -f null -

tăcereelimină
Eliminați tăcerea de la începutul, mijlocul sau sfârșitul audio.

Filtrul acceptă următoarele opțiuni:

start_periods
Această valoare este folosită pentru a indica dacă sunetul ar trebui să fie tăiat la începutul sunetului. A
valoarea zero indică că nicio tăcere nu trebuie tăiată de la început. Când
specificând o valoare diferită de zero, decupează sunetul până când găsește non-tăcere. În mod normal,
atunci când tăiați liniștea de la începutul audio start_periods va fi 1 dar se poate
să fie crescută la valori mai mari pentru a reduce tot sunetul până la un număr specific de non-tăcere
perioade. Valoarea implicită este 0.

start_duration
Specificați intervalul de timp în care trebuie detectată lipsa tăcerii înainte de a opri tăierea
audio. Prin creșterea duratei, exploziile de zgomote pot fi tratate ca liniște și
decupat. Valoarea implicită este 0.

prag_început
Aceasta indică valoarea eșantionului care trebuie tratată ca tăcere. Pentru audio digital, a
valoarea 0 poate fi în regulă, dar pentru sunetul înregistrat din analog, poate doriți să creșteți
valoarea pentru a lua în considerare zgomotul de fond. Poate fi specificat în dB (în cazul în care „dB” este
anexată la valoarea specificată) sau raportul de amplitudine. Valoarea implicită este 0.

stop_periods
Setați numărul pentru reducerea tăcerii de la sfârșitul audio. Pentru a elimina tăcerea din
mijlocul unui fișier, specificați a stop_periods asta este negativ. Această valoare este apoi tratată
ca valoare pozitivă și este folosit pentru a indica efectul ar trebui să repornească procesarea ca
specificat de start_periods, făcându-l potrivit pentru eliminarea perioadelor de liniște din
mijlocul audio. Valoarea implicită este 0.

stop_duration
Specificați o durată de tăcere care trebuie să existe înainte ca sunetul să nu mai fie copiat. De
specificând o durată mai mare, liniștea care se dorește poate fi lăsată în audio.
Valoarea implicită este 0.

stop_threshold
Aceasta este la fel ca prag_început dar pentru a tăia tăcerea de la sfârșitul audio.
Poate fi specificat în dB (în cazul în care „dB” este adăugat la valoarea specificată) sau amplitudine
raport. Valoarea implicită este 0.

lasa_tacere
Acest lucru indică faptul că stop_duration lungimea audio ar trebui lăsată intactă la
începutul fiecărei perioade de tăcere. De exemplu, dacă doriți să eliminați pauzele lungi
între cuvinte, dar nu doriți să eliminați complet pauzele. Valoarea implicită este 0.

Exemple

· Următorul exemplu arată cum acest filtru poate fi utilizat pentru a începe o înregistrare care o face
să nu conțină întârzierea la început care apare de obicei între apăsarea înregistrării
butonul și începerea spectacolului:

silenceremove=1:5:0.02

tripla
Măriți sau reduceți frecvențele înalte (superioare) ale sunetului folosind un filtru de rafturi cu doi poli cu
un răspuns similar cu cel al controalelor de ton ale unui hi-fi standard. Acest lucru este cunoscut și ca
egalizare pe rafturi (EQ).

Filtrul acceptă următoarele opțiuni:

câștiga, g
Dați câștigul la oricare dintre cele mai mici dintre ~22 kHz și frecvența Nyquist. Este
intervalul util este de aproximativ -20 (pentru o tăietură mare) până la +20 (pentru un impuls mare). Feriți-vă de
tăiere atunci când utilizați un câștig pozitiv.

frecvență, f
Setați frecvența centrală a filtrului și astfel poate fi folosit pentru a extinde sau reduce
intervalul de frecvență care urmează să fie mărit sau redus. Valoarea implicită este 3000 Hz.

width_type
Setați metoda pentru a specifica lățimea de bandă a filtrului.

h Hz

q Factorul Q

o octavă

s pantă

lățime, w
Determinați cât de abruptă este tranziția raftului filtrului.

volum
Reglați volumul audio de intrare.

Acceptă următorii parametri:

volum
Setați expresia volumului audio.

Valorile de ieșire sunt tăiate la valoarea maximă.

Volumul audio de ieșire este dat de relația:

= *

Valoarea implicită pentru volum este „1.0”.

precizie
Acest parametru reprezintă precizia matematică.

Determină ce formate de eșantion de intrare vor fi permise, ceea ce afectează precizia
a scalarii volumului.

fixată
virgulă fixă ​​pe 8 biți; aceasta limitează formatul eșantionului de intrare la U8, S16 și S32.

pluti
virgulă mobilă pe 32 de biți; aceasta limitează formatul eșantionului de intrare la FLT. (Mod implicit)

dubla
virgulă mobilă pe 64 de biți; aceasta limitează formatul eșantionului de intrare la DBL.

replaygain
Alegeți comportamentul la întâlnirea datelor secundare ReplayGain în cadrele de intrare.

picătură
Eliminați datele secundare ReplayGain, ignorând conținutul acestora (implicit).

ignora
Ignorați datele secundare ReplayGain, dar lăsați-le în cadru.

urmări
Preferați câștigul piesei, dacă este prezent.

album
Preferă câștigul albumului, dacă este prezent.

replaygain_preamp
Câștig de pre-amplificare în dB pentru a se aplica câștigului de reluare selectat.

Valoarea implicită pentru replaygain_preamp este 0.0.

eval
Setați când este evaluată expresia volumului.

Acceptă următoarele valori:

dată
evaluați expresia o singură dată în timpul inițializării filtrului sau când volum
comanda este trimisă

cadru
evaluați expresia pentru fiecare cadru de intrare

Valoarea implicită este dată.

Expresia de volum poate conține următorii parametri.

n numărul cadrului (începând cu zero)

nb_channels
numărul de canale

nb_consumed_samples
numărul de probe consumate de filtru

nb_samples
numărul de mostre din cadrul curent

post poziția inițială a cadrului în fișier

pct cadru PTS

rata simpla
rata simpla

startpts
PTS la începutul fluxului

startt
timpul la începutul fluxului

t timpul cadrului

tb baza de timp marcată de timp

volum
ultima valoare setată a volumului

Rețineți că atunci când eval este setat la dată numai rata simpla și tb variabilele sunt disponibile,
toate celelalte variabile se vor evalua la NAN.

Comenzi

Acest filtru acceptă următoarele comenzi:

volum
Modificați expresia volumului. Comanda acceptă aceeași sintaxă a lui
opțiunea corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

replaygain_noclip
Preveniți tăierea prin limitarea câștigului aplicat.

Valoarea implicită pentru replaygain_noclip este 1.

Exemple

· Reduceți la jumătate volumul audio de intrare:

volum=volum=0.5
volum=volum=1/2
volum=volum=-6.0206dB

În tot exemplul de mai sus, cheia numită pentru volum poate fi omis, de exemplu ca în:

volum=0.5

· Creșteți puterea audio de intrare cu 6 decibeli folosind precizia punctului fix:

volum=volum=6dB:precizie=fix

· Fade volum după timpul 10 cu o perioadă de anihilare de 5 secunde:

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

detectare volum
Detectați volumul videoclipului de intrare.

Filtrul nu are parametri. Intrarea nu este modificată. Statistici despre volumul va
să fie tipărit în jurnal când se ajunge la sfârșitul fluxului de intrare.

În special, va arăta volumul mediu (rădăcină medie pătrată), volumul maxim (pe o per-
baza de eșantion) și începutul unei histograme a valorilor de volum înregistrate (din
valoare maximă la un cumulat de 1/1000 din probe).

Toate volumele sunt în decibeli în raport cu valoarea maximă PCM.

Exemple

Iată un extras din rezultat:

[Parsed_volumedetect_0 0xa23120] volum_mediu: -27 dB
[Parsed_volumedetect_0 0xa23120] volum_max: -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

Înseamnă că:

· Energia pătrată medie este de aproximativ -27 dB, sau 10^-2.7.

· Cel mai mare eșantion este la -4 dB, sau mai precis între -4 dB și -5 dB.

· Există 6 mostre la -4 dB, 62 la -5 dB, 286 la -6 dB etc.

Cu alte cuvinte, creșterea volumului cu +4 dB nu provoacă nicio tăiere, creșterea acestuia cu +5
dB provoacă clipping pentru 6 mostre etc.

AUDIO SURSE


Mai jos este o descriere a surselor audio disponibile în prezent.

tampon
Salvați cadrele audio și puneți-le la dispoziție pentru lanțul de filtre.

Această sursă este destinată în principal unei utilizări programatice, în special prin intermediul interfeței
definit în libavfilter/asrc_abuffer.h.

Acceptă următorii parametri:

baza de timp
Baza de timp care va fi utilizată pentru marcajele de timp ale cadrelor trimise. Trebuie să fie fie
un număr în virgulă mobilă sau în numărător/numitor formular.

rata simpla
Rata de eșantionare a bufferelor audio de intrare.

sample_fmt
Formatul eșantion al bufferelor audio primite. Fie un nume de format de probă, fie acesta
reprezentarea întregului corespunzătoare din enumerarea AVSampleFormat în
libavutil/samplefmt.h

channel_layout
Aspectul de canal al bufferelor audio de intrare. Fie un nume de aspect al canalului de la
channel_layout_map in libavutil/channel_layout.c sau întregul său corespunzător
reprezentare din macrocomenzile AV_CH_LAYOUT_* în libavutil/channel_layout.h

canale
Numărul de canale ale bufferelor audio de intrare. Dacă ambele canale și
channel_layout sunt specificate, atunci trebuie să fie consecvente.

Exemple

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

va instrui sursa să accepte stereo planar pe 16 biți semnat la 44100 Hz. Din momentul în care
formatul de probă cu numele „s16p” corespunde numărului 6 și aspectului canalului „stereo”.
corespunde valorii 0x3, aceasta este echivalentă cu:

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

aevalsrc
Generați un semnal audio specificat de o expresie.

Această sursă acceptă în intrare una sau mai multe expresii (una pentru fiecare canal), care sunt
evaluat și utilizat pentru a genera un semnal audio corespunzător.

Această sursă acceptă următoarele opțiuni:

exprs
Setați lista de expresii separate de „|” pentru fiecare canal separat. În cazul în care
channel_layout opțiunea nu este specificată, aspectul canalului selectat depinde de
numărul de expresii furnizate. În caz contrar, se aplică ultima expresie specificată
canalele de ieșire rămase.

channel_layout, c
Setați aspectul canalului. Numărul de canale din aspectul specificat trebuie să fie egal
la numărul de expresii specificate.

durată, d
Setați durata minimă a sunetului sursă. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată. Rețineți că durata rezultată poate
să fie mai mare decât durata specificată, deoarece sunetul generat este întotdeauna tăiat la
capătul unui cadru complet.

Dacă nu este specificată sau durata exprimată este negativă, se presupune că sunetul este
generat pentru totdeauna.

nb_samples, n
Setați numărul de mostre pe canal pentru fiecare cadru de ieșire, implicit la 1024.

rata simpla, s
Specificați rata de eșantionare, implicit la 44100.

Fiecare expresie în exprs poate conține următoarele constante:

n numărul eșantionului evaluat, începând de la 0

t timpul eșantionului evaluat exprimat în secunde, începând de la 0

s rata simpla

Exemple

· Generați tăcere:

aevalsrc=0

· Generați un semnal sin cu o frecvență de 440 Hz, setați rata de eșantionare la 8000 Hz:

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

· Generați un semnal cu două canale, specificați aspectul canalului (Front Center + Back
Centru) în mod explicit:

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

· Generați zgomot alb:

aevalsrc="/-2+aleator(0) "

· Generați un semnal modulat în amplitudine:

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

· Generați bătăi binaurale de 2.5 Hz pe o purtătoare de 360 ​​Hz:

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

anullsrc
Sursa audio nulă, returnează cadre audio neprocesate. Este util în principal ca șablon
și să fie folosit în instrumente de analiză / depanare, sau ca sursă pentru filtre care
ignorați datele de intrare (de exemplu, filtrul de sinteză sox).

Această sursă acceptă următoarele opțiuni:

channel_layout, cl
Specifică aspectul canalului și poate fi fie un număr întreg, fie un șir reprezentând a
aspectul canalului. Valoarea implicită a channel_layout este „stereo”.

Verificați definiția channel_layout_map în libavutil/channel_layout.c pentru cartografiere
între șiruri de caractere și valori de aspect al canalului.

rata simpla, r
Specifică rata de eșantionare și este implicit 44100.

nb_samples, n
Setați numărul de mostre pe cadre solicitate.

Exemple

· Setați rata de eșantionare la 48000 Hz și configurația canalului la AV_CH_LAYOUT_MONO.

anullsrc=r=48000:cl=4

· Faceți aceeași operație cu o sintaxă mai evidentă:

anullsrc=r=48000:cl=mono

Toți parametrii trebuie definiți în mod explicit.

a zbura
Sintetizați un enunț vocal folosind biblioteca libflite.

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu
„--enable-libflite”.

Rețineți că biblioteca flite nu este sigură pentru fire.

Filtrul acceptă următoarele opțiuni:

list_voices
Dacă setați la 1, listați numele vocilor disponibile și ieșiți imediat. Mod implicit
valoarea este 0.

nb_samples, n
Setați numărul maxim de mostre pe cadru. Valoarea implicită este 512.

fisier text
Setați numele fișierului care conține textul de vorbit.

a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match.
Setați textul să vorbească.

voce, v
Setați vocea de utilizat pentru sinteza vorbirii. Valoarea implicită este „kal”. Vezi și
list_voices opțiune.

Exemple

· Citiți din fișier vorbire.txtși sintetizați textul folosind vocea flite standard:

flite=textfile=speech.txt

· Citiți textul specificat selectând vocea „slt”:

flite=text='Deci bine, bietul diavol al unui Sub-Sub, al cărui comentator sunt':voice=slt

· Introduceți text în ffmpeg:

ffmpeg -f lavfi -i flite=text='Deci bine, bietul diavol al unui Sub-Sub, al cărui comentator sunt':voice=slt

· Face ffplay rostiți textul specificat, folosind „flite” și dispozitivul „lavfi”:

ffplay -f lavfi flite=text='Nu te mai întrista pentru ceea ce ai făcut.'

Pentru mai multe informații despre libflite, verificați:http://www.speech.cs.cmu.edu/flite/>

sinus
Generați un semnal audio format dintr-o undă sinusoidală cu amplitudine 1/8.

Semnalul audio este exact pe biți.

Filtrul acceptă următoarele opțiuni:

frecvență, f
Setați frecvența purtătoarei. Implicit este 440 Hz.

factor_bip, b
Activați un bip periodic în fiecare secundă cu frecvență factor_bip ori transportatorul
frecvență. Implicit este 0, ceea ce înseamnă că beep-ul este dezactivat.

rata simpla, r
Specificați rata de eșantionare, implicit este 44100.

durată, d
Specificați durata fluxului audio generat.

samples_per_frame
Setați numărul de mostre pe cadru de ieșire, implicit este 1024.

Exemple

· Generați o undă sinusoidală simplă de 440 Hz:

sinus

· Generați o undă sinusoidală de 220 Hz cu un bip de 880 Hz în fiecare secundă, timp de 5 secunde:

sinus=220:4:d=5
sine=f=220:b=4:d=5
sine=frecvență=220:factor_bip=4:durată=5

AUDIO CHIUVE


Mai jos este o descriere a receptorilor audio disponibile în prezent.

chiuveta tampon
Salvați cadrele audio și puneți-le la dispoziție până la sfârșitul lanțului de filtre.

Această chiuvetă este destinată în principal utilizării programatice, în special prin interfață
definit în libavfilter/buffersink.h sau sistemul de opțiuni.

Acceptă un pointer către o structură AVABufferSinkContext, care definește intrarea
formatele bufferelor, care urmează să fie transmise ca parametru opac la „avfilter_init_filter” pentru
initializare.

anullsk
Chiuvetă audio nulă; nu face absolut nimic cu intrarea audio. Este util în principal ca a
șablon și pentru utilizare în instrumente de analiză/depanare.

VIDEO FILTRE


Când configurați versiunea FFmpeg, puteți dezactiva oricare dintre filtrele existente folosind
„--disable-filters”. Ieșirea de configurare va afișa filtrele video incluse în dvs
construi.

Mai jos este o descriere a filtrelor video disponibile în prezent.

alfaextract
Extrageți componenta alfa de la intrare ca un videoclip în tonuri de gri. Acest lucru este deosebit de util
cu alphamerge filtru.

alphamerge
Adăugați sau înlocuiți componenta alfa a intrării primare cu valoarea în tonuri de gri a
a doua intrare. Acesta este destinat utilizării cu alfaextract pentru a permite transmiterea sau
stocarea secvențelor de cadre care au alfa într-un format care nu acceptă un alfa
canal.

De exemplu, pentru a reconstrui cadre complete dintr-un videoclip normal codificat YUV și unul separat
video creat cu alfaextract, ai putea folosi:

film=in_alpha.mkv [alfa]; [in][alpha] alphamerge [out]

Deoarece acest filtru este proiectat pentru reconstrucție, funcționează pe secvențe de cadre fără
luând în considerare marcajele de timp și se termină atunci când oricare dintre intrări ajunge la sfârșitul fluxului. Asta va
cauza probleme dacă conducta de codificare pierde cadre. Dacă încercați să aplicați o imagine
ca o suprapunere a unui flux video, luați în considerare acoperire filtru în schimb.

cur
La fel ca subtitrari filtru, cu excepția faptului că nu necesită libavcodec și libavformat
muncă. Pe de altă parte, este limitat la fișierele de subtitrări ASS (Advanced Substation Alpha).

Acest filtru acceptă următoarea opțiune în plus față de opțiunile comune din
subtitrari filtru:

fasonarea
Setați motorul de modelare

Valorile disponibile sunt:

Auto
Motorul implicit de modelare libass, care este cel mai bun disponibil.

simplu
Modelator rapid, independent de fonturi, care poate face doar înlocuiri

complex
Model mai lent folosind OpenType pentru înlocuiri și poziționare

Valoarea implicită este „auto”.

atadenoise
Aplicați un Adaptive Temporal Averging Denoiser la intrarea video.

Filtrul acceptă următoarele opțiuni:

0a Setați pragul A pentru primul plan. Implicit este 1. Intervalul valid este de la 0.02 la 0.

0b Setați pragul B pentru primul plan. Implicit este 1. Intervalul valid este de la 0.04 la 0.

1a Setați pragul A pentru al 2-lea plan. Implicit este 0.02. Intervalul valid este de la 0 la 0.3.

1b Setați pragul B pentru al 2-lea plan. Implicit este 0.04. Intervalul valid este de la 0 la 5.

2a Setați pragul A pentru al treilea plan. Implicit este 3. Intervalul valid este de la 0.02 la 0.

2b Setați pragul B pentru al treilea plan. Implicit este 3. Intervalul valid este de la 0.04 la 0.

Pragul A este proiectat să reacționeze la modificări bruște ale semnalului de intrare și ale pragului B
este proiectat să reacționeze la schimbările continue ale semnalului de intrare.

s Setați numărul de cadre pe care filtrul va folosi pentru mediere. Implicit este 33. Trebuie să fie un număr impar
în intervalul [5, 129].

bbox
Calculați caseta de delimitare pentru pixelii non-negri din planul de luminanță al cadrului de intrare.

Acest filtru calculează căsuța de delimitare care conține toți pixelii cu o valoare de luminanță
mai mare decât valoarea minimă admisă. Parametrii care descriu caseta de delimitare sunt
tipărit pe jurnalul de filtrare.

Filtrul acceptă următoarea opțiune:

min_val
Setați valoarea minimă de luminanță. Implicit este 16.

blackdetect
Detectează intervalele video care sunt (aproape) complet negre. Poate fi util pentru a detecta capitolul
tranziții, reclame sau înregistrări nevalide. Liniile de ieșire conțin timpul pentru
începutul, sfârșitul și durata intervalului negru detectat exprimate în secunde.

Pentru a afișa liniile de ieșire, trebuie să setați nivelul de jurnal cel puțin la
Valoarea AV_LOG_INFO.

Filtrul acceptă următoarele opțiuni:

black_min_duration, d
Setați durata minimă de negru detectată, exprimată în secunde. Trebuie să fie un non-
număr negativ în virgulă mobilă.

Valoarea implicită este 2.0.

picture_black_raport_th, pic_th
Setați pragul pentru a considera o imagine „neagră”. Exprimați valoarea minimă pentru
raportul:

/

pentru care o poză este considerată neagră. Valoarea implicită este 0.98.

pixel_black_th, pix_th
Setați pragul pentru a considera un pixel „negru”.

Pragul exprimă valoarea maximă de luminanță a pixelului pentru care este un pixel
considerat „negru”. Valoarea furnizată este scalată conform următoarei ecuații:

= + *

luminance_range_size și lumina_luminance_minimum_value depinde de formatul video de intrare,
intervalul este [0-255] pentru formatele YUV cu gamă completă și [16-235] pentru formatele YUV non-gamă completă
formate.

Valoarea implicită este 0.10.

Următorul exemplu setează pragul maxim de pixeli la valoarea minimă și detectează
numai intervale negre de 2 sau mai multe secunde:

blackdetect=d=2:pix_th=0.00

cadru negru
Detectați cadrele care sunt (aproape) complet negre. Poate fi util pentru a detecta capitolul
tranziții sau reclame. Liniile de ieșire constau din numărul cadrului detectat
cadru, procentul de întuneric, poziția în fișier dacă este cunoscută sau -1 și
marca temporală în secunde.

Pentru a afișa liniile de ieșire, trebuie să setați nivelul de jurnal cel puțin la
Valoarea AV_LOG_INFO.

Acceptă următorii parametri:

sumă
Procentul de pixeli care trebuie să fie sub prag; este implicit la 98.

prag, treieră
Pragul sub care o valoare a pixelului este considerată neagră; este implicit la 32.

amestec, amestec
Combinați două cadre video unul în celălalt.

Filtrul „mix” preia două fluxuri de intrare și scoate un flux, prima intrare este
Stratul „de sus” și a doua intrare este stratul „de jos”. Ieșirea se termină când intrarea este cea mai scurtă
se termină.

Filtrul „tblend” (time blend) ia două cadre consecutive dintr-un singur flux și
redă rezultatul obținut prin amestecarea noului cadru peste vechiul cadru.

Urmează o descriere a opțiunilor acceptate.

c0_mode
c1_mode
c2_mode
c3_mode
all_mode
Setați modul de amestecare pentru o anumită componentă de pixeli sau pentru toate componentele de pixeli în caz de
all_mode. Valoarea implicită este „normală”.

Valorile disponibile pentru modurile componente sunt:

plus
și
in medie
arde
întuneca
diferenţă
diferenta128
împărţi
ocolire
excludere
strălucire
lumină tare
hardmix
uşura
lumina liniara
multiplica
negare
normală.
or
acoperire
fenix
lumina insignei
reflecta
ecran
lumina slaba
scădea
lumina vie
XOR
c0_opacitate
c1_opacitate
c2_opacitate
c3_opacitate
total_opacitate
Setați opacitatea amestecului pentru o anumită componentă de pixeli sau pentru toate componentele de pixeli în caz de
total_opacitate. Folosit numai în combinație cu modurile de amestecare a componentelor pixelilor.

c0_expr
c1_expr
c2_expr
c3_expr
toate_expr
Setați expresia de amestec pentru o anumită componentă de pixeli sau pentru toate componentele de pixeli în caz de
toate_expr. Rețineți că opțiunile legate de mod vor fi ignorate dacă acestea sunt setate.

Expresiile pot folosi următoarele variabile:

N Numărul secvenţial al cadrului filtrat, începând de la 0.

X
Y coordonatele probei curente

W
H lățimea și înălțimea planului filtrat curent

SW
SH Scala de lățime și înălțime în funcție de planul filtrat curent. Este raportul
între numărul de pixeli din planul luminos corespunzător și cei din planul curent.
De exemplu, pentru YUV4:2:0, valorile sunt „1,1” pentru planul luminos și „0.5,0.5” pentru
planuri cromatice.

T Timpul cadrului curent, exprimat în secunde.

TOP, A
Valoarea componentei pixelului în locația curentă pentru primul cadru video (stratul superior).

FUND, B
Valoarea componentei pixelului în locația curentă pentru al doilea cadru video (jos
strat).

cel mai scurt
Forțați terminarea când se termină cea mai scurtă intrare. Implicit este 0. Această opțiune este
definit doar pentru filtrul „amestecare”.

repetlast
Continuați să aplicați ultimul cadru de jos după sfârșitul fluxului. O valoare de 0
dezactivați filtrul după ce se ajunge la ultimul cadru al stratului inferior. Implicit este 1.
Această opțiune este definită numai pentru filtrul „amestecare”.

Exemple

· Aplicați tranziția de la stratul inferior la cel superior în primele 10 secunde:

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

· Aplicați efectul de șah 1x1:

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

· Aplicați efectul descoperire stânga:

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

· Aplicați efectul de dezvăluire:

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

· Aplicați efectul de descoperire sus-stânga:

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

· Afișează diferențele dintre cadrul curent și cel anterior:

tblend=all_mode=difference128

boxblur
Aplicați un algoritm boxblur la videoclipul de intrare.

Acceptă următorii parametri:

luma_radius, lr
putere_lumă, lp
chroma_radius, cr
chroma_power, cp
alpha_radius, ar
putere_alfa, ap

Urmează o descriere a opțiunilor acceptate.

luma_radius, lr
chroma_radius, cr
alpha_radius, ar
Setați o expresie pentru raza casetei în pixeli utilizate pentru estomparea corespunzătoare
planul de intrare.

Valoarea razei trebuie să fie un număr nenegativ și nu trebuie să fie mai mare decât valoarea
a expresiei „min(w,h)/2” pentru planurile luma și alfa și a „min(cw,ch)/2”
pentru planurile cromatice.

Valoarea implicită pentru luma_radius este „2”. Dacă nu este specificat, chroma_radius și alfa_radius
implicit la valoarea corespunzătoare setată pentru luma_radius.

Expresiile pot conține următoarele constante:

w
h Lățimea și înălțimea de intrare în pixeli.

cw
ch Lățimea și înălțimea imaginii de intrare cromatică în pixeli.

hsub
vsub
Valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru pixel
format „yuv422p”, hsub este 2 și vsub este 1.

putere_lumă, lp
chroma_power, cp
putere_alfa, ap
Specificați de câte ori este aplicat filtrul de neclaritate pe planul corespunzător.

Valoarea implicită pentru puterea_lumă este 2. Dacă nu este specificat, chroma_power și alfa_putere
implicit la valoarea corespunzătoare setată pentru puterea_lumă.

O valoare de 0 va dezactiva efectul.

Exemple

· Aplicați un filtru boxblur cu razele luma, croma și alfa setate la 2:

boxblur=luma_radius=2:luma_power=1
boxblur=2:1

· Setați raza lumina la 2 și raza alfa și cromatică la 0:

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

· Setați razele luma și croma la o fracțiune din dimensiunea video:

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

codecview
Vizualizați informațiile exportate de unele codecuri.

Unele codecuri pot exporta informații prin cadre folosind date secundare sau alte mijloace. Pentru
de exemplu, unele codecuri bazate pe MPEG exportă vectori de mișcare prin intermediul export_mvs steag în
codec steaguri2 opțiune.

Filtrul acceptă următoarea opțiune:

mv Setați vectori de mișcare pentru vizualizare.

Steaguri disponibile pentru mv sunt:

pf MV anticipate ale cadrelor P

bf MV-uri anticipate ale cadrelor B

bb MV-uri anticipate înapoi ale cadrelor B

Exemple

· Vizualizează MV-uri multidirecționale din P și B-Frames folosind ffplay:

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

echilibrul culorilor
Modificați intensitatea culorilor primare (roșu, verde și albastru) ale cadrelor de intrare.

Filtrul permite ca un cadru de intrare să fie ajustat în umbre, tonuri medii sau lumini
regiuni pentru echilibrul roșu-cian, verde-magenta sau albastru-galben.

O valoare de ajustare pozitivă deplasează balanța către culoarea primară, o valoare negativă
spre culoarea complementară.

Filtrul acceptă următoarele opțiuni:

rs
gs
bs Ajustați umbrele roșii, verzi și albastre (cel mai întunecat pixeli).

rm
gm
bm Ajustați tonurile medii de roșu, verde și albastru (pixeli medii).

rh
gh
bh Reglați luminile roșii, verzi și albastre (cel mai luminoși pixeli).

Intervalele permise pentru opțiuni sunt „[-1.0, 1.0]”. Valorile implicite sunt 0.

Exemple

· Adăugați culoare roșie la umbre:

balance de culoare=rs=.3

cheie de culoare
Codarea culorilor în spațiul de culoare RGB.

Filtrul acceptă următoarele opțiuni:

culoare
Culoarea care va fi înlocuită cu transparență.

similitudine
Procent de asemănare cu culoarea cheie.

0.01 se potrivește doar cu culoarea cheie exactă, în timp ce 1.0 se potrivește cu totul.

amesteca
Procentul de amestec.

0.0 face pixelii fie complet transparenți, fie deloc transparenți.

Valorile mai mari au ca rezultat pixeli semitransparenti, cu o transparență mai mare cu atât mai mult
culoarea pixelilor este similară cu culoarea cheie.

Exemple

· Faceți transparent fiecare pixel verde din imaginea de intrare:

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

· Suprapuneți un videoclip cu ecran verde peste o imagine statică de fundal.

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]” ieșire.flv

niveluri de culoare
Reglați cadrele de intrare video folosind niveluri.

Filtrul acceptă următoarele opțiuni:

rimin
gimin
bimin
aimin
Reglați punctul negru de intrare roșu, verde, albastru și alfa. Intervalele permise pentru opțiuni sunt
„[-1.0, 1.0]”. Valorile implicite sunt 0.

rimax
gimax
bimax
aimax
Reglați punctul alb de intrare roșu, verde, albastru și alfa. Intervalele permise pentru opțiuni sunt
„[-1.0, 1.0]”. Valorile implicite sunt 1.

Nivelurile de intrare sunt folosite pentru a lumina luminile (tonuri luminoase), umbrele întunecate (întunecate
tonuri), modificați echilibrul tonurilor luminoase și întunecate.

ROMIN
gomin
bomin
aomin
Reglați punctul negru de ieșire roșu, verde, albastru și alfa. Intervalele permise pentru opțiuni sunt
„[0, 1.0]”. Valorile implicite sunt 0.

romax
gomax
bomax
aomax
Reglați punctul alb de ieșire roșu, verde, albastru și alfa. Intervalele permise pentru opțiuni sunt
„[0, 1.0]”. Valorile implicite sunt 1.

Nivelurile de ieșire permit selectarea manuală a unui interval restrâns de nivel de ieșire.

Exemple

· Faceți ieșirea video mai întunecată:

colorlevels=rimin=0.058:gimin=0.058:bimin=0.058

· Mărește contrastul:

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

· Faceți ieșirea video mai ușoară:

niveluri de culoare=rimax=0.902:gimax=0.902:bimax=0.902

· Creșteți luminozitatea:

colorlevels=romin=0.5:gomin=0.5:bomin=0.5

mixer de canale de culoare
Reglați cadrele de intrare video remixând canalele de culoare.

Acest filtru modifică un canal de culoare prin adăugarea valorilor asociate celorlalte canale
de aceiași pixeli. De exemplu, dacă valoarea de modificat este roșie, valoarea de ieșire va fi:

= * + * + * + *

Filtrul acceptă următoarele opțiuni:

rr
rg
rb
ra Ajustați contribuția canalelor roșu, verde, albastru și alfa de intrare pentru roșu de ieșire
canal. Implicit este 1 pentru rrși 0 pentru rg, rb și ra.

gr
gg
gb
ga Ajustați contribuția canalelor de intrare roșu, verde, albastru și alfa pentru verde de ieșire
canal. Implicit este 1 pentru ggși 0 pentru gr, gb și ga.

br
bg
bb
ba Ajustați contribuția canalelor roșu, verde, albastru și alfa de intrare pentru albastru de ieșire
canal. Implicit este 1 pentru bbși 0 pentru br, bg și ba.

ar
ag
ab
aa Ajustați contribuția canalelor de intrare roșu, verde, albastru și alfa pentru ieșire alfa
canal. Implicit este 1 pentru aași 0 pentru ar, ag și ab.

Intervalele permise pentru opțiuni sunt „[-2.0, 2.0]”.

Exemple

· Convertiți sursa în tonuri de gri:

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

· Simulați tonuri sepia:

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

matrice de culori
Convertiți matricea de culori.

Filtrul acceptă următoarele opțiuni:

src
dst Specificați matricea de culori sursă și destinație. Ambele valori trebuie specificate.

Valorile acceptate sunt:

bt709
BT.709

bt601
BT.601

smpte240m
SMPTE-240M

fcc FCC

De exemplu, pentru a converti de la BT.601 la SMPTE-240M, utilizați comanda:

colormatrix=bt601:smpte240m

copiaţi
Copiați sursa de intrare neschimbată la ieșire. Acest lucru este util în principal în scopuri de testare.

cultură
Decupați videoclipul de intrare la dimensiunile date.

Acceptă următorii parametri:

w, out_w
Lățimea videoclipului de ieșire. Este implicit „iw”. Această expresie este evaluată numai
o dată în timpul configurării filtrului sau când w or out_w comanda este trimisă.

h, out_h
Înălțimea videoclipului de ieșire. Este implicit „ih”. Această expresie este evaluată
o singură dată în timpul configurării filtrului sau când h or out_h comanda este trimisă.

x Poziția orizontală, în videoclipul de intrare, a marginii din stânga a videoclipului de ieșire. Aceasta
implicit la „(in_w-out_w)/2”. Această expresie este evaluată pe cadru.

y Poziția verticală, în videoclipul de intrare, a marginii superioare a videoclipului de ieșire. Aceasta
implicit la „(in_h-out_h)/2”. Această expresie este evaluată pe cadru.

păstrează_aspect
Dacă este setat la 1, raportul de aspect al afișajului de ieșire va fi același cu cel de intrare, prin
modificarea raportului de aspect al eșantionului de ieșire. Este implicit la 0.

out_w, out_h, x, y parametrii sunt expresii care conțin următoarele constante:

x
y Valorile calculate pentru x și y. Ele sunt evaluate pentru fiecare cadru nou.

în W
în_h
Lățimea și înălțimea de intrare.

iw
ih Acestea sunt la fel ca în W și în_h.

out_w
out_h
Lățimea și înălțimea de ieșire (decupate).

ow
oh Acestea sunt la fel ca out_w și out_h.

a la fel ca iw / ih

SAR raportul de aspect al eșantionului de intrare

da raportul de aspect al afișajului de intrare, este același cu (iw / ih) * SAR

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

n Numărul cadrului de intrare, începând de la 0.

post poziția în fișier a cadrului de intrare, NAN dacă necunoscută

t Marca temporală exprimată în secunde. Este NAN dacă marcajul de timp de intrare este necunoscut.

Expresia pentru out_w poate depinde de valoarea lui out_h, iar expresia pentru out_h
poate depinde de out_w, dar nu pot depinde de x și y, După cum x și y sunt evaluate după
out_w și out_h.

x și y parametrii specifică expresiile pentru poziția colțului din stânga sus al
zona de ieșire (nedecupată). Ele sunt evaluate pentru fiecare cadru. Dacă valoarea evaluată
nu este valid, este aproximat la cea mai apropiată valoare validă.

Expresia pentru x poate depinde de y, iar expresia pentru y poate depinde de x.

Exemple

· Zona de decupare cu dimensiunea 100x100 la poziție (12,34).

crop=100:100:12:34

Folosind opțiunile numite, exemplul de mai sus devine:

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

· Decupați zona centrală de intrare cu dimensiunea 100x100:

crop=100:100

· Decupați zona centrală de intrare cu dimensiunea de 2/3 din videoclipul de intrare:

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

· Decupați pătratul central video de intrare:

crop=out_w=in_h
crop=in_h

· Delimitează dreptunghiul cu colțul din stânga sus plasat la poziția 100:100 și
colțul din dreapta jos corespunzător colțului din dreapta jos al imaginii de intrare.

crop=in_w-100:in_h-100:100:100

· Decupați 10 pixeli de la marginile din stânga și din dreapta și 20 de pixeli din partea de sus și de jos
frontierelor

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

· Păstrați doar sfertul din dreapta jos al imaginii de intrare:

crop=in_w/2:in_h/2:in_w/2:in_h/2

· Înălțimea decupării pentru obținerea armoniei grecești:

crop=in_w:1/PHI*in_w

· Aplicați efect de tremur:

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)

· Aplicați efect neregulat al camerei în funcție de marcajul de timp:

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)"

· Setați x în funcție de valoarea lui y:

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

Comenzi

Acest filtru acceptă următoarele comenzi:

w, out_w
h, out_h
x
y Setați lățimea/înălțimea videoclipului de ieșire și poziția orizontală/verticală în intrare
video. Comanda acceptă aceeași sintaxă a opțiunii corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

cropdetect
Detectează automat dimensiunea decupării.

Acesta calculează parametrii necesari de tăiere și tipărește parametrii recomandați prin
sistemul de logare. Dimensiunile detectate corespund zonei non-negre a intrării
video.

Acceptă următorii parametri:

limita
Setați un prag mai mare al valorii de negru, care poate fi specificat opțional din nimic (0)
la orice (255 pentru formatele pe 8 biți). O valoare de intensitate mai mare decât setul
valoarea este considerată non-neagră. Valoarea implicită este 24. De asemenea, puteți specifica o valoare
între 0.0 și 1.0 care va fi scalat în funcție de adâncimea de biți a pixelului
format.

rotund
Valoarea cu care lățimea/înălțimea ar trebui să fie divizibilă. Setarea implicită este 16. Offset
este ajustat automat pentru a centra videoclipul. Folosiți 2 pentru a obține doar dimensiuni pare
(necesar pentru videoclipul 4:2:2). 16 este cel mai bun atunci când se codifică la majoritatea codecurilor video.

reset_count, reseta
Setați contorul care determină după câte cadre va reseta cropdetect
zona video cea mai mare detectată anterior și începeți de la capăt pentru a detecta optimul curent
zona de cultură. Valoarea implicită este 0.

Acest lucru poate fi util atunci când siglele canalului distorsionează zona video. 0 indică „niciodată
reset' și returnează cea mai mare zonă întâlnită în timpul redării.

curbe
Aplicați ajustări de culoare folosind curbe.

Acest filtru este similar cu instrumentele pentru curbe Adobe Photoshop și GIMP. Fiecare componentă (roșu,
verde și albastru) își are valorile definite de N puncte cheie legate între ele folosind o netedă
curba. Axa x reprezintă valorile pixelilor din cadrul de intrare, iar axa y cea nouă
valorile pixelilor care urmează să fie setate pentru cadrul de ieșire.

În mod implicit, o curbă de componentă este definită de cele două puncte (0;0) și (1;1). Acest lucru creează un
linie dreaptă unde fiecare valoare originală a pixelului este „ajustată” la propria sa valoare, ceea ce înseamnă
nicio modificare a imaginii.

Filtrul vă permite să redefiniți aceste două puncte și să adăugați mai multe. O nouă curbă (folosind a
interpolare spline cubică naturală) vor fi definite pentru a trece fără probleme prin toate aceste noi
coordonate. Noile puncte definite trebuie să crească strict pe axa x și
lor x și y valorile trebuie să fie în [0;1] interval. Dacă curbele calculate s-au întâmplat să meargă
în afara spațiilor vectoriale, valorile vor fi tăiate corespunzător.

Dacă nu există niciun punct cheie definit în „x=0”, filtrul va introduce automat a (0;0)
punct. În același mod, dacă nu există niciun punct cheie definit în „x=1”, filtrul va face
inserați automat a (1;1) punct.

Filtrul acceptă următoarele opțiuni:

presetat
Selectați una dintre presetările de culoare disponibile. Această opțiune poate fi utilizată în plus față de
r, g, b parametrii; în acest caz, opțiunile ulterioare au prioritate pe presetarea
valorile. Presetările disponibile sunt:

nici unul
culoare_negativă
proces_încrucișat
mai întunecat
mărește contrastul
mai usoara
contrast_liniar
contrast_mediu
negativ
contrast_puternic
epocă

Implicit este „niciunul”.

maestru, m
Setați punctele cheie principale. Aceste puncte vor defini o a doua mapare a trecerii. Este
numită uneori mapare „luminanță” sau „valoare”. Poate fi folosit cu r, g, b or toate
deoarece acţionează ca un LUT de post-procesare.

roșu, r
Setați punctele cheie pentru componenta roșie.

verde, g
Setați punctele cheie pentru componenta verde.

albastru, b
Setați punctele cheie pentru componenta albastră.

toate Setați punctele cheie pentru toate componentele (cu excepția masterului). Poate fi folosit in plus
la celelalte opțiuni ale componentelor puncte cheie. În acest caz, componenta (componentele) dezactivate vor
recurge la asta toate setare.

psfile
Specificați un fișier de curbe Photoshop (".asv") din care să importați setările.

Pentru a evita unele conflicte de sintaxă a filtrului, fiecare listă de puncte cheie trebuie definită folosind
următoarea sintaxă: „x0/y0 x1/y1 x2/y2 ...”.

Exemple

· Creșteți ușor nivelul mediu de albastru:

curbe=albastru='0.5/0.58'

· Efect vintage:

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

Aici obținem următoarele coordonate pentru fiecare componentă:

roșu "(0;0.11) (0.42;0.51) (1;0.95)"

verde
"(0;0) (0.50;0.48) (1;1)"

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

· Exemplul anterior poate fi realizat și cu presetarea încorporată asociată:

curbe=preset=vintage

· Sau pur și simplu:

curbe=vintage

· Utilizați o presetare Photoshop și redefiniți punctele componentei verzi:

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

dctdnoiz
Reduceți zgomotul cadrelor folosind DCT 2D (filtrare în domeniul frecvenței).

Acest filtru nu este conceput pentru timp real.

Filtrul acceptă următoarele opțiuni:

sigma, s
Setați constanta sigma a zgomotului.

Acest sigma definește un prag dur de „3 * sigma”; fiecare coeficient DCT (absolut
valoare) sub acest prag cu fi abandonat.

Dacă aveți nevoie de o filtrare mai avansată, consultați expres.

Valoarea implicită este 0.

suprapune
Setați numărul de pixeli care se suprapun pentru fiecare bloc. Deoarece filtrul poate fi lent, este posibil
doresc să reducă această valoare, cu prețul unui filtru mai puțin eficient și cu riscul de
diverse artefacte.

Dacă valoarea de suprapunere nu permite procesarea întregii lățimi sau înălțimi de intrare, a
avertismentul va fi afișat și granițele corespunzătoare nu vor fi eliminate de zgomot.

Valoarea implicită este bloc-1, care este cea mai bună setare posibilă.

expr, e
Setați expresia factorului coeficient.

Pentru fiecare coeficient al unui bloc DCT, această expresie va fi evaluată ca un multiplicator
valoare pentru coeficient.

Dacă această opțiune este setată, sigma opțiunea va fi ignorată.

Valoarea absolută a coeficientului poate fi accesată prin intermediul c variabilă.

n Seteaza bloc folosind numărul de biți. „1<n" definește bloc, care este
lăţimea şi înălţimea blocurilor prelucrate.

Valoarea implicită este 3 (8x8) și poate fi ridicat la 4 pentru o bloc de 16x16. Notă
că schimbarea acestei setări are consecințe uriașe asupra vitezei de procesare. Deasemenea o
dimensiunea blocului mai mare nu înseamnă neapărat o mai bună dezgomot.

Exemple

Aplicați un dezgomot cu a sigma din 4.5:

dctdnoiz=4.5

Aceeași operație poate fi realizată folosind sistemul de expresie:

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

Dezgomot violent folosind o dimensiune de bloc de „16x16”:

dctdnoiz=15:n=4

deband
Eliminați artefactele de bandă din videoclipul de intrare. Funcționează prin înlocuirea pixelilor cu bandă
valoarea medie a pixelilor referiți.

Filtrul acceptă următoarele opțiuni:

1thr
2thr
3thr
4thr
Setați pragul de detectare a benzilor pentru fiecare plan. Implicit este 0.02. Intervalul valid este
0.00003 până la 0.5. Dacă diferența dintre pixelul curent și pixelul de referință este mai mică decât
prag, va fi considerat ca fiind cu bandă.

gama, r
Interval de detectare a benzilor în pixeli. Implicit este 16. Dacă este pozitiv, număr aleatoriu în interval
Se va folosi 0 pentru a seta valoarea. Dacă este negativ, se va folosi valoarea absolută exactă. The
intervalul definește pătratul de patru pixeli în jurul pixelului curent.

direcţie, d
Setați direcția în radiani de la care vor fi comparați patru pixeli. Dacă este pozitiv, aleatoriu
va fi selectată direcția de la 0 la direcția setată. Dacă este negativ, exact de valoare absolută
vor fi alese. De exemplu, direcția 0, -PI sau -2*PI radiani vor selecta doar pixeli
același rând și -PI/2 vor alege numai pixeli pe aceeași coloană.

estompare
Dacă este activat, pixelul actual este comparat cu valoarea medie a tuturor celor patru din jur
pixeli. Valoarea implicită este activată. Dacă este dezactivat, pixelul curent este comparat cu toți patru
pixelii din jur. Pixelul este considerat cu bandă dacă numai toate cele patru diferențe
pixelii din jur sunt mai mici decât pragul.

decima
Aruncă cadrele duplicate la intervale regulate.

Filtrul acceptă următoarele opțiuni:

ciclu
Setați numărul de cadre din care va fi aruncat unul. Setarea acestui lucru la N înseamnă unul
cadru în fiecare lot de N cadrele vor fi aruncate. Implicit este 5.

dupthresh
Setați pragul pentru detectarea dublelor. Dacă metrica diferenței pentru un cadru este
mai mică sau egală cu această valoare, atunci este declarată duplicat. Implicit este 1.1

scthresh
Setați pragul de schimbare a scenei. Implicit este 15.

blocx
blocat
Setați dimensiunea blocurilor pe axele x și y utilizate în timpul calculelor metrice. Mai mare
blocurile oferă o suprimare mai bună a zgomotului, dar oferă și o detectare mai proastă a micilor
miscarile. Trebuie să fie o putere a doi. Implicit este 32.

PPSRC.
Marcați intrarea principală ca intrare preprocesată și activați fluxul de intrare cu sursă curată. Acest
permite ca intrarea să fie preprocesată cu diferite filtre pentru a ajuta valorile
calcul, păstrând în același timp selecția cadrului fără pierderi. Când este setat la 1, primul
fluxul este pentru intrarea preprocesată, iar al doilea flux este sursa curată de la
unde se aleg ramele păstrate. Implicit este 0.

cromă
Setați dacă croma este luată în considerare sau nu în calculele metrice. Implicit este 1.

dezumfla
Aplicați efectul de dezumflare la videoclip.

Acest filtru înlocuiește pixelul cu local(3x3) medie luând în considerare numai
valori mai mici decât pixelul.

Acceptă următoarele opțiuni:

prag0
prag1
prag2
prag3
Limitați modificarea maximă pentru fiecare plan, implicit este 65535. Dacă 0, planul va rămâne
neschimbat.

dejudecător
Eliminați vibrațiile produse de conținutul telecined parțial întrețesut.

Judder poate fi introdus, de exemplu, prin trage filtru. Dacă sursa originală a fost
conținut parțial telecined, atunci rezultatul „pullup,dejudder” va avea o variabilă
rata de cadre. Poate modifica rata de cadre înregistrată a containerului. În afară de această schimbare,
acest filtru nu va afecta videoclipurile cu rată constantă de cadre.

Opțiunea disponibilă în acest filtru este:

ciclu
Specificați lungimea ferestrei peste care se repetă tremuratul.

Acceptă orice număr întreg mai mare de 1. Valorile utile sunt:

4 Dacă originalul a fost telecinizat de la 24 la 30 fps (Film la NTSC).

5 Dacă originalul a fost telecinizat de la 25 la 30 fps (PAL la NTSC).

20 Dacă un amestec al celor două.

Valoarea implicită este 4.

delogo
Suprimați sigla unui post TV printr-o simplă interpolare a pixelilor din jur. Doar setați un
dreptunghi care acoperă sigla și urmăriți-l cum dispare (și uneori ceva și mai urât
apar - kilometrajul dvs. poate varia).

Acceptă următorii parametri:

x
y Specificați coordonatele colțului din stânga sus al logo-ului. Ele trebuie specificate.

w
h Specificați lățimea și înălțimea logo-ului de șters. Ele trebuie specificate.

grup, t
Specificați grosimea marginii neclare a dreptunghiului (adăugat la w și h).
valoarea implicită este 4.

Arăta
Când este setat la 1, pe ecran este desenat un dreptunghi verde pentru a simplifica găsirea dreptului
x, y, w, și h parametrii. Valoarea implicită este 0.

Dreptunghiul este desenat pe cei mai exteriori pixeli care vor fi (parțial) înlocuiți cu
valori interpolate. Valorile următorilor pixeli imediat în afara acestui dreptunghi
în fiecare direcție va fi utilizat pentru a calcula valorile pixelilor interpolați în interiorul
dreptunghi.

Exemple

· Setați un dreptunghi care să acopere zona cu coordonatele colțului din stânga sus 0,0 și dimensiune
100x77 și o bandă de dimensiunea 10:

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

scutura
Încercați să remediați mici modificări ale deplasării orizontale și/sau verticale. Acest filtru ajută la eliminarea
tremuratul camerei de la ținerea în mână a unei camere, lovirea unui trepied, deplasarea pe un vehicul etc.

Filtrul acceptă următoarele opțiuni:

x
y
w
h Specificați o zonă dreptunghiulară în care să limitați căutarea vectorilor de mișcare. Dacă se dorește
căutarea vectorilor de mișcare poate fi limitată la o zonă dreptunghiulară a cadrului
definit de colțul din stânga sus, lățime și înălțime. Acești parametri au aceiași
adică filtrul drawbox care poate fi utilizat pentru a vizualiza poziția
casetă de încadrare.

Acest lucru este util atunci când mișcarea simultană a subiecților în cadru poate fi
confuz pentru mișcarea camerei de căutarea vectorului de mișcare.

Dacă oricare sau toate x, y, w și h sunt setate la -1, atunci se utilizează cadrul complet. Asta permite
opțiunile ulterioare să fie setate fără a specifica caseta de delimitare pentru vectorul de mișcare
căutare.

Implicit - căutați întregul cadru.

rx
ry Specificați gradul maxim de mișcare în direcțiile x și y în intervalul 0-64 pixeli.
Implicit 16.

margine
Specificați modul de generare a pixelilor pentru a umple spațiile libere de la marginea cadrului. Disponibil
valorile sunt:

gol, 0
Completați zerouri în locurile goale

originală, 1
Imagine originală în locuri goale

clema, 2
Valoarea marginii extrudate în locații goale

oglindă, 3
Margine în oglindă în locații goale

Valoarea implicită este oglindă.

bloc
Specificați dimensiunea blocului de utilizat pentru căutarea de mișcare. Interval 4-128 pixeli, implicit 8.

contrast
Specificați pragul de contrast pentru blocuri. Doar blocuri cu mai mult decât specificat
contrastul (diferența dintre cei mai întunecați și cei mai lumini pixeli) va fi luat în considerare. Gamă
1-255, implicit 125.

căutare
Specificați strategia de căutare. Valorile disponibile sunt:

exhaustiv, 0
Setați căutarea exhaustivă

Mai puțin, 1
Setați o căutare mai puțin exhaustivă.

Valoarea implicită este cuprinzător.

nume de fișier
Dacă este setat, în fișierul specificat este scris un jurnal detaliat al căutării de mișcare.

opencl
Dacă este setat la 1, specificați utilizarea capabilităților OpenCL, disponibile numai dacă FFmpeg a fost
configurat cu „--enable-opencl”. Valoarea implicită este 0.

detelecine
Aplicați o inversă exactă a operațiunii telecine. Este nevoie de un model predefinit
specificat folosind opțiunea de model care trebuie să fie aceeași cu cea transmisă la telecine
filtru.

Acest filtru acceptă următoarele opțiuni:

primul_câmp
top, t
câmpul de sus mai întâi

jos, b
câmpul de jos primul Valoarea implicită este „sus”.

model
Un șir de numere care reprezintă modelul derulant pe care doriți să îl aplicați. Implicit
valoarea este 23.

start_frame
Un număr care reprezintă poziția primului cadru față de telecine
model. Acesta trebuie utilizat dacă fluxul este tăiat. Valoarea implicită este 0.

dilatare
Aplicați efect de dilatare videoclipului.

Acest filtru înlocuiește pixelul cu local(3x3) maxim.

Acceptă următoarele opțiuni:

prag0
prag1
prag2
prag3
Limitați modificarea maximă pentru fiecare plan, implicit este 65535. Dacă 0, planul va rămâne
neschimbat.

coordonatele
Flag care specifică pixelul la care se face referire. Implicit este 255, adică toți cei opt pixeli sunt
folosit.

Semnalează hărți cu coordonate locale 3x3, astfel:

1 2 3
4 5
6 7 8

cutie de tragere
Desenați o casetă colorată pe imaginea de intrare.

Acceptă următorii parametri:

x
y Expresiile care specifică coordonatele colțului din stânga sus al casetei. Este implicit
la 0.

lățime, w
înălţime, h
Expresiile care specifică lățimea și înălțimea casetei; dacă 0 sunt
interpretată ca lățimea și înălțimea de intrare. Este implicit la 0.

culoare, c
Specificați culoarea casetei de scris. Pentru sintaxa generală a acestei opțiuni, bifați
secțiunea „Culoare” din manualul ffmpeg-utils. Dacă se utilizează valoarea specială „invers”,
culoarea marginii casetei este aceeași cu cea a videoclipului cu lumina inversată.

grosime, t
Expresia care stabilește grosimea marginii cutiei. Valoarea implicită este 3.

Vezi mai jos lista constantelor acceptate.

Parametrii pentru x, y, w și h și t sunt expresii care conțin următoarele constante:

da Raportul de aspect al afișajului de intrare, este același cu (w / h) * SAR.

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

in_h, ih
în W, iw
Lățimea și înălțimea de intrare.

SAR Raportul de aspect al eșantionului de intrare.

x
y Coordonatele decalajului x și y unde este desenată caseta.

w
h Lățimea și înălțimea casetei desenate.

t Grosimea cutiei desenate.

Aceste constante permit x, y, w, h și t expresii pentru a se referi unul la altul, deci tu
poate specifica, de exemplu, „y=x/dar” sau „h=w/dar”.

Exemple

· Desenați o casetă neagră în jurul marginii imaginii de intrare:

cutie de tragere

· Desenați o casetă cu culoarea roșie și o opacitate de 50%:

drawbox=10:20:200:60:[e-mail protejat]

Exemplul anterior poate fi specificat ca:

drawbox=x=10:y=20:w=200:h=60:color=[e-mail protejat]

· Umpleți cutia cu culoarea roz:

drawbox=x=10:y=10:w=100:h=100:color=[e-mail protejat]:t=max

· Desenați o mască roșie de 2 pixeli 2.40:1:

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

desen grafic, adrawgraph
Desenați un grafic folosind metadate video sau audio de intrare.

Acceptă următorii parametri:

m1 Setați prima cheie pentru metadate cadru din care valorile metadatelor vor fi folosite pentru a desena un grafic.

fg1 Setați prima expresie a culorii primului plan.

m2 Setați cheia de metadate a celui de-al doilea cadru din care valorile metadatelor vor fi folosite pentru a desena un grafic.

fg2 Setați a doua expresie de culoare în prim-plan.

m3 Setați al treilea cadru cheie de metadate din care valorile metadatelor vor fi folosite pentru a desena un grafic.

fg3 Setați a treia expresie de culoare în prim-plan.

m4 Setați a 4-a cheie de metadate cadru din care valorile metadatelor vor fi folosite pentru a desena un grafic.

fg4 Setați a patra expresie de culoare în prim-plan.

minute Setați valoarea minimă a valorii metadatelor.

max Setați valoarea maximă a valorii metadatelor.

bg Setați culoarea de fundal a graficului. Implicit este alb.

mod
Setați modul grafic.

Valorile disponibile pentru mod sunt:

bar
punct
linie

Implicit este „line”.

aluneca
Setați modul slide.

Valorile disponibile pentru slide sunt:

cadru
Desenați un nou cadru când se ajunge la marginea dreaptă.

înlocui
Înlocuiți coloanele vechi cu altele noi.

derulaţi
Derulați de la dreapta la stânga.

rscroll
Derulați de la stânga la dreapta.

Implicit este „cadru”.

mărimea
Setați dimensiunea videoclipului grafic. Pentru sintaxa acestei opțiuni, verificați "Video mărimea" secțiune
in il ffmpeg-utils manual. Valoarea implicită este „900x256”.

Expresiile de culoare din prim-plan pot folosi următoarele variabile:

MIN Valoarea minimă a valorii metadatelor.

MAX Valoarea maximă a valorii metadatelor.

VAL Valoarea actuală a cheii metadatelor.

Culoarea este definită ca 0xAABBGGRR.

Exemplu de utilizare a metadatelor de la statistici de semnal filtru:

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

Exemplu de utilizare a metadatelor de la ebur128 filtru:

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

grilă de tragere
Desenați o grilă pe imaginea de intrare.

Acceptă următorii parametri:

x
y Expresiile care specifică coordonatele unui punct de intersecție a grilei
(destinat să configureze offset). Ambele sunt implicite la 0.

lățime, w
înălţime, h
Expresiile care specifică lățimea și înălțimea celulei grilei, dacă sunt 0
interpretată ca lățimea și, respectiv, înălțimea de intrare minus „grosime”, deci imagine
se încadrează. Implicit la 0.

culoare, c
Specificați culoarea grilei. Pentru sintaxa generală a acestei opțiuni, bifați
Secțiunea „Culoare” din manualul ffmpeg-utils. Dacă se folosește valoarea specială „invers”, se folosește
culoarea grilei este aceeași cu cea a videoclipului cu lumina inversată.

grosime, t
Expresia care stabilește grosimea liniei grilei. Valoarea implicită este 1.

Vezi mai jos lista constantelor acceptate.

Parametrii pentru x, y, w și h și t sunt expresii care conțin următoarele constante:

da Raportul de aspect al afișajului de intrare, este același cu (w / h) * SAR.

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

in_h, ih
în W, iw
Lățimea și înălțimea celulei grilei de intrare.

SAR Raportul de aspect al eșantionului de intrare.

x
y Coordonatele x și y ale unui punct de intersecție a grilei (menite să configureze
decalaj).

w
h Lățimea și înălțimea celulei desenate.

t Grosimea celulei desenate.

Aceste constante permit x, y, w, h și t expresii pentru a se referi unul la altul, deci tu
poate specifica, de exemplu, „y=x/dar” sau „h=w/dar”.

Exemple

· Desenați o grilă cu celulă 100x100 pixeli, grosimea 2 pixeli, cu culoarea roșie și un
opacitate de 50%:

drawgrid=latime=100:inaltime=100:grosime=2:culoare=[e-mail protejat]

· Desenați o grilă albă 3x3 cu o opacitate de 50%:

drawgrid=w=iw/3:h=ih/3:t=2:c=[e-mail protejat]

desen text
Desenați un șir de text sau un text dintr-un fișier specificat deasupra unui videoclip, folosind libfreetype
bibliotecă.

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu
„--enable-libfreetype”. Pentru a activa fontul de rezervă implicit și font opțiunea de care aveți nevoie
configurați FFmpeg cu „--enable-libfontconfig”. Pentru a activa modelare_text opțiune, tu
trebuie să configurați FFmpeg cu „--enable-libfribidi”.

Sintaxă

Acceptă următorii parametri:

cutie Folosit pentru a desena o casetă în jurul textului folosind culoarea de fundal. Valoarea trebuie să fie fie 1
(activare) sau 0 (dezactivare). Valoarea implicită a cutie este 0.

boxborderw
Setați lățimea chenarului pentru a fi desenat în jurul casetei folosind culoarea cutiei. Implicit
Valoarea boxborderw este 0.

culoarea cutiei
Culoarea care va fi folosită pentru desenarea casetei în jurul textului. Pentru sintaxa acestei opțiuni, verificați
secțiunea „Culoare” din manualul ffmpeg-utils.

Valoarea implicită a culoarea cutiei este alb".

frontierw
Setați lățimea chenarului care urmează să fie desenat în jurul textului folosind culoarea chenarului.
valoarea implicită a frontierw este 0.

culoarea chenarului
Setați culoarea care va fi folosită pentru desenarea chenarului în jurul textului. Pentru sintaxa acesteia
opțiunea, verificați secțiunea „Culoare” din manualul ffmpeg-utils.

Valoarea implicită a culoarea chenarului este negru".

expansiune
Selectați modul în care a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. este extins. Poate fi fie „none”, „strftime” (învechit) sau
„normal” (implicit). Vezi drawtext_expansion, Text expansiune secțiunea de mai jos pentru
Detalii.

fix_bounds
Dacă este adevărat, verificați și remediați coordonatele textului pentru a evita tăierea.

fontcolor
Culoarea care trebuie utilizată pentru desenarea fonturilor. Pentru sintaxa acestei opțiuni, verificați
Secțiunea „Culoare” din manualul ffmpeg-utils.

Valoarea implicită a fontcolor este negru".

fontcolor_expr
Șir care este extins în același mod ca a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. pentru a obține dinamic fontcolor valoare. De
implicit, această opțiune are valoare goală și nu este procesată. Când această opțiune este setată, aceasta
suprascrie fontcolor opțiune.

font
Familia de fonturi care va fi folosită pentru desenarea textului. Implicit Sans.

fontfile
Fișierul fontului care va fi utilizat pentru desenarea textului. Calea trebuie inclusă. Acest parametru
este obligatoriu dacă suportul fontconfig este dezactivat.

a desena
Această opțiune nu există, vă rugăm să consultați sistemul cronologic

alfa
Desenați textul aplicând amestecarea alfa. Valoarea poate fi fie un număr între 0.0
și 1.0 Expresia acceptă aceleași variabile x, y do. Valoarea implicită este 1.
Vă rugăm să vedeți fontcolor_expr

marimea fontului
Dimensiunea fontului care va fi folosit pentru desenarea textului. Valoarea implicită a marimea fontului este 16.

modelare_text
Dacă setați la 1, încercați să modelați textul (de exemplu, inversați ordinea de la dreapta la
stânga textul și alătura caracterelor arabe) înainte de a-l desena. În caz contrar, desenați doar
text exact așa cum este dat. Implicit 1 (dacă este acceptat).

ft_load_flags
Steaguri care vor fi utilizate pentru încărcarea fonturilor.

Steagurile mapează steagurile corespunzătoare suportate de libfreetype și sunt o combinație
dintre următoarele valori:

lipsă
no_scale
fără_suzie
randament
no_bitmap
vertical_layout
force_autohint
crop_bitmap
pedant
ignore_global_advance_width
fara_recurs
ignore_transform
monocrom
design_liniar
no_autohint

Valoarea implicită este „implicit”.

Pentru mai multe informații, consultați documentația pentru steagurile FT_LOAD_* libfreetype.

culoarea umbrei
Culoarea care va fi folosită pentru a desena o umbră în spatele textului desenat. Pentru sintaxa lui
această opțiune, verificați secțiunea „Culoare” din manualul ffmpeg-utils.

Valoarea implicită a culoarea umbrei este negru".

shadowx
întunecos
Decalajele x și y pentru poziția umbrei textului în raport cu poziția
text. Acestea pot fi valori pozitive sau negative. Valoarea implicită pentru ambele este
„0”.

număr_început
Numărul de cadru de început pentru variabila n/frame_num. Valoarea implicită este „0”.

dimensiunea filelor
Dimensiunea în număr de spații de utilizat pentru redarea filei. Valoarea implicită este 4.

timecode
Setați reprezentarea inițială a codului de timp în format „hh:mm:ss[:;.]ff”. Poate fi folosit
cu sau fără parametru text. timecode_rate trebuie specificată opțiunea.

timecode_rate, rată, r
Setați rata de cadre a codului de timp (numai codul de timp).

a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match.
Șirul de text care urmează să fie desenat. Textul trebuie să fie o secvență de caractere codificate UTF-8.
Acest parametru este obligatoriu dacă nu este specificat niciun fișier împreună cu parametrul fisier text.

fisier text
Un fișier text care conține text de desenat. Textul trebuie să fie o secvență codificată UTF-8
caractere.

Acest parametru este obligatoriu dacă nu este specificat niciun șir de text împreună cu parametrul a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. .

Dacă ambele a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. și fisier text sunt specificate, este aruncată o eroare.

reincarca
Dacă este setat la 1, fisier text va fi reîncărcat înainte de fiecare cadru. Asigurați-vă că îl actualizați
atomic sau poate fi citit parțial sau chiar eșua.

x
y Expresiile care specifică decalajele în care textul va fi desenat în videoclip
cadru. Ele sunt relativ la marginea de sus/stânga a imaginii de ieșire.

Valoarea implicită a x și y este „0”.

Vezi mai jos lista de constante și funcții acceptate.

Parametrii pentru x și y sunt expresii care conțin următoarele constante și
funcţii:

da raportul de aspect al afișajului de intrare, este același cu (w / h) * SAR

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

linia_h, lh
înălțimea fiecărei linii de text

main_h, h, H
înălțimea de intrare

main_w, w, W
lățimea de intrare

max_glyph_a, ascensiune
distanța maximă de la linia de bază până la cea mai înaltă/superioară coordonată a grilei
plasați un punct de contur al glifului, pentru toate glifele redate. Este o valoare pozitivă, datorată
la orientarea grilei cu axa Y în sus.

max_glyph_d, coborâre
distanța maximă de la linia de bază până la cea mai joasă coordonată a grilei folosită pentru a plasa a
punct de contur al glifului, pentru toate glifele redate. Aceasta este o valoare negativă, din cauza
orientarea grilei, cu axa Y în sus.

max_glyph_h
înălțimea maximă a glifului, adică înălțimea maximă pentru toate glifele conținute în
text redat, este echivalent cu ascensiune - coborâre.

max_glyph_w
lățimea maximă a glifului, adică lățimea maximă pentru toate glifele conținute în
text redat

n numărul de cadre de intrare, începând de la 0

rand(min, max)
returnează un număr aleatoriu inclus între minute și max

SAR Raportul de aspect al eșantionului de intrare.

t marca temporală exprimată în secunde, NAN dacă marca temporală de intrare este necunoscută

text_h, th
înălțimea textului redat

text_w, tw
lățimea textului redat

x
y coordonatele de decalaj x și y unde este desenat textul.

Acești parametri permit x și y expresii pentru a se referi unul la altul, astfel încât să puteți pentru
exemplu specificați „y=x/dar”.

Text expansiune

If expansiune este setat la „strftime”, filtrul recunoaște strftime() secvențe în
textul furnizat și le extinde în consecință. Verificați documentația de strftime(). Acest
caracteristica este depreciată.

If expansiune este setat la „niciunul”, textul este tipărit text.

If expansiune este setat la „normal” (care este implicit), următorul mecanism de extindere
este folosit.

Caracterul backslash \, urmat de orice caracter, se extinde întotdeauna la al doilea
caracter.

Secvența de forma „%{...}” este extinsă. Textul dintre acolade este o funcție
nume, urmat eventual de argumente separate prin „:”. Dacă argumentele conţin special
caractere sau delimitatori (':' sau '}'), ar trebui să fie escape.

Rețineți că, probabil, trebuie să fie eliminate ca valoare pentru a) Sport and Nutrition Awareness Day in Manasia Around XNUMX people from the rural commune Manasia have participated in a sports and healthy nutrition oriented activity in one of the community’s sports ready yards. This activity was meant to gather, mainly, middle-aged people from a Romanian rural community and teach them about the benefits that sports have on both their mental and physical health and on how sporting activities can be used to bring people from a community closer together. Three trainers were made available for this event, so that the participants would get the best possible experience physically and so that they could have the best access possible to correct information and good sports/nutrition practices. b) Sports Awareness Day in Poiana Țapului A group of young participants have taken part in sporting activities meant to teach them about sporting conduct, fairplay, and safe physical activities. The day culminated with a football match. opțiune în
șir de argument de filtru și ca argument de filtru în descrierea graficului de filtru și
eventual și pentru carapace, care face până la patru niveluri de evadare; folosind un fișier text
evita aceste probleme.

Sunt disponibile următoarele funcții:

expr, e
Rezultatul evaluării expresiei.

Trebuie să fie nevoie de un argument care specifică expresia de evaluat, care acceptă
aceleași constante și funcții ca și x și y valorile. Rețineți că nu toate constantele ar trebui
poate fi folosit, de exemplu dimensiunea textului nu este cunoscută atunci când se evaluează expresia, deci
constant text_w și text_h va avea o valoare nedefinită.

expr_int_format, EIF
Evaluați valoarea și rezultatul expresiei ca întreg formatat.

Primul argument este expresia care trebuie evaluată, la fel ca și pentru expres Funcția.
Al doilea argument specifică formatul de ieșire. Valorile permise sunt x, X, d și u.
Ele sunt tratate exact ca în funcția „printf”. Al treilea parametru este opțional
și setează numărul de poziții luate de ieșire. Poate fi folosit pentru a adăuga umplutură
cu zerouri din stânga.

gmtime
Ora la care rulează filtrul, exprimată în UTC. Poate accepta un argument:
a strftime() șir de format.

ora locala
Ora la care rulează filtrul, exprimată în fusul orar local. Se poate
accepta un argument: a strftime() șir de format.

metadate
Metadatele cadru. Trebuie să ia un argument care specifică cheia de metadate.

n, cadru_num
Numărul cadrului, începând de la 0.

tip_pict
O descriere cu 1 caracter a tipului actual de imagine.

pct Marca temporală a cadrului curent. Poate dura până la două argumente.

Primul argument este formatul marcajului de timp; este implicit „flt” pentru secunde ca
un număr zecimal cu precizie de microsecunde; „hms” înseamnă un format
[-]HH:MM:SS.mmm marca temporală cu precizie în milisecunde.

Al doilea argument este un offset adăugat la marcajul de timp.

Exemple

· Desenați „Test Text” cu font FreeSerif, folosind valorile implicite pentru opțional
parametri.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test Text'"

· Desenați „Test Text” cu font FreeSerif de dimensiunea 24 la poziția x=100 și y=50 (numărând
din colțul din stânga sus al ecranului), textul este galben cu o casetă roșie în jurul lui. Ambii
textul și caseta au o opacitate de 20%.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Test text':\
x=100: y=50: fontsize=24: fontcolor=[e-mail protejat]: box=1: boxcolor=[e-mail protejat]"

Rețineți că ghilimelele duble nu sunt necesare dacă spațiile nu sunt folosite în interiorul
lista de parametri.

· Afișați textul în centrul cadrului video:

drawtext="fontsize=30:fontfile=FreeSerif.ttf:text='hello world':x=(w-text_w)/2:y=(h-text_h)/2"

· Afișați o linie de text care alunecă de la dreapta la stânga în ultimul rând al cadrului video. The
fişier LINIE LUNGA se presupune că conține o singură linie fără linii noi.

drawtext="fontsize=15:fontfile=FreeSerif.ttf:text=LONG_LINE:y=h-line_h:x=-50*t"

· Afișați conținutul fișierului CREDITE de pe partea de jos a cadrului și derulați în sus.

drawtext="fontsize=20:fontfile=FreeSerif.ttf:textfile=CREDITS:y=h-20*t"

· Desenați o singură literă verde „g”, în centrul videoclipului de intrare. Linia de bază a glifului
este plasat la jumătatea înălțimii ecranului.

drawtext="fontsize=60:fontfile=FreeSerif.ttf:fontcolor=green:text=g:x=(w-max_glyph_w)/2:y=h/2-ascent"

· Afișați text timp de 1 secundă la fiecare 3 secunde:

drawtext="fontfile=FreeSerif.ttf:fontcolor=white:x=100:y=x/dar:enable=lt(mod(t\,3)\,1):text='blink'"

· Utilizați fontconfig pentru a seta fontul. Rețineți că două puncte trebuie să fie scăpate.

drawtext='fontfile=Linux Libertine O-40\:style=Semibold:text=FFmpeg'

· Imprimați data unei codări în timp real (vezi strftime(3)):

drawtext='fontfile=FreeSans.ttf:text=%{localtime\:%a %b %d %Y}'

· Afișați textul care se estompează în interior și în afara (apar/dispare):

#!/ Bin / sh
DS=1.0 # începe afișare
DE=10.0 # sfârșit de afișare
FID=1.5 # durata estompării
FOD=5 # durata dispariției
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)*între(t\\, $DS\\, $DS + $FID) + (-(t - $DE) /$FOD)*între(t\\, $DE - $FOD\\, $DE) )\\, 0\\, 255) \\\\: x\\\\: 2 }"

Pentru mai multe informații despre libfreetype, verificați:http://www.freetype.org/>.

Pentru mai multe informații despre fontconfig, verificați:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

Pentru mai multe informații despre libfribidi, verificați:http://fribidi.org/>.

edgedetec
Detectează și desenează marginile. Filtrul folosește algoritmul Canny Edge Detection.

Filtrul acceptă următoarele opțiuni:

scăzut
înalt
Setați valorile de prag scăzute și ridicate utilizate de algoritmul de prag Canny.

Pragul înalt selectează pixelii de margine „puternici”, care sunt apoi conectați
8-conectivitate cu pixelii de margine „slabi” selectați de pragul scăzut.

scăzut și înalt valorile de prag trebuie alese în intervalul [0,1] și scăzut ar trebui să fie
mai mic sau egal cu înalt.

Valoarea implicită pentru scăzut este „20/255”, iar valoarea implicită pentru înalt este „50/255”.

mod
Definiți modul de desen.

fire
Desenați fire albe/gri pe fundal negru.

mix de culori
Amestecați culorile pentru a crea un efect de vopsea/desen animat.

Valoarea implicită este fire.

Exemple

· Detectare standard a marginilor cu valori personalizate pentru pragul histerezis:

edgedetect=low=0.1:high=0.4

· Efect de vopsire fără prag:

edgedetect=mode=colormix:high=0

eq
Setați luminozitatea, contrastul, saturația și ajustarea aproximativă a gama.

Filtrul acceptă următoarele opțiuni:

contrast
Setați expresia contrastului. Valoarea trebuie să fie o valoare flotantă în intervalul „-2.0” la 2.0.
Valoarea implicită este „0”.

strălucire
Setați expresia de luminozitate. Valoarea trebuie să fie o valoare flotantă în intervalul „-1.0” la 1.0.
Valoarea implicită este „0”.

saturaţie
Setați expresia de saturație. Valoarea trebuie să fie un float în intervalul 0.0 până la 3.0. The
valoarea implicită este „1”.

gamma
Setați expresia gamma. Valoarea trebuie să fie un float în intervalul 0.1 până la 10.0. Implicit
valoarea este „1”.

gamma_r
Setați expresia gamma pentru roșu. Valoarea trebuie să fie un float în intervalul 0.1 până la 10.0. The
valoarea implicită este „1”.

gama_g
Setați expresia gamma pentru verde. Valoarea trebuie să fie un float în intervalul 0.1 până la 10.0.
Valoarea implicită este „1”.

gama_b
Setați expresia gamma pentru albastru. Valoarea trebuie să fie un float în intervalul 0.1 până la 10.0. The
valoarea implicită este „1”.

gama_greutate
Setați expresia greutății gamma. Poate fi folosit pentru a reduce efectul unui gamma ridicat
valoare pe zonele luminoase ale imaginii, de exemplu, împiedicați-le să devină supraamplificate și pur și simplu
alb. Valoarea trebuie să fie un float în intervalul 0.0 până la 1.0. O valoare de 0.0 transformă gama
corectare până la capăt, în timp ce 1.0 îl lasă la putere maximă. Implicit este „1”.

eval
Setați când expresiile pentru luminozitate, contrast, saturație și expresii gamma
sunt evaluate.

Acceptă următoarele valori:

înăuntru
evaluează expresiile o singură dată în timpul inițializării filtrului sau când o comandă
este procesat

cadru
evaluați expresiile pentru fiecare cadru primit

Valoarea implicită este înăuntru.

Expresiile acceptă următorii parametri:

n numărul de cadre al cadrului de intrare începând de la 0

post poziția octetului pachetului corespunzător în fișierul de intrare, NAN dacă nu este specificat

r rata de cadre a videoclipului de intrare, NAN dacă rata de cadre de intrare este necunoscută

t marca temporală exprimată în secunde, NAN dacă marca temporală de intrare este necunoscută

Comenzi

Filtrul acceptă următoarele comenzi:

contrast
Setați expresia contrastului.

strălucire
Setați expresia de luminozitate.

saturaţie
Setați expresia de saturație.

gamma
Setați expresia gamma.

gamma_r
Setați expresia gamma_r.

gama_g
Setați expresia gamma_g.

gama_b
Setați expresia gamma_b.

gama_greutate
Setați expresia gama_weight.

Comanda acceptă aceeași sintaxă a opțiunii corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

eroziune
Aplicați efectul de eroziune videoclipului.

Acest filtru înlocuiește pixelul cu local(3x3) minim.

Acceptă următoarele opțiuni:

prag0
prag1
prag2
prag3
Limitați modificarea maximă pentru fiecare plan, implicit este 65535. Dacă 0, planul va rămâne
neschimbat.

coordonatele
Flag care specifică pixelul la care se face referire. Implicit este 255, adică toți cei opt pixeli sunt
folosit.

Semnalează hărți cu coordonate locale 3x3, astfel:

1 2 3
4 5
6 7 8

avioane de extragere
Extrageți componentele canalului de culoare din fluxul video de intrare într-un videoclip separat în tonuri de gri
fluxuri.

Filtrul acceptă următoarea opțiune:

avioane
Setați planul(e) de extras.

Valorile disponibile pentru avioane sunt:

y
u
v
a
r
g
b

Alegerea avioanelor care nu sunt disponibile în intrare va avea ca rezultat o eroare. Adica tu
nu pot selecta planurile „r”, „g”, „b” cu planurile „y”, „u”, „v” în același timp.

Exemple

· Extrageți componenta canalului de culoare luma, u și v din cadrul video de intrare în 3 tonuri de gri
ieșiri:

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
Aplicați un efect de posterizare folosind algoritmul ELBG (Enhanced LBG).

Pentru fiecare imagine de intrare, filtrul va calcula maparea optimă de la intrare la
ieșire având în vedere lungimea registrului de coduri, adică numărul de culori distincte de ieșire.

Acest filtru acceptă următoarele opțiuni.

codebook_length, l
Setați lungimea registrului de coduri. Valoarea trebuie să fie un număr întreg pozitiv și reprezintă numărul
de culori distincte de ieșire. Valoarea implicită este 256.

nb_step, n
Setați numărul maxim de iterații de aplicat pentru calcularea mapării optime. The
valoarea este mai mare, cu atât rezultatul este mai bun și timpul de calcul este mai mare. Mod implicit
valoarea este 1.

sămânță, s
Setați o sămânță aleatorie, trebuie să fie un număr întreg inclus între 0 și UINT32_MAX. Dacă nu
specificat sau dacă se setează în mod explicit la -1, filtrul va încerca să folosească o bază bună aleatorie
pe baza celui mai bun efort.

pal8
Setați formatul de pixeli de ieșire pal8. Această opțiune nu funcționează cu o lungime mai mare a registrului de coduri
mai mult de 256.

decolora
Aplicați un efect de fade-in/out la videoclipul de intrare.

Acceptă următorii parametri:

tip, t
Tipul de efect poate fi fie „in” pentru un fade-in, fie „out” pentru un efect de fade-out.
Implicit este „în”.

start_frame, s
Specificați numărul cadrului la care să începeți aplicarea efectului de estompare. Implicit este 0.

nb_frames, n
Numărul de cadre pe care le durează efectul de estompare. La sfârșitul efectului de fade-in,
video de ieșire va avea aceeași intensitate ca și video de intrare. La sfârșitul fade-ului
tranziția de ieșire, videoclipul de ieșire va fi umplut cu cele selectate culoare. Implicit este
25.

alfa
Dacă este setat la 1, estompați numai canalul alfa, dacă există unul pe intrare. Valoarea implicită este 0.

timpul de începere, st
Specificați marcajul de timp (în secunde) al cadrului pentru a începe să aplicați efectul de estompare. Dacă
sunt specificate atât start_frame, cât și start_time, estomparea va începe la oricare dintre acestea
ultimul. Implicit este 0.

durată, d
Numărul de secunde pentru care trebuie să dureze efectul de estompare. La sfârșitul fade-in-ului
efectul video de ieșire va avea aceeași intensitate ca și video de intrare, la sfârșitul
tranziția fade-out cu care videoclipul de ieșire va fi umplut selectat culoare. Dacă
sunt specificate atât durata cât și nb_frames, se folosește durata. Implicit este 0 (nb_frames
este folosit implicit).

culoare, c
Specificați culoarea decolorării. Implicit este „negru”.

Exemple

· Fade în primele 30 de cadre ale videoclipului:

fade=in:0:30

Comanda de mai sus este echivalentă cu:

fade=t=in:s=0:n=30

· Eliminați ultimele 45 de cadre ale unui videoclip cu 200 de cadre:

fade=out:155:45
fade=type=out:start_frame=155:nb_frames=45

· Se estompează în primele 25 de cadre și se estompează ultimele 25 de cadre ale unui videoclip de 1000 de cadre:

fade=in:0:25, fade=out:975:25

· Faceți primele 5 cadre galbene, apoi treceți din cadrul 5-24:

fade=in:5:20:culoare=galben

· Fade in alpha peste primele 25 de cadre ale videoclipului:

fade=in:0:25:alpha=1

· Faceți primele 5.5 secunde negre, apoi atenuați timp de 0.5 secunde:

fade=t=in:st=5.5:d=0.5

fftfilt
Aplicați expresii arbitrare mostrelor din domeniul frecvenței

dc_Y
Reglați valoarea dc (câștig) a planului luminos al imaginii. Filtrul acceptă un
valoare întreagă în intervalul 0 la 1000. Valoarea implicită este setată la 0.

dc_U
Reglați valoarea dc (câștig) a primului plan cromatic al imaginii. Filtrul acceptă un
valoare întreagă în intervalul 0 la 1000. Valoarea implicită este setată la 0.

dc_V
Reglați valoarea dc (câștig) al celui de-al doilea plan cromatic al imaginii. Filtrul acceptă un
valoare întreagă în intervalul 0 la 1000. Valoarea implicită este setată la 0.

cu greutate
Setați expresia ponderii domeniului de frecvență pentru planul luminos.

greutate_U
Setați expresia ponderii domeniului de frecvență pentru primul plan cromatic.

greutate_V
Setați expresia ponderii domeniului de frecvență pentru al 2-lea plan cromatic.

Filtrul acceptă următoarele variabile:

X
Y Coordonatele eșantionului curent.

W
H Lățimea și înălțimea imaginii.

Exemple

· Trecere inalta:

fftfilt=dc_Y=128:weight_Y='squish(1-(Y+X)/100)'

· trece-jos:

fftfilt=dc_Y=0:weight_Y='squish((Y+X)/100-1)'

· Ascutire:

fftfilt=dc_Y=0:weight_Y='1+squish(1-(Y+X)/100)'

camp
Extrageți un singur câmp dintr-o imagine întrețesată folosind aritmetica pasului pentru a evita pierderea
Timp CPU. Cadrele de ieșire sunt marcate ca neintercalate.

Filtrul acceptă următoarele opțiuni:

tip
Specificați dacă să extrageți partea de sus (dacă valoarea este 0 sau "sus") sau câmpul de jos
(dacă valoarea este 1 sau „de jos”).

meci de teren
Filtru de potrivire a câmpului pentru telecine inversă. Este menit să reconstruiască progresivul
cadre dintr-un flux telecined. Filtrul nu scapă cadre duplicate, așa că pentru a obține
un „fieldmatch” complet de telecine inversă trebuie să fie urmat de un filtru de decimare, cum ar fi
as decima în filtergraph.

Separarea potrivirii câmpului și decimarea este motivată în special de
posibilitatea de a introduce un filtru de de-interlacing fallback între cele două. Dacă sursa
are conținut mixt telecined și real întrețesut, „fieldmatch” nu se va putea potrivi
câmpuri pentru părțile întrețesute. Dar aceste rame pieptănate rămase vor fi marcate ca
întrețesat și, astfel, poate fi de-intercalat de un filtru ulterior, cum ar fi yadif înainte
decimare.

Pe lângă diferitele opțiuni de configurare, „fieldmatch” poate dura o secundă opțională
flux, activat prin intermediul PPSRC. opțiune. Dacă este activată, reconstrucția cadrelor va fi
pe baza câmpurilor și cadrelor din acest al doilea flux. Acest lucru permite să fie prima intrare
preprocesate pentru a ajuta diferiții algoritmi ai filtrului, păstrând în același timp
ieșire fără pierderi (presupunând că câmpurile sunt potrivite corect). De obicei, un domeniu conștient
denoiser sau ajustările de luminozitate/contrast pot ajuta.

Rețineți că acest filtru folosește aceiași algoritmi ca TIVTC/TFM (proiect AviSynth) și
VIVTC/VFM (proiect VapourSynth). Ultimul este o clonă ușoară a TFM din care „fieldmatch”
se bazeaza pe. În timp ce semantica și utilizarea sunt foarte apropiate, unele nume de comportament și opțiuni
poate diferi.

decima filtrul funcționează în prezent numai pentru intrarea cu frecvența de cadre constantă. Dacă intrarea dvs. are
Conținut mixt telecined (30fps) și progresiv cu un framerate mai mic, cum ar fi 24fps, folosește
următorul filterchain pentru a produce fluxul CFR necesar:
„dejudder,fps=30000/1001,fieldmatch,decimate”.

Filtrul acceptă următoarele opțiuni:

comandă
Specificați ordinea presupusă a câmpurilor a fluxului de intrare. Valorile disponibile sunt:

Auto
Detectare automată a parității (utilizați valoarea de paritate internă a FFmpeg).

BFF Presupuneți mai întâi câmpul de jos.

tff Să presupunem mai întâi câmpul de sus.

Rețineți că uneori se recomandă să nu aveți încredere în paritatea anunțată de flux.

Valoarea implicită este Auto.

mod
Setați modul de potrivire sau strategia de utilizat. pc modul este cel mai sigur în sensul că acesta
nu va risca să creeze sacadat din cauza cadrelor duplicate atunci când este posibil, dar dacă există
editări proaste sau câmpuri amestecate va ajunge să scoată cadre pieptănate atunci când o potrivire bună
ar putea exista de fapt. Pe de altă parte, pcn_ub modul este cel mai riscant din punct de vedere al
creând sacadat, dar aproape întotdeauna va găsi un cadru bun dacă există. The
alte valori sunt toate undeva la mijloc pc și pcn_ub în ceea ce priveşte riscul de sacadat
și crearea cadrelor duplicate în comparație cu găsirea potrivirilor bune în secțiuni cu editări proaste,
câmpuri orfane, câmpuri amestecate etc.

Mai multe detalii despre p/c/n/u/b sunt disponibile în p/c/n/u/b sens secţiune.

Valorile disponibile sunt:

pc Potrivire în două direcții (p/c)

pc_n
Potrivire în două direcții și încercarea celui de-al treilea meci dacă este încă pieptănat (p/c + n)

pc_u
Potrivire în două direcții și încercare a treia potrivire (aceeași ordine) dacă este încă pieptănat (p/c + u)

pc_n_ub
Potrivire în două direcții, încercând al 2-lea meci dacă este încă pieptănat și încercând al 3-lea/4-lea meci dacă
încă pieptănat (p/c + n + u/b)

pcn Potrivire în trei căi (p/c/n)

pcn_ub
potrivirea în trei direcții și încercarea de a 3-a/4-a meciuri dacă toate cele 5 potriviri originale sunt
detectat ca pieptănat (p/c/n + u/b)

Paranteza de la sfârșit indică potrivirile care ar fi folosite pentru acel mod
presupunând comandă=tff (Și camp on Auto or top).

În ceea ce privește viteza pc modul este de departe cel mai rapid și pcn_ub este cel mai lent.

Valoarea implicită este pc_n.

PPSRC.
Marcați fluxul de intrare principal ca intrare preprocesată și activați intrarea secundară
stream ca sursă curată din care să alegeți câmpurile. Vezi introducerea filtrului pentru
mai multe detalii. Este similar cu clip2 caracteristică de la VFM/TFM.

Valoarea implicită este 0 (dezactivată).

camp
Setați câmpul pentru a se potrivi de la. Este recomandat să setați aceasta la aceeași valoare ca comandă
cu excepția cazului în care întâmpinați eșecuri de potrivire cu acea setare. În anumite împrejurări
modificarea câmpului din care este folosit pentru potrivire poate avea un impact mare asupra potrivirii
performanţă. Valorile disponibile sunt:

Auto
Automat (aceeași valoare ca comandă).

de jos
Se potrivește din câmpul de jos.

top Meci din câmpul de sus.

Valoarea implicită este Auto.

mchroma
Setați dacă croma este inclusă sau nu în timpul comparațiilor meciurilor. În cele mai multe cazuri, acesta
se recomandă să lăsați acest lucru activat. Ar trebui să setați acest lucru la 0 numai dacă clipul dvs. are
probleme de croma proaste, cum ar fi curcubeul intens sau alte artefacte. Setând acest lucru la 0
ar putea fi folosit și pentru a accelera lucrurile cu prețul unei anumite precizie.

Valoarea implicită este 1.

y0
y1 Acestea definesc o bandă de excludere care exclude liniile dintre y0 și y1 din a fi
incluse în decizia de potrivire a câmpului. O bandă de excludere poate fi folosită pentru a ignora
subtitrări, o siglă sau alte lucruri care pot interfera cu potrivirea. y0 setează
pornind linia de scanare și y1 stabilește linia finală; toate liniile dintre ele y0 și y1
(Inclusiv y0 și y1) vor fi ignorate. Setare y0 și y1 la aceeași valoare va
dezactivați caracteristica. y0 și y1 implicit la 0.

scthresh
Setați pragul de detectare a schimbării scenei ca procent din modificarea maximă a lumii
avion. Valorile bune sunt în intervalul „[8.0, 14.0]”. Detectarea schimbării scenei este doar
relevante în caz chibrit de pieptene=sc. Gama pentru scthresh este „[0.0, 100.0]”.

Valoarea implicită este 12.0.

chibrit de pieptene
Cand combatch nu este nici unul, „fieldmatch” va ține cont de scorurile pieptănate ale
meciuri atunci când decideți ce meci să folosiți ca meci final. Valorile disponibile sunt:

nici unul
Nicio potrivire finală bazată pe scorurile pieptănate.

sc Scorurile pieptănate sunt folosite numai atunci când este detectată o schimbare a scenei.

Complet
Folosește scoruri pieptănate tot timpul.

Implicit este sc.

combdbg
Forțați „fieldmatch” să calculeze valorile pieptănate pentru anumite potriviri și să le imprime.
Această setare este cunoscută ca micout în vocabularul TFM/VFM. Valorile disponibile sunt:

nici unul
Fără calcul forțat.

pcn Forță calculele p/c/n.

pcnub
Forțați calculele p/c/n/u/b.

Valoarea implicită este nici unul.

cthresh
Acesta este pragul de pieptănare a zonei utilizat pentru detectarea cadrului pieptănat. Acest lucru în esență
controlează cât de „puternic” sau „vizibil” trebuie să fie detectat pieptănarea. Valori mai mari înseamnă
pieptănarea trebuie să fie mai vizibilă și valori mai mici înseamnă că pieptănarea poate fi mai puțin vizibilă sau
puternică și încă detectată. Setările valide sunt de la „-1” (fiecare pixel va fi
detectat ca pieptănat) la 255 (niciun pixel nu va fi detectat ca pieptănat). Acesta este practic un
valoarea diferenței de pixeli. Un interval bun este „[8, 12]”.

Valoarea implicită este 9.

cromă
Setează dacă croma este luată în considerare sau nu în decizia cadrului pieptănat. Doar dezactivați
asta dacă sursa ta are probleme de croma (curcubeu, etc.) care cauzează probleme
pentru detectarea cadrului pieptănat cu croma activată. De fapt, folosind cromă=0 is
de obicei mai fiabil, cu excepția cazului în care există doar pieptănarea cromatică în
sursă.

Valoarea implicită este 0.

blocx
blocat
Setați, respectiv, dimensiunea pe axa x și pe axa y a ferestrei utilizate în timpul cadrului pieptănat
detectare. Aceasta are de-a face cu dimensiunea zonei în care combpel pixelii sunt
trebuie să fie detectat ca pieptănat pentru ca un cadru să fie declarat pieptănat. Vezi combpel
descrierea parametrului pentru mai multe informații. Valorile posibile sunt orice număr care este o putere
din 2 începând de la 4 și mergând până la 512.

Valoarea implicită este 16.

combpel
Numărul de pixeli pieptănați din oricare dintre blocat by blocx blocuri de dimensiune pe
cadru pentru ca cadrul să fie detectat ca pieptănat. In timp ce cthresh controlează cât de „vizibil” este
pieptănarea trebuie să fie, această setare controlează „cât” pieptănare trebuie să fie în oricare
zonă localizată (o fereastră definită de blocx și blocat setări) pe cadru.
Valoarea minimă este 0 și maximă este „blocky x blockx” ( moment în care nu vor exista cadre
fi vreodată detectat ca pieptănat). Această setare este cunoscută ca MI în vocabularul TFM/VFM.

Valoarea implicită este 80.

p/c/n/u/b sens

p/c/n

Presupunem următorul flux telecined:

Câmpurile de sus: 1 2 2 3 4
Câmpurile de jos: 1 2 3 4 4

Numerele corespund cadrului progresiv la care se referă câmpurile. Iată, primele două
ramele sunt progresive, a 3-a și a 4-a sunt pieptănate și așa mai departe.

Când „fieldmatch” este configurat să ruleze o potrivire de jos (camp=de jos) asa se face
acest flux de intrare este transformat:

Flux de intrare:
T 1 2 2 3 4
B 1 2 3 4 4 <-- referință potrivită

Meciuri: ccnnc

Flux de ieșire:
T 1 2 3 4 4
B 1 2 3 4 4

Ca rezultat al potrivirii câmpurilor, putem vedea că unele cadre sunt duplicate. A efectua
un telecine complet invers, trebuie să te bazezi pe un filtru de decimare după această operație.
Vezi de exemplu decima filtru.

Aceeași operație se potrivește acum din câmpurile de sus (camp=top) arata asa:

Flux de intrare:
T 1 2 2 3 4 <-- referință de potrivire
B 1 2 3 4 4

Meciuri: ccppc

Flux de ieșire:
T 1 2 2 3 4
B 1 2 2 3 4

În aceste exemple, putem vedea ce p, c și n Rău; practic, se referă la cadru și
câmp de paritate opusă:

*<p se potrivește cu câmpul parității opuse din cadrul precedent>
*<c se potrivește cu câmpul parității opuse din cadrul curent>
*<n se potrivește cu câmpul parității opuse din cadrul următor>

u/b

u și b potrivirile sunt puțin speciale în sensul că se potrivesc din contra
steag de paritate. În exemplele următoare, presupunem că în prezent ne potrivim cu al 2-lea
cadru (Sus:2, jos:2). În funcție de meci, un „x” este plasat deasupra și sub fiecare
câmpuri potrivite.

Cu potrivire de jos (camp=de jos):

Meci: cpnbu

xxxxx
Top 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
De jos 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Cadre de ieșire:
2 1 2 2 2
2 2 2 1 3

Cu potrivire de sus (camp=top):

Meci: cpnbu

xxxxx
Top 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
De jos 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Cadre de ieșire:
2 2 2 1 2
2 1 3 2 2

Exemple

IVTC simplu al unui prim flux telecinizat din câmpul superior:

fieldmatch=order=tff:combmatch=none, decimați

IVTC avansat, cu alternativă activată yadif pentru rame încă pieptănate:

fieldmatch=order=tff:combmatch=full, yadif=deint=interlaced, decimate

comandă de teren
Transformați ordinea câmpurilor video de intrare.

Acceptă următorii parametri:

comandă
Ordinea câmpului de ieșire. Valorile valide sunt tff pentru câmpul de sus mai întâi sau BFF pentru fund
primul câmp.

Valoarea implicită este tff.

Transformarea se face prin deplasarea conținutului imaginii în sus sau în jos cu o linie și
umplerea rândului rămas cu conținut adecvat de imagine. Această metodă este consecventă
cu majoritatea convertizorilor de ordine de câmp de difuzare.

Dacă videoclipul de intrare nu este marcat ca fiind întrețesut sau este deja marcat ca fiind
din ordinea câmpului de ieșire necesară, atunci acest filtru nu modifică videoclipul primit.

Este foarte util atunci când convertiți la sau de la material PAL DV, care este primul câmp de jos.

De exemplu:

ffmpeg -i in.vob -vf "fieldorder=bff" out.dv

fifo
Memorați imaginile de intrare și trimiteți-le când sunt solicitate.

Este util în principal atunci când este inserat automat de cadrul libavfilter.

Nu ia parametri.

găsi_rect
Găsiți un obiect dreptunghiular

Acceptă următoarele opțiuni:

obiect
Calea fișierului imaginii obiect trebuie să fie în gri8.

prag
Pragul de detectare, implicit este 0.5.

mipmaps
Numărul de mipmaps, implicit este 3.

xmin, ymin, xmax, ymax
Specifică dreptunghiul în care se caută.

Exemple

· Generați o paletă reprezentativă a unui videoclip dat folosind FFMPEG:

FFMPEG -I FILE.TS-VF Find_RECT = NewRef.pgm, Cover_Rect = Cover.jpg: MODE = COVER NEW.MKV

cover_rect
Acoperiți un obiect dreptunghiular

Acceptă următoarele opțiuni:

acoperi
Calea fișierului pentru imaginea de copertă opțională, trebuie să fie în yuv420.

mod
Setați modul de acoperire.

Acceptă următoarele valori:

acoperi
acoperiți-l cu imaginea furnizată

estompare
acoperiți-l prin interpolarea pixelilor din jur

Valoarea implicită este estompare.

Exemple

· Generați o paletă reprezentativă a unui videoclip dat folosind FFMPEG:

FFMPEG -I FILE.TS-VF Find_RECT = NewRef.pgm, Cover_Rect = Cover.jpg: MODE = COVER NEW.MKV

format
Convertiți videoclipul de intrare într-unul dintre formatele de pixeli specificate. Libavfilter va încerca
alegeți unul care este potrivit ca intrare pentru următorul filtru.

Acceptă următorii parametri:

pix_fmts
O listă separată de „|” de nume de format de pixeli, cum ar fi „pix_fmts=yuv420p|monow|rgb24”.

Exemple

· Convertiți videoclipul de intrare în yuv420p format

format=pix_fmts=yuv420p

Convertiți videoclipul de intrare în oricare dintre formatele din listă

format=pix_fmts=yuv420p|yuv444p|yuv410p

FPS
Convertiți videoclipul la rata de cadre constantă specificată prin duplicarea sau eliminarea cadrelor ca
necesar.

Acceptă următorii parametri:

FPS Rata de cadre de ieșire dorită. Valoarea implicită este 25.

rotund
Metoda rotunjirii.

Valorile posibile sunt:

zero
zero rotund spre 0

INF rotunjire departe de la 0

jos
rotund spre -infinit

up rotund spre +infinit

aproape
rotunjit la cel mai apropiat

Valoarea implicită este „aproape”.

timpul de începere
Să presupunem că primul PTS ar trebui să fie valoarea dată, în secunde. Acest lucru permite
umplutură/tunderea la începutul fluxului. În mod implicit, nu se face nicio presupunere cu privire la
PTS așteptat pentru primul cadru, deci nu se efectuează nicio umplutură sau tăiere. De exemplu, aceasta
ar putea fi setat la 0 pentru a completa începutul cu duplicate ale primului cadru în cazul unui videoclip
fluxul începe după fluxul audio sau pentru a tăia orice cadre cu un PTS negativ.

Alternativ, opțiunile pot fi specificate ca șir plat: FPS[:rotund].

Consultați și setpts filtru.

Exemple

· O utilizare tipică pentru a seta fps-ul la 25:

fps=fps=25

· Setează fps-ul la 24, folosind metoda de abreviere și rotunjire pentru a rotunji la cel mai apropiat:

fps=fps=film:round=aproape

pachet de cadru
Împachetați două fluxuri video diferite într-un videoclip stereoscopic, activând metadatele corespunzătoare
codecuri acceptate. Cele două vizualizări ar trebui să aibă aceeași dimensiune și aceeași viteză de cadre și procesare
se va opri când videoclipul mai scurt se termină. Vă rugăm să rețineți că puteți ajusta în mod convenabil vizualizarea
proprietăți cu scară și FPS Filtre.

Acceptă următorii parametri:

format
Formatul de ambalare dorit. Valorile acceptate sunt:

sbs Vizualizările sunt una lângă alta (implicit).

fila Vederile sunt una peste alta.

linii
Vederile sunt pline pe rând.

coloane
Vizualizările sunt împachetate pe coloană.

frameseq
Vederile sunt intercalate temporal.

Cateva exemple:

# Convertiți vizualizările din stânga și din dreapta într-un videoclip secvenţial cu cadre
ffmpeg -i STÂNGA -i DREAPTA -filter_complex framepack=frameseq OUTPUT

# Convertiți vizualizările într-un videoclip alăturat cu aceeași rezoluție de ieșire ca și intrare
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 IEȘIRE

rata de cadre
Modificați rata de cadre prin interpolarea cadrelor noi de ieșire video din cadrele sursă.

Acest filtru nu este proiectat să funcționeze corect cu medii întrețesute. Dacă vrei
modificați rata de cadre a media intercalată, apoi vi se cere să dezintercalați înainte de aceasta
se filtrează și se reintercalează după acest filtru.

Urmează o descriere a opțiunilor acceptate.

FPS Specificați cadrele de ieșire pe secundă. Această opțiune poate fi specificată și ca valoare
singur. Valoarea implicită este 50.

interp_start
Specificați începutul unui interval în care cadrul de ieșire va fi creat ca liniar
interpolarea a două cadre. Intervalul este [0-255], valoarea implicită este 15.

interp_end
Specificați sfârșitul unui interval în care cadrul de ieșire va fi creat ca liniar
interpolarea a două cadre. Intervalul este [0-255], valoarea implicită este 240.

scenă
Specificați nivelul la care o schimbare de scenă este detectată ca valoare între 0 și 100 to
indica o noua scena; o valoare scăzută reflectă o probabilitate scăzută pentru cadrul curent
introduceți o scenă nouă, în timp ce o valoare mai mare înseamnă că cadrul curent este mai probabil să o facă
fii unul. Valoarea implicită este 7.

steaguri
Specificați steaguri care influențează procesul de filtrare.

Valoare disponibila pentru steaguri este:

scene_change_detect, scd
Activați detectarea schimbării scenei utilizând valoarea opțiunii scenă. Acest steag este
activat implicit.

pas de cadru
Selectați un cadru la fiecare al N-a cadru.

Acest filtru acceptă următoarea opțiune:

pas
Selectați cadrul după fiecare „pas” cadre. Valorile permise sunt numere întregi pozitive mai mari
decât 0. Valoarea implicită este 1.

frei0r
Aplicați un efect frei0r la videoclipul de intrare.

Pentru a activa compilarea acestui filtru, trebuie să instalați antetul frei0r și
configurați FFmpeg cu „--enable-frei0r”.

Acceptă următorii parametri:

nume_filtru
Numele efectului frei0r de încărcat. Dacă variabila de mediu FREI0R_PATH is
definit, efectul frei0r este căutat în fiecare dintre directoarele specificate de
listă separată prin două puncte în FREIOR_PATH. În caz contrar, căile frei0r standard sunt
căutat, în această ordine: HOME/.frei0r-1/lib/, /usr/local/lib/frei0r-1/,
/usr/lib/frei0r-1/.

filter_params
O listă de parametri separați prin „|” care să fie transferați efectului frei0r.

Un parametru de efect frei0r poate fi un boolean (valoarea sa este fie „y”, fie „n”), un dublu, a
culoare (specificată ca R/G/B, În cazul în care R, G, și B sunt numere în virgulă mobilă între 0.0 și
1.0, inclusiv) sau printr-o descriere a culorii specificată în secțiunea „Culoare” din ffmpeg-
manual de utilizare), o poziție (specificată ca X/Y, În cazul în care X și Y sunt numere în virgulă mobilă)
și/sau un șir.

Numărul și tipurile de parametri depind de efectul încărcat. Dacă un parametru de efect este
nu este specificată, valoarea implicită este setată.

Exemple

· Aplicați efectul distort0r, setând primii doi parametri dubli:

frei0r=filter_name=distort0r:filter_params=0.5|0.01

· Aplicați efectul de distanță de culoare, luând o culoare ca prim parametru:

frei0r=colordistance:0.2/0.3/0.4
frei0r=colordistance:violet
frei0r=colordistance:0x112233

· Aplicați efectul de perspectivă, specificând pozițiile imaginii sus stânga și sus dreapta:

frei0r=perspective:0.2/0.2|0.8/0.2

Pentru mai multe informații, vezihttp://frei0r.dyne.org>

fspp
Aplicați o postprocesare simplă și rapidă. Este o versiune mai rapidă a spp.

Împarte (I)DCT în treceri orizontale/verticale. Spre deosebire de simpla post-procesare
filtru, unul dintre ele se realizează o dată pe bloc, nu pe pixel. Acest lucru permite mult
viteza mai mare.

Filtrul acceptă următoarele opțiuni:

calitate
Setați calitatea. Această opțiune definește numărul de niveluri pentru mediere. Acceptă o
întreg în intervalul 4-5. Valoarea implicită este 4.

qp Forțați un parametru de cuantizare constant. Acceptă un număr întreg în intervalul 0-63. Dacă nu
setat, filtrul va folosi QP-ul din fluxul video (dacă este disponibil).

rezistenţă
Setați puterea filtrului. Acceptă un număr întreg în intervalul de la -15 la 32. Valorile mai mici înseamnă mai mult
detalii dar și mai multe artefacte, în timp ce valorile mai mari fac imaginea mai fină dar și
mai neclară. Valoarea implicită este 0 X PSNR optim.

use_bframe_qp
Activați utilizarea QP din cadrul B-Frames dacă este setată la 1. Utilizarea acestei opțiuni poate cauza
pâlpâie, deoarece cadrele B au adesea QP mai mare. Implicit este 0 (nu este activat).

geq
Filtrul acceptă următoarele opțiuni:

lum_expr, lum
Setați expresia de luminanță.

cb_expr, cb
Setați expresia albastră de crominanță.

cr_expr, cr
Setați expresia roșie de crominanță.

alpha_expr, a
Setați expresia alfa.

expres_roșu, r
Setați expresia roșie.

expres_verde, g
Setați expresia verde.

albastru_expr, b
Setați expresia albastră.

Spațiul de culoare este selectat în funcție de opțiunile specificate. Dacă unul dintre lum_expr,
cb_expr, Sau cr_expr este specificată opțiunile, filtrul va selecta automat un YCbCr
spațiu de culoare. Dacă unul dintre red_expr, verde_expr, Sau albastru_expr opțiunile sunt specificate, va fi
selectați un spațiu de culoare RGB.

Dacă una dintre expresiile de crominanță nu este definită, aceasta revine pe cealaltă. Daca nu
expresia alfa este specificată, aceasta va fi evaluată la o valoare opace. Dacă nici unul de crominanţă
sunt specificate expresii, acestea se vor evalua la expresia de luminanță.

Expresiile pot folosi următoarele variabile și funcții:

N Numărul secvenţial al cadrului filtrat, începând de la 0.

X
Y Coordonatele eșantionului curent.

W
H Lățimea și înălțimea imaginii.

SW
SH Scala de lățime și înălțime în funcție de planul filtrat curent. Este raportul
între numărul de pixeli din planul luminos corespunzător și cei din planul curent. De exemplu
pentru YUV4:2:0 valorile sunt „1,1” pentru planul luminos și „0.5,0.5” pentru planurile cromatice.

T Timpul cadrului curent, exprimat în secunde.

p(x, y)
Returnează valoarea pixelului la locație (x,y) a planului curent.

lum(x, y)
Returnează valoarea pixelului la locație (x,y) a planului de luminanță.

cb(x, y)
Returnează valoarea pixelului la locație (x,y) din planul cromatic al diferenței de albastru.
Returnați 0 dacă nu există un astfel de avion.

cr(x, y)
Returnează valoarea pixelului la locație (x,y) din planul cromatic al diferenței de roșu.
Returnați 0 dacă nu există un astfel de avion.

r(x, y)
g(x, y)
b(x, y)
Returnează valoarea pixelului la locație (x,y) a componentei roșu/verde/albastru.
Returnează 0 dacă nu există o astfel de componentă.

alfa(x, y)
Returnează valoarea pixelului la locație (x,y) din planul alfa. Returnați 0 dacă există
nu este un astfel de avion.

Pentru funcții, dacă x și y sunt în afara zonei, valoarea va fi decupată automat la
marginea mai apropiată.

Exemple

· Întoarce imaginea pe orizontală:

geq=p(WX\,Y)

· Generați o undă sinusoidală bidimensională, cu unghiul „PI/3” și o lungime de undă de 100 pixeli:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· Generați o lumină în mișcare enigmatică:

nullsrc=s=256x256,geq=aleator(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

· Generați un efect de relief rapid:

format=gri,geq=lum_expr='(p(X,Y)+(256-p(X-4,Y-4)))/2'

· Modificați componentele RGB în funcție de poziția pixelului:

geq=r='X/W*r(X,Y)':g='(1-X/W)*g(X,Y)':b='(HY)/H*b(X,Y) )'

· Creați un gradient radial de aceeași dimensiune ca și intrarea (consultați, de asemenea, vinietă
filtru):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gauss(0) /gauss(0), format=gri

· Creați un gradient liniar pe care să îl utilizați ca mască pentru un alt filtru, apoi compuneți cu
acoperire. În acest exemplu, videoclipul va deveni treptat mai neclar de sus până
partea de jos a axei y așa cum este definită de gradientul liniar:

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][alfa]overlay" output.mp4

gradfun
Remediați artefactele de bandă care sunt uneori introduse în regiuni aproape plate prin
trunchiere la adâncimea de culoare de 8 biți. Interpolați gradienții care ar trebui să meargă unde sunt benzile
sunt, și le dither.

Este conceput doar pentru redare. Nu-l utilizați înainte de compresia cu pierderi, deoarece
compresia tinde să piardă dither-ul și să readucă benzile.

Acceptă următorii parametri:

rezistenţă
Cantitatea maximă cu care filtrul va schimba orice pixel. Acesta este, de asemenea,
prag pentru detectarea regiunilor aproape plane. Valorile acceptabile variază de la .51 la 64;
valoarea implicită este 1.2. Valorile în afara intervalului vor fi tăiate în intervalul valid.

rază
Cartierul la care să se potrivească gradientul. O rază mai mare face dente mai netede,
dar împiedică și filtrul să modifice pixelii din apropierea regiunilor detaliate.
Valorile acceptabile sunt 8-32; valoarea implicită este 16. Valorile în afara intervalului vor fi
tăiat la intervalul valid.

Alternativ, opțiunile pot fi specificate ca șir plat: rezistenţă[:rază]

Exemple

· Aplicați filtrul cu o putere de 3.5 și o rază de 8:

gradfun=3.5:8

· Specificați raza, omițând puterea (care va reveni la valoarea implicită):

gradfun=radius=8

Haldclut
Aplicați un Hald CLUT la un flux video.

Prima intrare este fluxul video de procesat, iar a doua este Hald CLUT. Hald
Intrarea CLUT poate fi o simplă imagine sau un flux video complet.

Filtrul acceptă următoarele opțiuni:

cel mai scurt
Forțați terminarea când se termină cea mai scurtă intrare. Implicit este 0.

repetlast
Continuați să aplicați ultimul CLUT după sfârșitul fluxului. O valoare de 0 dezactivează
filtru după ce ultimul cadru al CLUT este atins. Implicit este 1.

„haldclut” are, de asemenea, aceleași opțiuni de interpolare ca și lut3d (ambele filtre au același lucru
interne).

Mai multe informații despre Hald CLUT pot fi găsite pe site-ul web al lui Eskil Steenberg (Hald CLUT
autor) lahttp://www.quelsolaar.com/technology/clut.html>.

Workflow exemple

Flux video CLUT la jumătate

Generați un flux de identitate Hald CLUT modificat cu diferite efecte:

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

Notă: asigurați-vă că utilizați un codec fără pierderi.

Apoi folosește-l cu „haldclut” pentru a-l aplica pe un flux aleatoriu:

ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0][1] Haldclut' -t 20 mandelclut.mkv

Hald CLUT va fi aplicat primelor 10 secunde (durata de clut.nuc), apoi
cea mai recentă imagine a acelui flux CLUT va fi aplicată cadrelor rămase ale
pârâul „mandelbrot”.

Hald CLUT cu previzualizare

Un Hald CLUT ar trebui să fie o imagine pătrată a „Level*Level*Level” de
Pixeli „Nivel*Nivel*Nivel”. Pentru un anumit Hald CLUT, FFmpeg va selecta cel mai mare posibil
pătrat începând din stânga sus al imaginii. Pixelii de umplutură rămași (de jos sau
dreapta) vor fi ignorate. Această zonă poate fi folosită pentru a adăuga o previzualizare a Hald CLUT.

De obicei, următorul Hald CLUT generat va fi acceptat de filtrul „haldclut”:

ffmpeg -f lavfi -i B =8 -vf "
pad=iw+320 [padded_clut];
smptebars=s=320x256, split [a][b];
[padded_clut][a] overlay=W-320:h, curves=color_negative [principal];
[principal][b] overlay=W-320" -frames:v 1 clut.png

Conține originalul și o previzualizare a efectului CLUT: barele de culoare SMPTE sunt
afișate în partea dreaptă sus și sub aceleași bare de culoare procesate de modificările de culoare.

Apoi, efectul acestui Hald CLUT poate fi vizualizat cu:

ffplay input.mkv -vf „movie=clut.png, [în] haldclut”

hflip
Întoarceți videoclipul de intrare pe orizontală.

De exemplu, pentru a răsturna orizontal videoclipul de intrare cu FFMPEG:

ffmpeg -i in.avi -vf "hflip" out.avi

histeq
Acest filtru aplică o egalizare globală a histogramei de culoare pe bază de cadru.

Poate fi folosit pentru a corecta videoclipuri care au o gamă comprimată de intensități a pixelilor. The
filtrul redistribuie intensitățile pixelilor pentru a egaliza distribuția acestora pe tot
interval de intensitate. Poate fi văzut ca un „filtru de contrast cu reglare automată”. Acest
filtrul este util numai pentru corectarea sursă video degradată sau slab capturată.

Filtrul acceptă următoarele opțiuni:

rezistenţă
Determinați valoarea egalizării care trebuie aplicată. Pe măsură ce puterea este redusă,
distribuția intensităților pixelilor se apropie din ce în ce mai mult de cea a cadrului de intrare.
Valoarea trebuie să fie un număr flotant în intervalul [0,1] și este implicit 0.200.

intensitate
Setați intensitatea maximă care poate fi generată și scalați valorile de ieșire
în mod corespunzător. Forța ar trebui să fie setată după dorință și apoi intensitatea poate fi
limitat dacă este necesar pentru a evita spălarea. Valoarea trebuie să fie un număr flotant în interval
[0,1] și implicit la 0.210.

antibandare
Setați nivelul antibanding. Dacă este activat, filtrul va varia aleatoriu luminanța
emite pixeli cu o cantitate mică pentru a evita bandajarea histogramei. Valorile posibile sunt
„niciunul”, „slab” sau „puternic”. Este implicit „niciunul”.

histograma
Calculați și desenați o histogramă de distribuție a culorii pentru videoclipul de intrare.

Histograma calculată este o reprezentare a distribuției componentelor de culoare într-un
imagine.

Filtrul acceptă următoarele opțiuni:

mod
Setați modul histogramă.

Acceptă următoarele valori:

nivelurile de
Histograma standard care afișează distribuția componentelor de culoare într-o imagine.
Afișează graficul de culoare pentru fiecare componentă de culoare. Arată distribuția Y, U, V,
Componentele A sau R, G, B, în funcție de formatul de intrare, în cadrul curent. De mai jos
fiecare grafic este afișat un contor de scară a componentelor de culoare.

culoare
Afișează valorile cromatice (plasarea culorilor U/V) într-un grafic bidimensional (adică
numit vectorscop). Cu cât este mai luminos un pixel în vectorscop, cu atât mai mulți pixeli
cadrul de intrare corespunde acelui pixel (adică, mai mulți pixeli au această cromă
valoare). Componenta V este afișată pe axa orizontală (X), cu cea mai din stânga
latura fiind V = 0 iar latura cea mai dreaptă fiind V = 255. Componenta U este
afișat pe axa verticală (Y), cu partea de sus reprezentând U = 0 și partea de jos
reprezentând U = 255.

Poziția unui pixel alb în grafic corespunde valorii cromatice a lui a
pixelul clipului de intrare. Prin urmare, graficul poate fi folosit pentru a citi nuanța (culoare
aroma) și saturația (dominanța nuanței în culoare). Ca nuanta de
o culoare se schimbă, se mișcă în jurul pătratului. În centrul pieței
saturația este zero, ceea ce înseamnă că pixelul corespunzător nu are culoare. Dacă
cantitatea unei anumite culori este crescută (în timp ce celelalte culori rămân neschimbate)
saturația crește, iar indicatorul se deplasează spre marginea pătratului.

color2
Valorile cromatice în vectorscop, similare cu „culoarea”, dar valorile cromatice reale sunt
afișat.

forme de undă
Graficul componentelor de culoare pe rând/coloană. În modul rând, graficul din partea stângă
reprezintă valoarea componentei de culoare 0 iar partea dreaptă reprezintă valoarea = 255. În
modul coloană, partea de sus reprezintă valoarea componentei de culoare = 0 și partea de jos
reprezintă valoarea = 255.

Valoarea implicită este „niveluri”.

level_height
Setați înălțimea nivelului în „niveluri”. Valoarea implicită este 200. Intervalul permis este [50, 2048].

scară_înălțime
Setați înălțimea scalei de culori în „niveluri”. Valoarea implicită este 12. Intervalul permis este [0, 40].

pas
Setați pasul pentru modul „formă de undă”. Valorile mai mici sunt utile pentru a afla câte valori ale
aceeași luminanță este distribuită pe rândurile/coloanele de intrare. Valoarea implicită este 10.
Intervalul permis este [1, 255].

waveform_mode
Setați modul pentru „forma de undă”. Poate fi fie „rând”, fie „coloană”. Implicit este „rând”.

waveform_mirror
Setați modul de oglindire pentru „forma de undă”. 0 înseamnă neoglindit, 1 înseamnă oglindit. În oglindă
modul, valorile mai mari vor fi reprezentate în partea stângă pentru modul „rând” și în partea de sus
pentru modul „coloană”. Implicit este 0 (neoglindă).

modul de afișare
Setați modul de afișare pentru „forma de undă” și „niveluri”. Acceptă următoarele valori:

paradă
Afișați grafic separat pentru componentele de culoare una lângă alta în forma de undă „rând”.
sau unul sub celălalt în modul de formă de undă „coloană” pentru histograma „forma de undă”.
modul. Pentru modul histogramă „niveluri”, graficele pe componentă de culoare sunt plasate mai jos
fiecare.

Utilizarea acestui mod de afișare în modul histogramă „formă de undă” facilitează identificarea culorilor
aruncă luminile și umbrele unei imagini, comparând contururile imaginii
graficele de sus și de jos ale fiecărei forme de undă. Din moment ce albii, griii și negrii sunt
caracterizat prin cantități exacte egale de zone neutre de roșu, verde și albastru
imaginea ar trebui să afișeze trei forme de undă de lățime/înălțime aproximativ egală. Dacă nu,
corecția este ușor de efectuat prin ajustări de nivel ale celor trei forme de undă.

acoperire
Prezintă informații identice cu cele din „paradă”, cu excepția graficelor
componentele reprezentative de culoare sunt suprapuse direct una peste alta.

Acest mod de afișare în modul histogramă „formă de undă” facilitează identificarea relativă
diferențe sau asemănări în zonele suprapuse ale componentelor de culoare care sunt
ar trebui să fie identice, cum ar fi alb neutru, gri sau negru.

Implicit este „parada”.

levels_mode
Setați modul pentru „niveluri”. Poate fi fie „liniară”, fie „logaritmică”. Implicit este „liniar”.

componente
Setați ce componente de culoare să fie afișate pentru „niveluri” de mod. Implicit este 7.

Exemple

· Calculați și desenați histograma:

ffplay -i de intrare -vf histogramă

hqdn3d
Acesta este un filtru de dezgomot 3D de înaltă precizie/calitate. Are scopul de a reduce zgomotul imaginii,
producerea de imagini netede și realizarea de imagini statice cu adevărat nemișcate. Ar trebui să sporească
compresibilitatea.

Acceptă următorii parametri opționali:

luma_spatial
Un număr nenegativ în virgulă mobilă care specifică puterea lumii spațiale. Aceasta
implicit la 4.0.

chroma_spatial
Un număr nenegativ în virgulă mobilă care specifică puterea cromatică spațială. Aceasta
implicit la 3.0*luma_spatial/ 4.0.

luma_tmp
Un număr în virgulă mobilă care specifică puterea temporală a lumii. Este implicit
6.0 *luma_spatial/ 4.0.

chroma_tmp
Un număr în virgulă mobilă care specifică puterea cromatică temporală. Este implicit
luma_tmp*chroma_spatial/luma_spatial.

hqx
Aplicați un filtru de mărire de înaltă calitate conceput pentru pixel art. Acest filtru a fost
creat inițial de Maxim Stepin.

Acceptă următoarea opțiune:

n Setați dimensiunea de scalare: 2 pentru „hq2x”, 3 pentru „hq3x” și 4 pentru „hq4x”. Implicit este 3.

hstack
Stivuiți videoclipurile introduse pe orizontală.

Toate fluxurile trebuie să aibă același format de pixeli și aceeași înălțime.

Rețineți că acest filtru este mai rapid decât utilizarea acoperire și tampon filtru pentru a crea aceeași ieșire.

Filtrul acceptă următoarea opțiune:

nb_inputs
Setați numărul de fluxuri de intrare. Implicit este 2.

nuanţă
Modificați nuanța și/sau saturația intrării.

Acceptă următorii parametri:

h Specificați unghiul de nuanță ca număr de grade. Acceptă o expresie și este implicită
la „0”.

s Specificați saturația în intervalul [-10,10]. Acceptă o expresie și este implicit
„1”.

H Specificați unghiul de nuanță ca număr de radiani. Acceptă o expresie și este implicită
la „0”.

b Specificați luminozitatea în intervalul [-10,10]. Acceptă o expresie și este implicit
„0”.

h și H se exclud reciproc și nu pot fi specificate în același timp.

b, h, H și s valorile opțiunilor sunt expresii care conțin următoarele constante:

n numărul de cadre al cadrului de intrare începând de la 0

pct marca temporală de prezentare a cadrului de intrare exprimată în unități de bază de timp

r rata de cadre a videoclipului de intrare, NAN dacă rata de cadre de intrare este necunoscută

t marca temporală exprimată în secunde, NAN dacă marca temporală de intrare este necunoscută

tb baza de timp a videoclipului de intrare

Exemple

· Setați nuanța la 90 de grade și saturația la 1.0:

nuanță=h=90:s=1

· Aceeași comandă, dar exprimând nuanța în radiani:

nuanță=H=PI/2:s=1

· Rotiți nuanța și faceți ca saturația să oscileze între 0 și 2 pe o perioadă de 1 secundă:

hue="H=2*PI*t: s=sin(2*PI*t)+1"

· Aplicați un efect de fade-in cu saturație de 3 secunde începând de la 0:

hue="s=min(t/3\,1)"

Expresia generală fade-in poate fi scrisă ca:

hue="s=min(0\, max((t-START)/DURATION\, 1))"

· Aplicați un efect de estompare a saturației de 3 secunde începând cu 5 secunde:

hue="s=max(0\, min(1\, (8-t)/3))"

Expresia generală fade-out poate fi scrisă ca:

hue="s=max(0\, min(1\, (START+DURATION-t)/DURATION))"

Comenzi

Acest filtru acceptă următoarele comenzi:

b
s
h
H Modificați nuanța și/sau saturația și/sau luminozitatea videoclipului de intrare. The
comanda acceptă aceeași sintaxă a opțiunii corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

idet
Detectați tipul de întrețesere video.

Acest filtru încearcă să detecteze dacă cadrele de intrare sunt întrețesute, progresive, de sus sau de jos
primul câmp. De asemenea, va încerca să detecteze câmpurile care se repetă între cadrele adiacente
(un semn de telecine).

Detectarea unui singur cadru ia în considerare numai cadrele imediat adiacente atunci când le clasifică pe fiecare
cadru. Detectarea cadrelor multiple încorporează istoricul clasificării anterioare
rame.

Filtrul va înregistra aceste valori de metadate:

singur.cadru_curent
Tipul de cadru curent detectat utilizând detectarea unui singur cadru. Unul dintre: ``tff'' (sus
primul câmp), ``bff'' (câmpul de jos primul), ``progresiv'' sau ``nedeterminat''

singur.tff
Numărul cumulat de cadre detectate mai întâi ca câmp superior utilizând detectarea unui singur cadru.

multiple.tff
Numărul cumulat de cadre detectate ca câmp superior mai întâi utilizând cadre multiple
detectare.

singur.bff
Numărul cumulat de cadre detectate ca câmp de jos mai întâi folosind un singur cadru
detectare.

multiplu.cadru_curent
Tipul de cadru curent detectat utilizând detectarea mai multor cadre. Unul dintre: ``tff'' (sus
primul câmp), ``bff'' (câmpul de jos primul), ``progresiv'' sau ``nedeterminat''

multiple.bff
Numărul cumulat de cadre detectate ca câmp de jos mai întâi utilizând cadre multiple
detectare.

singur.progresiv
Numărul cumulat de cadre detectate ca progresive utilizând detectarea unui singur cadru.

multiplu.progresiv
Numărul cumulat de cadre detectate ca progresive utilizând detectarea mai multor cadre.

singur.nedeterminat
Număr cumulat de cadre care nu au putut fi clasificate utilizând detectarea unui singur cadru.

multiplu.nedeterminat
Număr cumulat de cadre care nu au putut fi clasificate folosind cadre multiple
detectare.

repetat.cadru_curent
Care câmp din cadrul curent se repetă de la ultimul. Unul dintre ``nici'',
``sus'' sau ``jos''.

repetate.nici
Număr cumulat de cadre fără câmp repetat.

repetate.top
Număr cumulat de cadre cu câmpul de sus repetat din partea de sus a cadrului anterior
camp.

repetate.jos
Număr cumulat de cadre cu câmpul de jos repetat de la cadrul precedent
câmpul de jos.

Filtrul acceptă următoarele opțiuni:

intl_thres
Setați pragul de întrețesere.

prog_thres
Setați un prag progresiv.

repeat_thres
Prag pentru detectarea repetată a câmpului.

jumătate de viață
Numărul de cadre după care contribuția unui cadru dat la statistici este înjumătățită
(adică contribuie doar cu 0.5 la clasificarea sa). Valoarea implicită a 0 înseamnă că
toate cadrele văzute au o greutate totală de 1.0 pentru totdeauna.

analizează_steagul_intercalat
Când acesta nu este 0, atunci idet va folosi numărul specificat de cadre pentru a determina dacă
steagul întrețesut este precis, nu va număra cadre nedeterminate. Dacă steagul
se găsește a fi precis, va fi folosit fără alte calcule, dacă este
găsit a fi inexact, va fi șters fără alte calcule. Acest
permite inserarea filtrului IDET ca metodă de calcul scăzută pentru curățarea
steag împletit

il
Deintercalare sau intercalare câmpuri.

Acest filtru permite procesarea câmpurilor de imagini întrețelate fără a le dezintercala.
Deinterleaving împarte cadrul de intrare în 2 câmpuri (așa-numitele jumătate de imagini). Rânduri ciudate
sunt mutate în jumătatea superioară a imaginii de ieșire, liniile egale în jumătatea inferioară. Puteți
procesează-le (filtrează-le) independent și apoi reintercalează-le.

Filtrul acceptă următoarele opțiuni:

luma_mode, l
chroma_mode, c
alfa_mode, a
Valori disponibile pentru luma_mode, chroma_mode și alfa_mode sunt:

nici unul
Nu face nimic.

deintercalare, d
Deintercalați câmpurile, plasând unul deasupra celuilalt.

intercalare, i
Intercalați câmpurile. Inversați efectul dezintercalării.

Valoarea implicită este „niciunul”.

luma_swap, ls
chroma_swap, cs
alpha_swap, as
Schimbați câmpurile luma/chroma/alfa. Schimbați linii pare și impare. Valoarea implicită este 0.

umfla
Aplicați efectul de umflare videoclipului.

Acest filtru înlocuiește pixelul cu local(3x3) medie luând în considerare numai
valori mai mari decât pixelul.

Acceptă următoarele opțiuni:

prag0
prag1
prag2
prag3
Limitați modificarea maximă pentru fiecare plan, implicit este 65535. Dacă 0, planul va rămâne
neschimbat.

împletit
Filtru simplu de întrețesere din conținut progresiv. Aceasta intercalează partea superioară (sau inferioară)
linii din cadre impare cu linii inferioare (sau superioare) din cadre pare, reducând la jumătate rata de cadre
și păstrarea înălțimii imaginii.

Cadru original original nou
Cadrul „j” Cadrul „j+1” (tff)
========== =========== ===================
Linia 0 --------------------> Cadrul „j” Linia 0
Linia 1 Linia 1 ----> Cadru „j+1” Linia 1
Linia 2 ---------------------> Cadrul „j” Linia 2
Linia 3 Linia 3 ----> Cadru „j+1” Linia 3
... ... ...
Cadrul nou + 1 va fi generat de Cadrul „j+2” și Cadrul „j+3” și așa mai departe

Acceptă următorii parametri opționali:

scanare
Aceasta determină dacă cadrul întrețesut este luat din par (tff - implicit) sau
linii impare (bff) ale cadrului progresiv.

trece jos
Activați (implicit) sau dezactivați filtrul vertical lowpass pentru a evita intercalarea Twitter
și reduce modelele moire.

kerndeint
Deinterlace video de intrare aplicând deinterlingul adaptiv al nucleului lui Donald Graft. Lucrați la
părți intercalate ale unui videoclip pentru a produce cadre progresive.

Urmează descrierea parametrilor acceptați.

treieră
Setați pragul care afectează toleranța filtrului atunci când determinați dacă este un pixel
linia trebuie procesată. Trebuie să fie un număr întreg în intervalul [0,255] și este implicit 10.
O valoare de 0 va avea ca rezultat aplicarea procesului pe fiecare pixel.

Hartă Pictează pixelii care depășesc valoarea de prag în alb dacă sunt setați la 1. Implicit este 0.

comandă
Setați ordinea câmpurilor. Schimbați câmpurile dacă este setat la 1, lăsați câmpurile în pace dacă 0. Implicit este 0.

ascuţit
Activați ascuțirea suplimentară dacă este setată la 1. Implicit este 0.

în două sensuri
Activați ascuțirea în două sensuri dacă este setată la 1. Implicit este 0.

Exemple

· Aplicați valorile implicite:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· Activați ascuțirea suplimentară:

kerndeint=sharp=1

· Pictează pixelii procesați în alb:

kerndeint=harta=1

corectarea lentilelor
Corectați distorsiunea radială a lentilei

Acest filtru poate fi utilizat pentru a corecta distorsiunile radiale, care pot rezulta din utilizarea
lentile cu unghi larg și, prin urmare, re-rectificați imaginea. Pentru a găsi parametrii potriviți se poate
utilizați instrumentele disponibile, de exemplu, ca parte a opencv sau pur și simplu încercare și eroare. A folosi
opencv folosește proba de calibrare (sub samples/cpp) din sursele opencv și extrage
coeficienții k1 și k2 din matricea rezultată.

Rețineți că, efectiv, același filtru este disponibil în instrumentele open-source Krita și
Digikam din proiectul KDE.

În contrast cu vinietă filtru, care poate fi folosit și pentru a compensa erorile lentilelor, aceasta
filtrul corectează distorsiunea imaginii, în timp ce vinietă corectează luminozitatea
distribuție, deci poate doriți să utilizați ambele filtre împreună în anumite cazuri, deși dvs
va trebui să se ocupe de comandă, adică dacă vignetarea trebuie aplicată înainte sau
după corectarea lentilelor.

Opţiuni

Filtrul acceptă următoarele opțiuni:

cx Coordonata X relativă a punctului focal al imaginii și, prin urmare, a centrului
deformare. Această valoare are un interval [0,1] și este exprimată ca fracții ale imaginii
lăţime.

cy Coordonata y relativă a punctului focal al imaginii și, prin urmare, a centrului
deformare. Această valoare are un interval [0,1] și este exprimată ca fracții ale imaginii
înălţime.

k1 Coeficientul termenului de corecție pătratică. 0.5 înseamnă nicio corecție.

k2 Coeficientul termenului de corecție dublu pătratică. 0.5 înseamnă nicio corecție.

Formula care generează corecția este:

r_src = r_tgt * (1 + k1 * (r_tgt / r_0)^2 + k2 * (r_tgt / r_0)^4)

Unde r_0 este jumătate din diagonala imaginii și r_src și r_tgt sunt distantele de la
punct focal în imaginile sursă și, respectiv, țintă.

lut3d
Aplicați un LUT 3D la un videoclip de intrare.

Filtrul acceptă următoarele opțiuni:

fişier
Setați numele fișierului 3D LUT.

Formate acceptate în prezent:

3dl Dupa efecte

cub
Iridas

DAT DaVinci

m3d Pandora

interp
Selectați modul de interpolare.

Valorile disponibile sunt:

cel mai apropiat
Utilizați valori din cel mai apropiat punct definit.

triliniar
Interpolați valori folosind cele 8 puncte care definesc un cub.

tetraedrică
Interpolați valori folosind un tetraedru.

lut, lutrgb, lutyuv
Calculați un tabel de căutare pentru a lega fiecare valoare de intrare a componentei pixelului la o valoare de ieșire,
și aplicați-l la videoclipul de intrare.

lutyuv aplică un tabel de căutare unui videoclip de intrare YUV, lutrgb la o intrare video RGB.

Aceste filtre acceptă următorii parametri:

c0 setați prima expresie a componentei pixelului

c1 setați a doua expresie a componentei pixelului

c2 setați expresia a treia componentă a pixelului

c3 setați a patra expresie a componentei pixelului, corespunde componentei alfa

r setați expresia componentei roșii

g setați expresia componentei verzi

b setați expresia componentei albastre

a expresia componentei alfa

y setați expresia componentei Y/luminanță

u setați expresia componentei U/Cb

v setați expresia componentei V/Cr

Fiecare dintre ele specifică expresia de utilizat pentru calcularea tabelului de căutare pentru
valorile componente ale pixelilor corespunzătoare.

Componenta exactă asociată fiecăruia dintre c* opțiunile depind de formatul introdus.

citit filtrul necesită fie formate de pixeli YUV, fie RGB la intrare, lutrgb necesită RGB
formate de pixeli în intrare și lutyuv necesită YUV.

Expresiile pot conține următoarele constante și funcții:

w
h Lățimea și înălțimea de intrare.

val Valoarea de intrare pentru componenta pixelului.

clipval
Valoarea de intrare, decupată la minval-maxval Gama.

maxval
Valoarea maximă pentru componenta pixelului.

minval
Valoarea minimă pentru componenta pixelului.

negval
Valoarea negată pentru valoarea componentei pixelului, decupată la minval-maxval gamă;
corespunde expresiei „maxval-clipval+minval”.

clip (val)
Valoarea calculată în val, prins la minval-maxval Gama.

gamaval (gamma)
Valoarea de corecție gamma calculată a valorii componentei pixelului, decupată la
minval-maxval gamă. Corespunde expresiei
"pow((clipval-minval)/(maxval-minval)\,gamma)*(maxval-minval)+minval"

Toate expresiile sunt implicite la „val”.

Exemple

· Negați intrarea video:

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"

Cele de mai sus sunt la fel ca:

lutrgb="r=negval:g=negval:b=negval"
lutyuv="y=negval:u=negval:v=negval"

· Negați luminanța:

lutyuv=y=negval

· Eliminați componentele cromatice, transformând videoclipul într-o imagine în tonuri de gri:

lutyuv="u=128:v=128"

· Aplicați un efect de ardere a lumii:

lutyuv="y=2*val"

· Îndepărtați componentele verzi și albastre:

lutrgb="g=0:b=0"

· Setați o valoare constantă a canalului alfa la intrare:

format=rgba,lutrgb=a="maxval-minval/2"

· Corectați gama de luminanță cu un factor de 0.5:

lutyuv=y=gamaval(0.5)

· Aruncați fragmentele cele mai puțin semnificative de luma:

lutyuv=y='bitand(val, 128+64+32)'

planuri de fuziune
Îmbinați componentele canalului de culoare din mai multe fluxuri video.

Filtrul acceptă până la 4 fluxuri de intrare și îmbină planurile de intrare selectate cu ieșirea
video.

Acest filtru acceptă următoarele opțiuni:

cartografiere
Setați maparea planului de intrare la ieșire. Implicit este 0.

Mapările sunt specificate ca bitmap. Ar trebui specificat ca un număr hexazecimal
sub forma 0xAa[Bb[Cc[Dd]]]. „Aa” descrie maparea pentru primul plan al
flux de ieșire. „A” setează numărul fluxului de intrare de utilizat (de la 0 la 3), iar „a”
numărul de plan al intrării corespunzătoare de utilizat (de la 0 la 3). Restul
mapările sunt similare, „Bb” descrie maparea pentru al doilea plan al fluxului de ieșire,
„Cc” descrie maparea pentru al treilea plan al fluxului de ieșire, iar „Dd” descrie
cartografiere pentru al patrulea plan al fluxului de ieșire.

format
Setați formatul pixelilor de ieșire. Implicit este „yuva444p”.

Exemple

· Îmbină trei fluxuri video gri de aceeași lățime și înălțime într-un singur flux video:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· Îmbina primul flux yuv1p și al doilea flux video gri în fluxul video yuva444p:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Schimbați avionul Y și A în fluxul yuva444p:

format=yuva444p,mergeplanes=0x03010200:yuva444p

· Schimbați avionul U și V în fluxul yuv420p:

format=yuv420p,mergeplanes=0x000201:yuv420p

· Transmite un clip rgb24 pe yuv444p:

format=rgb24,mergeplanes=0x000102:yuv444p

mcdeint
Aplicați dezintercalarea de compensare a mișcării.

Are nevoie de un câmp pe cadru ca intrare și, prin urmare, trebuie utilizat împreună cu yadif=1/3 sau
echivalent.

Acest filtru acceptă următoarele opțiuni:

mod
Setați modul de dezintercalare.

Acceptă una dintre următoarele valori:

rapid
mediu
încetini
utilizați estimarea iterativă a mișcării

extra_lent
ca încetini, dar utilizați mai multe cadre de referință.

Valoarea implicită este rapid.

paritate
Setați paritatea câmpului de imagine presupusă pentru videoclipul de intrare. Trebuie să fie unul dintre
următoarele valori:

0, tff
presupune primul câmp de sus

1, BFF
presupuneți primul câmpul de jos

Valoarea implicită este BFF.

qp Setați parametrul de cuantizare per bloc (QP) utilizat de codificatorul intern.

Valorile mai mari ar trebui să aibă ca rezultat un câmp vectorial de mișcare mai fin, dar mai puțin optim
vectori individuali. Valoarea implicită este 1.

mpdecimate
Aruncă cadrele care nu diferă foarte mult de cadrul precedent pentru a reduce cadrul
rată.

Utilizarea principală a acestui filtru este pentru codificarea cu rate de biți foarte scăzute (de exemplu, streaming prin dialup
modem), dar teoretic ar putea fi folosit pentru repararea filmelor care au fost telecinizate invers
incorect.

Urmează o descriere a opțiunilor acceptate.

max Setați numărul maxim de cadre consecutive care pot fi abandonate (dacă sunt pozitive) sau
intervalul minim dintre cadrele abandonate (dacă este negativ). Dacă valoarea este 0, atunci
frame este abandonat fără a ține cont de numărul de cadre anterioare abandonate secvenţial.

Valoarea implicită este 0.

hi
lo
cozi
Setați valorile pragului de scădere.

Valori pentru hi și lo sunt pentru blocuri de 8x8 pixeli și reprezintă valoarea reală a pixelilor
diferențe, deci un prag de 64 corespunde unei unități de diferență pentru fiecare pixel,
sau același răspândit diferit pe bloc.

Un cadru este un candidat pentru scădere dacă niciun bloc de 8x8 nu diferă cu mai mult de un prag
of hi, iar dacă nu mai mult decât cozi blocurile (1 însemnând întreaga imagine) diferă cu mai mult decât
un prag de lo.

Valoarea implicită pentru hi este 64*12, valoarea implicită pentru lo este 64*5 și valoarea implicită pentru
cozi este 0.33.

nega
Negați intrarea video.

Acceptă un număr întreg în intrare; dacă este diferit de zero, anulează componenta alfa (dacă este disponibilă).
Valoarea implicită în intrare este 0.

noformat
Forțați libavfilter să nu folosească niciunul dintre formatele de pixeli specificate pentru intrarea în următorul
filtru.

Acceptă următorii parametri:

pix_fmts
O listă separată de „|” de nume de format de pixeli, cum ar fi apix_fmts=yuv420p|monow|rgb24”.

Exemple

· Forțați libavfilter să folosească un format diferit de yuv420p pentru intrarea în vflip
filtru:

noformat=pix_fmts=yuv420p,vflip

· Convertiți videoclipul de intrare în oricare dintre formatele care nu sunt incluse în listă:

noformat=yuv420p|yuv444p|yuv410p

zgomot
Adăugați zgomot pe cadrul de intrare video.

Filtrul acceptă următoarele opțiuni:

troscot
c0_seed
c1_seed
c2_seed
c3_seed
Setați începutul de zgomot pentru o anumită componentă de pixeli sau pentru toate componentele de pixeli în caz de
troscot. Valoarea implicită este 123457.

toată_puterea, deloc
c0_putere, c0s
c1_putere, c1s
c2_putere, c2s
c3_putere, c3s
Setați puterea zgomotului pentru o anumită componentă de pixeli sau pentru toate componentele de pixeli, dacă este cazul
toată_puterea. Valoarea implicită este 0. Intervalul permis este [0, 100].

toate_steaguri, allf
c0_steaguri, c0f
c1_steaguri, c1f
c2_steaguri, c2f
c3_steaguri, c3f
Setați steaguri pentru componente de pixeli sau setați steaguri pentru toate componentele dacă toate_steaguri. Disponibil
valorile pentru steagurile componente sunt:

a zgomot temporal mediu (mai lin)

p amestecați zgomotul aleatoriu cu un model (semi)regulat

t zgomot temporal (modelul de zgomot se modifică între cadre)

u zgomot uniform (gaussian altfel)

Exemple

Adăugați zgomot temporal și uniform la videoclipul de intrare:

noise=alls=20:allf=t+u

zero
Treceți sursa video neschimbată la ieșire.

ocv
Aplicați o transformare video folosind libopencv.

Pentru a activa acest filtru, instalați biblioteca și anteturile libopencv și configurați FFmpeg cu
„--enable-libopencv”.

Acceptă următorii parametri:

nume_filtru
Numele filtrului libopencv de aplicat.

filter_params
Parametrii de transmis la filtrul libopencv. Dacă nu sunt specificate, valorile implicite
sunt presupuse.

Consultați documentația oficială libopencv pentru informații mai precise:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

Sunt acceptate mai multe filtre libopencv; consultați următoarele subsecțiuni.

delată

Dilatați o imagine folosind un element structurant specific. Corespunde libopencv
funcția „cvDilate”.

Acceptă parametrii: struct_el|nb_iterații.

struct_el reprezintă un element de structurare și are sintaxa:
colxrânduri+ancora_xxancora_y/forma

col și rânduri reprezintă numărul de coloane și rânduri ale elementului de structurare,
ancora_x și ancora_y punctul de ancorare și forma forma pentru elementul de structurare.
forma trebuie să fie „rect”, „cruce”, „elipsă” sau „personalizat”.

Dacă valoarea pentru forma este „personalizat”, trebuie urmat de un șir de formă
"=nume de fișier". Fișierul cu nume nume de fișier se presupune că reprezintă o imagine binară, cu fiecare
caracter imprimabil corespunzător unui pixel luminos. Când un obicei forma este folosit, col și
rânduri sunt ignorate, se presupune în schimb numărul sau coloanele și rândurile fișierului citit.

Valoarea implicită pentru struct_el este „3x3+0x0/rect”.

nb_iterații specifică de câte ori se aplică transformarea imaginii și
implicit la 1.

Cateva exemple:

# Utilizați valorile implicite
ocv=dilata

# Dilatați folosind un element de structurare cu o cruce de 5x5, repetând de două ori
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# Citiți forma din fișierul diamond.shape, repetând de două ori.
# Fișierul diamond.shape poate conține un model de caractere ca acesta
# *
#***
# *****
#***
# *
# Coloanele și rândurile specificate sunt ignorate
# dar coordonatele punctului de ancorare nu sunt
ocv=dilate:0x0+2x2/custom=diamond.shape|2

eroda

Erodează o imagine utilizând un element de structurare specific. Corespunde libopencv
funcția „cvErode”.

Acceptă parametrii: struct_el:nb_iterații, cu aceeași sintaxă și semantică ca
il delată filtru.

netezi

Netezește videoclipul de intrare.

Filtrul ia următorii parametri: tip|param1|param2|param3|param4.

tip este tipul de filtru neted care trebuie aplicat și trebuie să aibă una dintre următoarele valori:
„blur”, „blur_no_scale”, „median”, „gaussian” sau „bilateral”. Valoarea implicită este
„gaussian”.

Înțelesul lui param1, param2, param3, și param4 depinde de tipul neted. param1 și
param2 acceptă valori întregi pozitive sau 0. param3 și param4 acceptă virgulă mobilă
valori.

Valoarea implicită pentru param1 este 3. Valoarea implicită pentru ceilalți parametri este 0.

Acești parametri corespund parametrilor alocați funcției libopencv
„cvSmooth”.

acoperire
Suprapuneți un videoclip peste altul.

Este nevoie de două intrări și are o ieșire. Prima intrare este videoclipul „principal” pe care
a doua intrare este suprapusă.

Acceptă următorii parametri:

Urmează o descriere a opțiunilor acceptate.

x
y Setați expresia pentru coordonatele x și y ale videoclipului suprapus pe principal
video. Valoarea implicită este „0” pentru ambele expresii. În cazul în care expresia este invalidă,
este setat la o valoare uriașă (înseamnă că suprapunerea nu va fi afișată în
zona vizibilă de ieșire).

eof_action
Acțiunea de întreprins atunci când EOF este întâlnită pe intrarea secundară; acceptă una dintre
urmatoarele valori:

repeta
Repetați ultimul cadru (implicit).

endall
Încheiați ambele fluxuri.

trece
Treceți intrarea principală.

eval
Setați când expresiile pentru x, și y sunt evaluate.

Acceptă următoarele valori:

înăuntru
evaluează expresiile o singură dată în timpul inițializării filtrului sau când o comandă
este procesat

cadru
evaluați expresiile pentru fiecare cadru primit

Valoarea implicită este cadru.

cel mai scurt
Dacă este setată la 1, forțați ieșirea să se termine când se termină cea mai scurtă intrare. Mod implicit
valoarea este 0.

format
Setați formatul pentru videoclipul de ieșire.

Acceptă următoarele valori:

yuv420
forță de ieșire YUV420

yuv422
forță de ieșire YUV422

yuv444
forță de ieșire YUV444

RGB forțați ieșirea RGB

Valoarea implicită este yuv420.

RGB (depreciat)
Dacă este setat la 1, forțați filtrul să accepte intrări în spațiul de culoare RGB. Valoare implicită
este 0. Această opțiune este depreciată, utilizați format in schimb.

repetlast
Dacă este setat la 1, forțați filtrul să deseneze ultimul cadru suprapus peste intrarea principală până când
capătul pârâului. O valoare de 0 dezactivează acest comportament. Valoarea implicită este 1.

x, și y expresiile pot conține următorii parametri.

main_w, W
main_h, H
Lățimea și înălțimea de intrare principale.

overlay_w, w
overlay_h, h
Lățimea și înălțimea de intrare de suprapunere.

x
y Valorile calculate pentru x și y. Ele sunt evaluate pentru fiecare cadru nou.

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical ale formatului de ieșire. De exemplu pentru
formatul pixelului „yuv422p” hsub este 2 și vsub este 1.

n numărul de cadre de intrare, începând de la 0

post poziția în fișier a cadrului de intrare, NAN dacă necunoscută

t Marca temporală, exprimată în secunde. Este NAN dacă marcajul de timp de intrare este necunoscut.

Rețineți că n, post, t variabilele sunt disponibile numai atunci când se face evaluarea pentru cadru,
și va evalua la NAN când eval este setat la înăuntru.

Rețineți că cadrele sunt preluate de la fiecare videoclip de intrare în ordinea marcajului de timp, prin urmare, dacă acestea sunt
marcajele temporale inițiale diferă, este o idee bună să treceți cele două intrări prin a
setpts=PTS-STARTPTS filtru pentru ca acestea să înceapă în același marcaj temporal zero, ca în exemplu
pentru film filtrul face.

Puteți înlănțui mai multe suprapuneri, dar ar trebui să testați eficiența unei astfel de abordări.

Comenzi

Acest filtru acceptă următoarele comenzi:

x
y Modificați x și y ale intrării suprapuse. Comanda acceptă aceeași sintaxă a lui
opțiunea corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

Exemple

· Desenați suprapunerea la 10 pixeli din colțul din dreapta jos al videoclipului principal:

overlay=main_w-overlay_w-10:principal_h-overlay_h-10

Folosind opțiunile numite, exemplul de mai sus devine:

overlay=x=main_w-overlay_w-10:y=main_h-overlay_h-10

· Introduceți un logo PNG transparent în colțul din stânga jos al introducerii, folosind FFMPEG
instrument cu opțiunea „-filter_complex”:

ffmpeg -i input -i logo -filter_complex 'overlay=10:main_h-overlay_h-10' output

· Introduceți 2 logo-uri PNG transparente diferite (al doilea logo în colțul din dreapta jos) folosind
il FFMPEG instrument:

ffmpeg -i intrare -i logo1 -i logo2 -filter_complex 'overlay=x=10:y=Hh-10,overlay=x=Ww-10:y=Hh-10' output

· Adăugați un strat de culoare transparent deasupra videoclipului principal; „LxH” trebuie să specifice dimensiunea
intrarea principală la filtrul de suprapunere:

[e-mail protejat]:size=WxH [peste]; [in] [peste] suprapunere [out]

· Redați un videoclip original și o versiune filtrată (aici cu filtrul deshake) alături
lateral folosind ffplay instrument:

ffplay input.avi -vf 'split[a][b]; [a]pad=iw*2:ih[src]; [b]deshake[filt]; [src][filt]overlay=w'

Comanda de mai sus este aceeași cu:

ffplay input.avi -vf 'split[b], pad=iw*2[src], [b]deshake, [src]overlay=w'

· Creați o suprapunere glisantă care să apară din partea stângă la dreapta sus a ecranului
începând cu ora 2:

suprapunere=x='dacă(gte(t,2), -w+(t-2)*20, NAN)':y=0

· Compuneți ieșirea punând două videoclipuri de intrare unul lângă altul:

ffmpeg -i left.avi -i right.avi -filter_complex "
nullsrc=size=200x100 [fondul];
[0:v] setpts=PTS-STARTPTS, scară=100x100 [stânga];
[1:v] setpts=PTS-STARTPTS, scară=100x100 [dreapta];
[fundal][stânga] suprapunere=cel mai scurt=1 [fondul+stânga];
[fond+stânga][dreapta] suprapunere=cea mai scurtă=1:x=100 [stânga+dreapta]
"

· Mascați 10-20 de secunde dintr-un videoclip prin aplicarea filtrului delogo pe o secțiune

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]'
mascat.avi

· Înlănțuiți mai multe suprapuneri în cascadă:

nullsrc=s=200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb=r=0, [bg] overlay=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
Aplicați Overcomplete Wavelet Denoiser.

Filtrul acceptă următoarele opțiuni:

adâncime
Setați adâncimea.

Valorile de adâncime mai mari vor elimina mai mult zgomotul componentelor cu frecvență mai joasă, dar vor încetini
filtrare.

Trebuie să fie un int în intervalul 8-16, implicit este 8.

puterea_lumă, ls
Setați puterea luminii.

Trebuie să fie o valoare dublă în intervalul 0-1000, implicit este 1.0.

chroma_strength, cs
Setați puterea cromatică.

Trebuie să fie o valoare dublă în intervalul 0-1000, implicit este 1.0.

tampon
Adăugați căptușeli la imaginea de intrare și plasați intrarea originală la locul prevăzut x, y
coordonate.

Acceptă următorii parametri:

lățime, w
înălţime, h
Specificați o expresie pentru dimensiunea imaginii de ieșire cu umpluturile adăugate. Dacă
valoare pentru lățime or înălțime este 0, dimensiunea de intrare corespunzătoare este utilizată pentru ieșire.

lățime expresia poate face referire la valoarea setată de înălțime expresie și viciu
invers.

Valoarea implicită a lățime și înălțime este 0.

x
y Specificați decalajele pentru a plasa imaginea de intrare în zona căptușită, cu respect
la marginea de sus/stânga a imaginii de ieșire.

x expresia poate face referire la valoarea setată de y expresie și invers.

Valoarea implicită a x și y este 0.

culoare
Specificați culoarea zonei căptușite. Pentru sintaxa acestei opțiuni, bifați „Culoare”
secțiunea din manualul ffmpeg-utils.

Valoarea implicită a culoare este negru".

Valoarea pentru lățime, înălțime, x, și y opțiunile sunt expresii care conțin următoarele
constante:

în W
în_h
Lățimea și înălțimea video de intrare.

iw
ih Acestea sunt la fel ca în W și în_h.

out_w
out_h
Lățimea și înălțimea de ieșire (dimensiunea zonei căptușite), așa cum este specificat de lățime
și înălțime expresii.

ow
oh Acestea sunt la fel ca out_w și out_h.

x
y Compensațiile x și y așa cum sunt specificate de x și y expresii, sau NAN dacă nu încă
specificat.

a la fel ca iw / ih

SAR raportul de aspect al eșantionului de intrare

da raportul de aspect al afișajului de intrare, este același cu (iw / ih) * SAR

hsub
vsub
Valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

Exemple

· Adăugați căptușeli cu culoarea „violet” la videoclipul de intrare. Dimensiunea video de ieșire este
640x480, iar colțul din stânga sus al videoclipului de intrare este plasat la coloana 0, rândul 40

pad=640:480:0:40:violet

Exemplul de mai sus este echivalent cu următoarea comandă:

pad=lățime=640:înălțime=480:x=0:y=40:culoare=violet

· Apăsați intrarea pentru a obține o ieșire cu dimensiuni mărite cu 3/2 și puneți intrarea
videoclip în centrul zonei căptușite:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· Apăsați intrarea pentru a obține o ieșire pătrată cu dimensiunea egală cu valoarea maximă dintre
lățimea și înălțimea de intrare și puneți videoclipul de intrare în centrul zonei căptușite:

pad="max(iw\,ih):ow:(ow-iw)/2:(oh-ih)/2"

· Apăsați intrarea pentru a obține un raport final w/h de 16:9:

pad="ih*16/9:ih:(ow-iw)/2:(oh-ih)/2"

· În cazul unui videoclip anamorfic, pentru a seta corect aspectul de afișare a ieșirii, acesta
este necesar de utilizat SAR în expresie, conform relaţiei:

(ih * X / ih) * sar = output_dar
X = output_dar / sar

Astfel, exemplul anterior trebuie modificat pentru a:

pad="ih*16/9/sar:ih:(ow-iw)/2:(oh-ih)/2"

· Dublați dimensiunea de ieșire și puneți videoclipul de intrare în colțul din dreapta jos al fișierului
zonă căptușită de ieșire:

pad="2*iw:2*ih:ow-iw:oh-ih"

paletegen
Generați o paletă pentru un întreg flux video.

Acceptă următoarele opțiuni:

max_culori
Setați numărul maxim de culori de cuantificat în paletă. Notă: paleta va
conțin încă 256 de culori; intrările din paletă neutilizate vor fi negre.

rezerva_transparent
Creați o paletă de maximum 255 de culori și rezervați-o pe ultima pentru transparență.
Rezervarea culorii transparenței este utilă pentru optimizarea GIF. Dacă nu este setat,
maximul de culori din paletă va fi 256. Probabil doriți să dezactivați această opțiune
pentru o imagine de sine stătătoare. Setat implicit.

stats_mode
Setați modul statistici.

Acceptă următoarele valori:

Complet
Calculați histograme full frame.

dif
Calculați histogramele numai pentru partea care diferă de cadrul precedent. Asta ar putea
fi relevant pentru a acorda mai multă importanță părții mobile a intrării dvs. dacă
fundalul este static.

Valoarea implicită este Complet.

De asemenea, filtrul exportă metadatele cadrului „lavfi.color_quant_ratio” („nb_color_in /
nb_color_out") pe care îl puteți folosi pentru a evalua gradul de cuantizare a culorii
paletă. Aceste informații sunt vizibile și la info nivelul de înregistrare.

Exemple

· Generați o paletă reprezentativă a unui videoclip dat folosind FFMPEG:

ffmpeg -i input.mkv -vf palettegen palette.png

paletă
Folosiți o paletă pentru a reduce eșantionarea unui flux video de intrare.

Filtrul are două intrări: un flux video și o paletă. Paleta trebuie să fie un 256
imaginea de pixeli.

Acceptă următoarele opțiuni:

oscila
Selectați modul dithering. Algoritmii disponibili sunt:

bayer
Dithering bayer comandat 8x8 (determinist)

naiba
Dithering așa cum a fost definit de Paul Heckbert în 1982 (difuzarea simplă a erorilor). Notă:
această dithering este uneori considerată „greșită” și este inclusă ca referință.

floyd_steinberg
Dithering Floyd și Steingberg (difuzarea erorii)

Sierra2
Frankie Sierra dithering v2 (difuzarea erorii)

sierra2_4a
Frankie Sierra dithering v2 „Lite” (difuzarea erorii)

Implicit este sierra2_4a.

bayer_scale
Cand bayer dithering este selectat, această opțiune definește scara modelului (cum
mult modelul de hașurare încrucișată este vizibil). O valoare scăzută înseamnă un model mai vizibil pentru
mai puține benzi și o valoare mai mare înseamnă un model mai puțin vizibil cu prețul mai multor benzi.

Opțiunea trebuie să fie o valoare întreagă în intervalul [0,5]. Implicit este 2.

mod_dif
Dacă este setată, definiți zona de procesat

dreptunghi
Doar dreptunghiul care se schimbă va fi reprocesat. Acesta este similar cu GIF
mecanism de decupare/comprimare de compresie. Această opțiune poate fi utilă pentru viteză dacă
doar o parte a imaginii se schimbă și are cazuri de utilizare, cum ar fi limitarea domeniului de aplicare
a difuzării erorii oscila la dreptunghiul care delimitează scena în mișcare (it
duce la o ieșire mai deterministă dacă scena nu se schimbă mult și ca a
rezultă mai puțin zgomot în mișcare și o compresie GIF mai bună).

Implicit este nici unul.

Exemple

· Folosiți o paletă (generată de exemplu cu paletegen) pentru a codifica un GIF folosind FFMPEG:

ffmpeg -i input.mkv -i palette.png -lavfi paletteuse output.gif

perspectivă
Perspectiva corectă a videoclipului neînregistrat perpendicular pe ecran.

Urmează o descriere a parametrilor acceptați.

x0
y0
x1
y1
x2
y2
x3
y3 Setați expresia coordonatelor pentru stânga sus, dreapta sus, stânga jos și dreapta jos
colțuri. Valorile implicite sunt „0:0:W:0:0:H:W:H” cu care perspectiva va rămâne
neschimbat. Dacă opțiunea „sens” este setată la „sursă”, atunci punctele specificate vor fi
să fie trimis la colțurile destinației. Dacă opțiunea „sens” este setată la
„destinație”, apoi colțurile sursei vor fi trimise către cea specificată
coordonate.

Expresiile pot folosi următoarele variabile:

W
H lățimea și înălțimea cadrului video.

interpolare
Setați interpolarea pentru corectarea perspectivei.

Acceptă următoarele valori:

liniar
cub

Valoarea implicită este liniar.

sens
Setați interpretarea opțiunilor de coordonate.

Acceptă următoarele valori:

0, sursă
Trimiteți punctul în sursa specificată de coordonatele date la colțurile
destinaţie.

1, destinație
Trimiteți colțurile sursei la punctul din destinația specificat de
coordonate date.

Valoarea implicită este sursă.

fază
Întârzieți videoclipul întrețesut cu un timp de câmp, astfel încât ordinea câmpurilor să se schimbe.

Utilizarea prevăzută este de a repara filmele PAL care au fost capturate cu câmpul opus
comandă la transferul film-to-video.

Urmează o descriere a parametrilor acceptați.

mod
Setați modul de fază.

Acceptă următoarele valori:

t Capturați ordinea câmpurilor mai întâi de sus, transferați mai întâi de jos. Filtrul va întârzia
câmpul de jos.

b Capturați ordinea câmpului de jos, primul, transferați de sus. Filtrul va întârzia partea de sus
camp.

p Capturați și transferați cu aceeași comandă de câmp. Acest mod există doar pentru
documentația celorlalte opțiuni la care să faceți referire, dar dacă o selectați,
filtrul nu va face nimic.

a Capturați ordinea câmpurilor determinată automat de steagurile câmpului, transferați vizavi.
Filtrul selectează dintre t și b moduri pe bază de cadru cu cadru folosind steaguri de câmp. Dacă
nu sunt disponibile informații de câmp, atunci aceasta funcționează la fel ca u.

u Capturați necunoscut sau variabil, transferați opusul. Filtrul selectează dintre t și b pe o
cadru cu cadru analizând imaginile și selectând alternativa care
produce cea mai bună potrivire între câmpuri.

T Capturați mai întâi de sus, transferați necunoscut sau variabil. Filtrul selectează dintre t și p
folosind analiza imaginilor.

B Capturați mai întâi de jos, transferați necunoscut sau variabil. Filtrul selectează dintre b și p
folosind analiza imaginilor.

A Captură determinată de steaguri de câmp, transfer necunoscut sau variabil. Selectează filtrul
printre t, b și p folosind steagurile de câmp și analiza imaginilor. Dacă nu există informații despre câmp
disponibil, atunci aceasta funcționează la fel ca U. Acesta este modul implicit.

U Atât captarea, cât și transferul necunoscute sau variabile. Filtrul selectează dintre t, b și p
folosind doar analiza imaginii.

pixdesctest
Filtru de test de descriptor de format de pixel, util în principal pentru testarea internă. Ieșirea video
ar trebui să fie egal cu înregistrarea video.

De exemplu:

format=monow, pixdesctest

poate fi folosit pentru a testa definiția descriptorului formatului pixelului monoalb.

pp
Activați lanțul specificat de subfiltre de postprocesare folosind libpostproc. Această bibliotecă
ar trebui să fie selectat automat cu o versiune GPL ("--enable-gpl"). Subfiltrele trebuie să fie
separate prin „/” și pot fi dezactivate adăugând un „-”. Fiecare subfiltru și câteva opțiuni
au un nume scurt și un lung care poate fi folosit interschimbabil, adică dr/dering sunt
la fel.

Filtrele acceptă următoarele opțiuni:

subfiltre
Setați șirul de subfiltre de postprocesare.

Toate subfiltrele au opțiuni comune pentru a-și determina domeniul de aplicare:

a/autoq
Respectați comenzile de calitate pentru acest subfiltru.

c/crom
Efectuați și filtrarea crominanței (implicit).

y/nochrom
Efectuați numai filtrarea de luminanță (fără crominanță).

n/noluma
Efectuați numai filtrarea de crominanță (fără luminanță).

Aceste opțiuni pot fi adăugate după numele subfiltrului, separate prin „|”.

Subfiltrele disponibile sunt:

hb/hdeblock[|diferență[|planeitate]]
Filtru de deblocare orizontal

diferenţă
Factor de diferență în care valorile mai mari înseamnă mai multă deblocare (implicit: 32).

planeitate
Pragul de planeitate unde valorile mai mici înseamnă mai multă deblocare (implicit: 39).

vb/vdeblock[|diferență[|planeitate]]
Filtru de deblocare vertical

diferenţă
Factor de diferență în care valorile mai mari înseamnă mai multă deblocare (implicit: 32).

planeitate
Pragul de planeitate unde valorile mai mici înseamnă mai multă deblocare (implicit: 39).

ha/hadeblock[|diferență[|planeitate]]
Filtru de deblocare orizontal precis

diferenţă
Factor de diferență în care valorile mai mari înseamnă mai multă deblocare (implicit: 32).

planeitate
Pragul de planeitate unde valorile mai mici înseamnă mai multă deblocare (implicit: 39).

va/vadeblock[|diferență[|planeitate]]
Filtru de deblocare vertical precis

diferenţă
Factor de diferență în care valorile mai mari înseamnă mai multă deblocare (implicit: 32).

planeitate
Pragul de planeitate unde valorile mai mici înseamnă mai multă deblocare (implicit: 39).

Filtrele de deblocare orizontale și verticale împărtășesc valorile de diferență și planeitate astfel
nu puteți seta diferite praguri orizontale și verticale.

h1/x1hdeblock
Filtru de deblocare orizontal experimental

v1/x1vdeblock
Filtru de deblocare vertical experimental

dr/dering
Filtru de deringing

tn/tmpnoise[|threshold1[|threshold2[|threshold3]]], temporal zgomot reductor
prag1
mai mare -> filtrare mai puternică

prag2
mai mare -> filtrare mai puternică

prag3
mai mare -> filtrare mai puternică

al/autolevels[:f/fullrange], automat strălucire / contrast corecţie
f/gamă completă
Întindeți luminanța la „0-255”.

lb/linblenddeint
Filtru de deintercalare a amestecului liniar care dezintercalează blocul dat prin filtrarea tuturor
linii cu un filtru „(1 2 1)”.

li/linipoldeint
Filtru de interpolare liniar care deintercalează blocul dat prin
interpolând liniar fiecare a doua linie.

ci/cubicipoldeint
Filtrul de interpolare cubică dezintercalează blocul dat cub
interpolând fiecare a doua linie.

md/mediandeint
Filtru de deintercalare mediană care dezintercalează blocul dat prin aplicarea unei mediane
filtrați la fiecare a doua linie.

fd/ffmpegdeint
Filtrul de deintercalare FFmpeg care dezintercalează blocul dat prin filtrarea fiecăruia
a doua linie cu un filtru „(-1 4 2 4 -1)”.

l5/lowpass5
Filtrul de deintercalare trece jos FIR aplicat pe verticală care dezintercalează blocul dat
prin filtrarea tuturor liniilor cu un filtru „(-1 2 6 2 -1)”.

fq/forceQuant[|cuantizator]
Ignoră tabelul cuantificatorului de la intrare cu cuantificatorul constant pe care îl specificați.

cuantificator
Cuantizator de utilizat

implicit/implicit
Combinație implicită de filtru pp ("hb|a,vb|a,dr|a")

fa/rapid
Combinație rapidă de filtru pp ("h1|a,v1|a,dr|a")

ac Combinație de filtru pp de înaltă calitate ("ha|a|128|7,va|a,dr|a")

Exemple

· Aplicați deblocare orizontală și verticală, deringing și luminozitate/contrast automată:

pp=hb/vb/dr/al

· Aplicați filtre implicite fără corecție de luminozitate/contrast:

pp=de/-al

· Aplicați filtre implicite și denoiser temporal:

pp=default/tmpnoise|1|2|3

· Aplicați deblocarea numai pe luminanță și activați sau dezactivați deblocarea verticală
automat, în funcție de timpul CPU disponibil:

pp=hb|y/vb|a

pp7
Aplicați filtrul Postprocesare 7. Este o variantă a spp filtru, similar cu spp = 6 cu 7
punct DCT, unde numai eșantionul central este utilizat după IDCT.

Filtrul acceptă următoarele opțiuni:

qp Forțați un parametru de cuantizare constant. Acceptă un număr întreg în intervalul de la 0 la 63. Dacă
nesetat, filtrul va folosi QP-ul din fluxul video (dacă este disponibil).

mod
Setați modul de prag. Modurile disponibile sunt:

greu
Setați un prag dur.

moale
Setați un prag moale (efect mai bun de de-ringing, dar probabil mai neclar).

mediu
Setați un prag mediu (rezultate bune, implicit).

psnr
Obțineți media, maxima și minimă PSNR (Peak Signal to Noise Ratio) între două
introducerea videoclipurilor.

Acest filtru preia două videoclipuri de intrare, prima intrare este considerată „principală”
sursă și este transmis neschimbat la ieșire. A doua intrare este folosită ca „referință”
video pentru calcularea PSNR.

Ambele intrări video trebuie să aibă aceeași rezoluție și format de pixeli pentru ca acest filtru să funcționeze
corect. De asemenea, se presupune că ambele intrări au același număr de cadre, care sunt
comparat unul câte unul.

PSNR mediu obținut este imprimat prin sistemul de înregistrare.

Filtrul stochează MSE (eroare medie pătratică) acumulată a fiecărui cadru și la sfârșit
a procesării este mediată în toate cadrele în mod egal, iar următoarea formulă este
aplicat pentru obținerea PSNR:

PSNR = 10*log10(MAX^2/MSE)

Unde MAX este media valorilor maxime ale fiecărei componente a imaginii.

Urmează descrierea parametrilor acceptați.

stats_file, f
Dacă este specificat, filtrul va folosi fișierul numit pentru a salva PSNR-ul fiecărui individ
cadru.

Fișierul tipărit dacă fişier_statistici este selectat, conține o secvență de perechi cheie/valoare ale
formă cheie:valoare pentru fiecare cuplu comparat de cadre.

Urmează o descriere a fiecărui parametru afișat:

n numărul secvenţial al cadrului de intrare, începând de la 1

mse_avg
Eroare pătrată medie pixel-cu-pixel diferența medie a cadrelor comparate, mediată
peste toate componentele imaginii.

mse_y, mse_u, mse_v, mse_r, mse_g, mse_g, mse_a
Eroare pătrată medie pixel-cu-pixel diferența medie a cadrelor comparate pentru
componentă specificată de sufix.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
Raportul semnal de vârf la zgomot al cadrelor comparate pentru componenta specificată de
sufix.

De exemplu:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [principal];
[principal][ref] psnr="stats_file=stats.log" [out]

În acest exemplu, fișierul de intrare procesat este comparat cu fișierul de referință
ref_movie.mpg. PSNR-ul fiecărui cadru individual este stocat în statistici.log.

trage
Filtru de inversare pulldown (telecine inversă), capabil să gestioneze hard-telecine mixt,
24000/1001 fps progresiv și conținut progresiv 30000/1001 fps.

Filtrul pullup este conceput pentru a profita de contextul viitor în luarea deciziilor.
Acest filtru este apatrid în sensul că nu se blochează pe un model de urmat, dar
în schimb, așteaptă cu nerăbdare următoarele câmpuri pentru a identifica potrivirile și a reconstrui
cadre progresive.

Pentru a produce conținut cu un framerate uniform, introduceți filtrul fps după pullup, utilizați
„fps=24000/1001” dacă rata de intrare a cadrelor este de 29.97 fps, „fps=24” pentru 30fps și (rar)
intrare telecinată de 25 fps.

Filtrul acceptă următoarele opțiuni:

jl
jr
jt
jb Aceste opțiuni stabilesc cantitatea de „junk” de ignorat în stânga, dreapta, sus și jos
a imaginii, respectiv. Stânga și dreapta sunt în unități de 8 pixeli, în timp ce sus și
de jos sunt în unități de 2 linii. Valoarea implicită este de 8 pixeli pe fiecare parte.

sb Stabiliți pauze stricte. Setarea acestei opțiuni la 1 va reduce șansele de filtrare
generând ocazional un cadru nepotrivit, dar poate provoca și un număr excesiv
de cadre care urmează să fie aruncate în timpul secvențelor de mișcare mare. Dimpotrivă, setându-l la -1
va face mai ușor câmpurile de potrivire de filtrare. Acest lucru poate ajuta la procesarea videoclipurilor unde
există o ușoară neclaritate între câmpuri, dar poate provoca și întrețeserea acestora
cadre în ieșire. Valoarea implicită este 0.

mp Setați planul metric de utilizat. Acceptă următoarele valori:

l Folosește avionul luma.

u Folosiți planul chroma blue.

v Folosiți planul roșu cromatic.

Această opțiune poate fi setată să folosească planul cromatic în loc de planul luminos implicit
calculele filtrului. Acest lucru poate îmbunătăți acuratețea materialului sursă foarte curat, dar
mai probabil va scădea acuratețea, mai ales dacă există zgomot cromatic (curcubeu
efect) sau orice videoclip în tonuri de gri. Scopul principal al setarii mp la un plan cromatic este
pentru a reduce sarcina procesorului și a face pullup-ul utilizabil în timp real pe mașinile lente.

Pentru cele mai bune rezultate (fără cadre duplicate în fișierul de ieșire) este necesar să se schimbe
rata de ieșire a cadrelor. De exemplu, pentru a inversa intrarea telecine NTSC:

ffmpeg -i intrare -vf pullup -r 24000/1001 ...

qp
Modificați parametrii de cuantizare video (QP).

Filtrul acceptă următoarea opțiune:

qp Setați expresia pentru parametrul de cuantizare.

Expresia este evaluată prin API-ul eval și poate conține, printre altele, și
urmatoarele constante:

cunoscut
1 dacă indicele nu este 129, 0 în caz contrar.

qp Index secvenţial începând de la -129 la 128.

Exemple

· O ecuație cum ar fi:

qp=2+2*sin(PI*qp)

aleator
Scoateți cadrele video din memoria cache internă a cadrelor într-o ordine aleatorie. Nici un cadru nu este
aruncat. Inspirat de frei0r filtru nervos.

rame
Setați dimensiunea în număr de cadre din memoria cache internă, în intervalul de la 2 la 512. Implicit este 30.

sămânţă
Setați sămânța pentru generatorul de numere aleatoare, trebuie să fie un număr întreg inclus între 0 și
„UINT32_MAX”. Dacă nu este specificat sau dacă este setat în mod explicit la mai puțin de 0, filtrul o va face
încercați să utilizați o sămânță bună aleatorie pe baza efortului maxim.

elimina cerealele
Filtrul removegrain este un denoiser spațial pentru video progresiv.

m0 Setați modul pentru primul avion.

m1 Setați modul pentru al doilea plan.

m2 Setați modul pentru al treilea plan.

m3 Setați modul pentru al patrulea plan.

Intervalul de mod este de la 0 la 24. Descrierea fiecărui mod este următoarea:

0 Lăsați planul de intrare neschimbat. Mod implicit.

1 Decupează pixelul cu minim și maxim dintre cei 8 pixeli vecini.

2 Decupează pixelul cu al doilea minim și maxim dintre cei 8 pixeli vecini.

3 Decupează pixelul cu al treilea minim și maxim dintre cei 8 pixeli vecini.

4 Decupează pixelul cu al patrulea minim și maxim dintre cei 8 pixeli vecini. Acest
este echivalent cu un filtru median.

5 Tăiere sensibilă la linie care oferă o schimbare minimă.

6 Tăiere sensibilă la linie, intermediară.

7 Tăiere sensibilă la linie, intermediară.

8 Tăiere sensibilă la linie, intermediară.

9 Tăiere sensibilă la linie pe o linie în care pixelii vecini sunt cei mai apropiați.

10 Înlocuiește pixelul țintă cu cel mai apropiat vecin.

11 [1 2 1] estompare a miezului orizontal și vertical.

12 La fel ca modul 11.

13 Modul Bob, interpolează câmpul superior din linia în care sunt pixelii vecini
cel mai apropiat.

14 Modul Bob, interpolează câmpul de jos din linia în care sunt pixelii vecini
cel mai apropiat.

15 Modul Bob, interpolează câmpul superior. La fel ca 13, dar cu o interpolare mai complicată
formula.

16 Modul Bob, interpolează câmpul de jos. La fel ca 14, dar cu o mai complicată
formula de interpolare.

17 Decupează pixelul cu minimul și maximul respectiv maxim și minim
a fiecărei perechi de pixeli vecini opuși.

18 Tăiere sensibilă la linie folosind vecini opuși a căror distanță mai mare de
pixelul curent este minim.

19 Înlocuiește pixelul cu media celor 8 vecini ai săi.

20 Mediază cei 9 pixeli ([1 1 1] estompare orizontală și verticală).

21 Decupează pixelii folosind mediile vecinului opus.

22 La fel ca modul 21, dar mai simplu și mai rapid.

23 Îndepărtarea marginii mici și a haloului, dar reputată inutilă.

24 Similar cu 23.

removelogo
Suprimați sigla unui post TV, utilizând un fișier imagine pentru a determina ce pixeli o compun
siglă. Funcționează prin completarea pixelilor care cuprind logo-ul cu pixeli învecinați.

Filtrul acceptă următoarele opțiuni:

nume de fișier, f
Setați fișierul bitmap de filtru, care poate fi orice format de imagine acceptat de libavformat.
Lățimea și înălțimea fișierului imagine trebuie să se potrivească cu cele ale fluxului video
prelucrate.

Pixelii din imaginea bitmap furnizată cu o valoare zero nu sunt considerați parte din
logo, pixelii diferit de zero sunt considerați parte a logo-ului. Dacă utilizați alb (255) pentru logo
și negru (0) pentru restul, vei fi în siguranță. Pentru crearea bitmap-ului filtrului, este
recomandat să faceți o captură de ecran a unui cadru negru cu logo-ul vizibil și apoi
folosind un filtru de prag urmat de filtrul de erodare o dată sau de două ori.

Dacă este necesar, micile pete pot fi reparate manual. Amintiți-vă că, dacă pixelii logo-ului nu sunt
acoperit, calitatea filtrului va fi mult redusă. Se marchează prea mulți pixeli ca parte a
logo-ul nu doare la fel de mult, dar va crește cantitatea de estompare necesară pentru acoperire
peste imagine și va distruge mai multe informații decât este necesar, iar pixelii suplimentari vor distruge
încetinește lucrurile pe un logo mare.

câmpuri repetate
Acest filtru folosește indicatorul repeat_field din anteturile Video ES și câmpurile hard repeats
pe baza valorii sale.

verso, invers
Întoarceți un clip.

Avertisment: Acest filtru necesită memorie pentru a stoca întregul clip, așa că se recomandă tăierea.

Exemple

· Luați primele 5 secunde ale unui clip și inversați-l.

trim=end=5,reverse

roti
Rotiți videoclipul cu un unghi arbitrar exprimat în radiani.

Filtrul acceptă următoarele opțiuni:

Urmează o descriere a parametrilor opționali.

unghi, a
Setați o expresie pentru unghiul cu care să rotiți videoclipul de intrare în sensul acelor de ceasornic,
exprimată ca număr de radiani. O valoare negativă va rezulta în sens invers acelor de ceasornic
rotație. În mod implicit, este setat la „0”.

Această expresie este evaluată pentru fiecare cadru.

out_w, ow
Setați expresia lățimii de ieșire, valoarea implicită este „iw”. Această expresie este evaluată
doar o dată în timpul configurării.

out_h, oh
Setați expresia înălțimii de ieșire, valoarea implicită este „ih”. Această expresie este evaluată
doar o dată în timpul configurării.

biliniar
Activați interpolarea biliniară dacă este setată la 1, o valoare de 0 o dezactivează. Valoarea implicită este
1.

fillcolor, c
Setați culoarea folosită pentru a umple zona de ieșire care nu este acoperită de imaginea rotită. Pentru
sintaxa generală a acestei opțiuni, verificați secțiunea „Culoare” din manualul ffmpeg-utils.
Dacă este selectată valoarea specială „niciun”, atunci nu este imprimat fundal (util pentru
exemplu dacă fundalul nu este afișat niciodată).

Valoarea implicită este „negru”.

Expresiile pentru unghi și dimensiunea de ieșire pot conține următoarele constante și
funcţii:

n numărul secvenţial al cadrului de intrare, începând de la 0. Este întotdeauna NAN înainte de
primul cadru este filtrat.

t timpul în secunde al cadrului de intrare, este setat la 0 când filtrul este configurat. Aceasta
este întotdeauna NAN înainte ca primul cadru să fie filtrat.

hsub
vsub
valorile subeșantionului cromatic orizontal și vertical. De exemplu, pentru formatul pixelilor
"yuv422p" hsub este 2 și vsub este 1.

în W, iw
in_h, ih
lățimea și înălțimea video de intrare

out_w, ow
out_h, oh
lățimea și înălțimea de ieșire, adică dimensiunea zonei căptușite, așa cum este specificată de
lățime și înălțime expresii

rotw(a)
roth(a)
lățimea/înălțimea minimă necesară pentru a conține complet videoclipul de intrare rotit de
a radiani.

Acestea sunt disponibile numai atunci când se calculează out_w și out_h expresii.

Exemple

· Rotiți intrarea cu PI/6 radiani în sensul acelor de ceasornic:

rotire=PI/6

· Rotiți intrarea cu PI/6 radiani în sens invers acelor de ceasornic:

rotire=-PI/6

· Rotiți intrarea cu 45 de grade în sensul acelor de ceasornic:

rotire=45*PI/180

· Aplicați o rotație constantă cu perioada T, începând de la un unghi de PI/3:

rotire=PI/3+2*PI*t/T

· Faceți ca rotația video de intrare să oscileze cu o perioadă de T secunde și o amplitudine
de A radiani:

rotire=A*sin(2*PI/T*t)

· Rotiți videoclipul, dimensiunea de ieșire este aleasă astfel încât întregul videoclip de intrare rotativ să fie
întotdeauna complet conținut în rezultat:

rotire='2*PI*t:ow=hypot(iw,ih):oh=ow'

· Rotiți videoclipul, reduceți dimensiunea de ieșire, astfel încât să nu fie afișat fundal:

rotire=2*PI*t:ow='min(iw,ih)/sqrt(2)':oh=ow:c=niciunul

Comenzi

Filtrul acceptă următoarele comenzi:

a, unghi
Setați expresia unghiului. Comanda acceptă aceeași sintaxă a celei corespunzătoare
opțiune.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

sab
Aplicați Shape Adaptive Blur.

Filtrul acceptă următoarele opțiuni:

luma_radius, lr
Setați puterea filtrului de estompare luma, trebuie să fie o valoare în intervalul 0.1-4.0, valoarea implicită este 1.0.
O valoare mai mare va avea ca rezultat o imagine mai neclară și o procesare mai lentă.

luma_pre_filter_radius, lpfr
Setați raza prefiltrului de luma, trebuie să fie o valoare în intervalul 0.1-2.0, valoarea implicită este
1.0.

puterea_lumă, ls
Setați diferența maximă de lumina între pixeli să fie luată în considerare, trebuie să fie o valoare în
intervalul 0.1-100.0, valoarea implicită este 1.0.

chroma_radius, cr
Setați puterea filtrului de estompare cromatică, trebuie să fie o valoare în intervalul 0.1-4.0. O valoare mai mare
va avea ca rezultat o imagine mai neclară și o procesare mai lentă.

chroma_pre_filter_radius, cpfr
Setați raza prefiltrului cromatic, trebuie să fie o valoare în intervalul 0.1-2.0.

chroma_strength, cs
Setați diferența maximă de croma între pixeli să fie luată în considerare, trebuie să fie o valoare
în intervalul 0.1-100.0.

Fiecare valoare a opțiunii de croma, dacă nu este specificată în mod explicit, este setată la lumina corespunzătoare
valoarea opțiunii.

scară
Scalați (redimensionați) videoclipul de intrare, folosind biblioteca libswscale.

Filtrul de scară forțează raportul de aspect al afișajului de ieșire să fie același cu cel de intrare, prin
modificarea raportului de aspect al eșantionului de ieșire.

Dacă formatul imaginii de intrare este diferit de formatul solicitat de următorul filtru,
filtrul de scară va converti intrarea în formatul solicitat.

Opţiuni

Filtrul acceptă următoarele opțiuni sau oricare dintre opțiunile acceptate de
scaler libswscale.

Vedea il ffmpeg-scaler manual pentru lista completă a opțiunilor de scalare.

lățime, w
înălţime, h
Setați expresia dimensiunii video de ieșire. Valoarea implicită este dimensiunea de intrare.

Dacă valoarea este 0, lățimea de intrare este utilizată pentru ieșire.

Dacă una dintre valori este -1, filtrul de scară va folosi o valoare care menține
raportul de aspect al imaginii de intrare, calculat din cealaltă dimensiune specificată. Dacă
ambele sunt -1, se utilizează dimensiunea de intrare

Dacă una dintre valori este -n cu n > 1, filtrul de scară va folosi și o valoare care
menține raportul de aspect al imaginii de intrare, calculat din cealaltă specificată
dimensiune. După aceea, se va asigura totuși că dimensiunea calculată este
divizibil cu n și ajustați valoarea dacă este necesar.

Vedeți mai jos lista constantelor acceptate pentru utilizare în expresia dimensiune.

interl
Setați modul de întrețesere. Acceptă următoarele valori:

1 Forțați scalarea conștientă întrețesată.

0 Nu aplicați scalare întrețesată.

-1 Selectați scalarea conștientă intercalată în funcție de dacă cadrele sursă sunt marcate
ca întrețesut sau nu.

Valoarea implicită este 0.

steaguri
Setați steaguri de scalare libswscale. Vedea il ffmpeg-scaler manual pentru lista completă a
valorile. Dacă nu este specificat în mod explicit, filtrul aplică steagurile implicite.

mărimea, s
Setați dimensiunea videoclipului. Pentru sintaxa acestei opțiuni, verificați "Video mărimea" secțiune in
il ffmpeg-utils manual.

in_color_matrix
out_color_matrix
Setați tipul de spațiu de culoare YCbCr de intrare/ieșire.

Acest lucru permite ca valoarea detectată automat să fie suprascrisă și permite forțarea a
valoare specifică utilizată pentru ieșire și encoder.

Dacă nu este specificat, tipul spațiului de culoare depinde de formatul pixelilor.

Valori posibile:

Auto
Alege automat.

bt709
Format conform cu recomandarea Uniunii Internaționale de Telecomunicații (ITU).
BT.709.

fcc Setați spațiul de culoare în conformitate cu Comisia Federală de Comunicații din Statele Unite
(FCC) Codul Reglementărilor Federale (CFR) Titlul 47 (2003) 73.682 (a).

bt601
Setați spațiul de culoare în conformitate cu:

· Recomandarea BT.601 pentru sectorul radiocomunicațiilor ITU (ITU-R).

· Rec. ITU-R BT.470-6 (1998) Sistemele B, B1 și G

· Societatea Inginerilor de Film și Televiziune (SMPTE) ST 170:2004

smpte240m
Setați spațiul de culoare în conformitate cu SMPTE ST 240:1999.

în_gamă
out_range
Setați intervalul de probă YCbCr de intrare/ieșire.

Acest lucru permite ca valoarea detectată automat să fie suprascrisă și permite forțarea a
valoare specifică utilizată pentru ieșire și encoder. Dacă nu este specificat, intervalul depinde de
formatul pixelilor. Valori posibile:

Auto
Alege automat.

jpeg/full/buc
Setați gama completă (0-255 în cazul luma pe 8 biți).

mpeg/tv
Setați intervalul „MPEG” (16-235 în cazul luma pe 8 biți).

force_original_aspect_raport
Activați scăderea sau creșterea lățimii sau înălțimii video de ieșire, dacă este necesar pentru a păstra
raportul de aspect original. Valori posibile:

dezactivați
Scalați videoclipul așa cum este specificat și dezactivați această funcție.

scădea
Dimensiunile video de ieșire vor fi reduse automat dacă este necesar.

creşte
Dimensiunile video de ieșire vor crește automat dacă este necesar.

Un exemplu util al acestei opțiuni este atunci când cunoașteți maximul unui anumit dispozitiv
rezoluția permisă, puteți utiliza aceasta pentru a limita ieșirea video la aceea, în timp ce
păstrând raportul de aspect. De exemplu, dispozitivul A permite redarea 1280x720, iar dvs
videoclipul este 1920x800. Folosind această opțiune (setați-o să scadă) și specificând 1280x720 la
linia de comandă face ieșirea 1280x533.

Vă rugăm să rețineți că acesta este un lucru diferit de specificarea -1 pentru w or h, tu încă
trebuie să specificați rezoluția de ieșire pentru ca această opțiune să funcționeze.

Valorile w și h opțiunile sunt expresii care conțin următoarele constante:

în W
în_h
Lățimea și înălțimea de intrare

iw
ih Acestea sunt la fel ca în W și în_h.

out_w
out_h
Lățimea și înălțimea de ieșire (scalată).

ow
oh Acestea sunt la fel ca out_w și out_h

a La fel ca iw / ih

SAR raportul de aspect al eșantionului de intrare

da Raportul de aspect al afișajului de intrare. Calculat din „(iw / ih) * sar”.

hsub
vsub
valorile subeșantioanelor cromatice de intrare orizontale și verticale. De exemplu pentru pixel
format „yuv422p” hsub este 2 și vsub este 1.

ohsub
ovsub
valorile subeșantionului cromatic de ieșire orizontală și verticală. De exemplu pentru pixel
format „yuv422p” hsub este 2 și vsub este 1.

Exemple

· Scalați videoclipul de intrare la o dimensiune de 200x100

scară=w=200:h=100

Acest lucru este echivalent cu:

scara=200:100

sau:

scara=200x100

· Specificați o abreviere de dimensiune pentru dimensiunea de ieșire:

scale=qcif

care poate fi scris și ca:

scară=dimensiune=qcif

· Scalați intrarea la 2x:

scara=w=2*iw:h=2*ih

· Cele de mai sus sunt identice cu:

scară=2*in_w:2*in_h

· Scalați intrarea la 2x cu scalare întrețesată forțată:

scară=2*iw:2*ih:interl=1

· Scalați intrarea la jumătate de dimensiune:

scară=w=iw/2:h=ih/2

· Măriți lățimea și setați înălțimea la aceeași dimensiune:

scara=3/2*iw:ow

· Căutați armonia greacă:

scară=iw:1/PHI*iw
scară=ih*PHI:ih

· Măriți înălțimea și setați lățimea la 3/2 din înălțime:

scara=w=3/2*oh:h=3/5*ih

· Măriți dimensiunea, făcând dimensiunea un multiplu al valorilor subeșantionului cromatic:

scale="trunc(3/2*iw/hsub)*hsub:trunc(3/2*ih/vsub)*vsub"

· Măriți lățimea până la maximum 500 de pixeli, păstrând același raport de aspect ca și
intrare:

scară=w='min(500\, iw*3/2):h=-1'

Comenzi

Acest filtru acceptă următoarele comenzi:

lățime, w
înălţime, h
Setați expresia dimensiunii video de ieșire. Comanda acceptă aceeași sintaxă a lui
opțiunea corespunzătoare.

Dacă expresia specificată nu este validă, se păstrează la valoarea sa curentă.

scara2ref
Scalați (redimensionați) videoclipul de intrare, pe baza unui videoclip de referință.

Consultați filtrul de scară pentru opțiunile disponibile, scale2ref acceptă același lucru, dar folosește
video de referință în loc de intrarea principală ca bază.

Exemple

· Scalați un flux de subtitrare pentru a se potrivi cu dimensiunea videoclipului principal înainte de suprapunere

„scale2ref[b][a];[a][b]overlay”

câmpuri separate
„Câmpurile separate” preia o intrare video bazată pe cadre și împarte fiecare cadru în el
câmpurile componente, producând un nou clip de jumătate de înălțime cu de două ori rata de cadre și de două ori
numărul de cadre.

Acest filtru folosește informații despre dominanța câmpului în cadru pentru a decide care dintre fiecare pereche
câmpuri pentru a plasa primul în rezultat. Dacă se folosește greșit setfield se filtrează înainte
filtrul „câmpuri separate”.

setdar, setsar
Filtrul „setdar” setează raportul de aspect al afișajului pentru videoclipul de ieșire al filtrului.

Acest lucru se face prin modificarea raportului de aspect al eșantionului (aka Pixel) specificat, în conformitate cu
următoarea ecuație:

= / *

Rețineți că filtrul „setdar” nu modifică dimensiunile pixelilor videoclipului
cadru. De asemenea, raportul de aspect al afișajului setat de acest filtru poate fi modificat de filtrele ulterioare
în filterchain, de exemplu, în caz de scalare sau dacă un alt filtru „setdar” sau „setsar” este
aplicat.

Filtrul „setsar” setează raportul de aspect al eșantionului (alias pixeli) pentru videoclipul de ieșire al filtrului.

Rețineți că, ca urmare a aplicării acestui filtru, aspectul de afișare a ieșirii
raportul se va modifica conform ecuației de mai sus.

Rețineți că raportul de aspect al eșantionului setat de filtrul „setsar” poate fi modificat de
filtre ulterioare în filterchain, de exemplu dacă un alt filtru „setsar” sau „setdar” este
aplicat.

Acceptă următorii parametri:

r, raport, da ("setdar" numai), SAR ("setsar" numai)
Setați raportul de aspect utilizat de filtru.

Parametrul poate fi un șir numeric în virgulă mobilă, o expresie sau un șir al lui
formă o:zi, În cazul în care o și zi sunt numărătorul și numitorul raportului de aspect.
Dacă parametrul nu este specificat, se presupune valoarea „0”. În cazul în care formularul
"o:zi" este folosit, caracterul ":" ar trebui să fie eliminat.

max Setați valoarea maximă întreagă de utilizat pentru exprimarea numărătorului și numitorului când
reducerea raportului de aspect exprimat la un rațional. Valoarea implicită este 100.

Parametrul SAR este o expresie care conține următoarele constante:

E, PI, PHI
Acestea sunt valori aproximative pentru constantele matematice e (numărul lui Euler), pi
(greacă pi) și phi (rația de aur).

w, h
Lățimea și înălțimea de intrare.

a Acestea sunt la fel ca w / h.

SAR Raportul de aspect al eșantionului de intrare.

da Raportul de aspect al afișajului de intrare. Este la fel ca (w / h) * SAR.

hsub, vsub
Valorile sub-eșantionului cromatic orizontal și vertical. De exemplu, pentru formatul de pixeli
"yuv422p" hsub este 2 și vsub este 1.

Exemple

· Pentru a modifica raportul de aspect al afișajului la 16:9, specificați una dintre următoarele:

setdar=dar=1.77777
setdar=dar=16/9
setdar=dar=1.77777

· Pentru a modifica raportul de aspect al eșantionului la 10:11, specificați:

setsar=sar=10/11

· Pentru a seta un raport de aspect de afișare de 16:9 și a specifica o valoare întreagă maximă de 1000 in
reducerea raportului de aspect, utilizați comanda:

setdar=raport=16/9:max=1000

setfield
Câmp de forță pentru cadrul video de ieșire.

Filtrul „setfield” marchează câmpul de tip întrețesut pentru cadrele de ieșire. Aceasta nu
modifica cadrul de intrare, dar setează doar proprietatea corespunzătoare, care afectează modul în care
cadru este tratat prin următoarele filtre (de exemplu, „fieldorder” sau „yadif”).

Filtrul acceptă următoarele opțiuni:

mod
Valorile disponibile sunt:

Auto
Păstrați aceeași proprietate a câmpului.

BFF Marcați cadrul ca jos-câmp-întâi.

tff Marcați cadrul ca pe câmpul de sus, primul.

prog
Marcați cadrul ca progresiv.

ShowInfo
Afișați o linie care conține diverse informații pentru fiecare cadru video de intrare. Video-ul de intrare este
nemodificat.

Linia afișată conține o secvență de perechi cheie/valoare ale formularului cheie:valoare.

Următoarele valori sunt afișate în rezultat:

n Numărul (secvențial) al cadrului de intrare, începând de la 0.

pct Timpul de prezentare al cadrului de intrare, exprimat ca număr de bază de timp
unitati. Unitatea de bază de timp depinde de pad-ul de intrare al filtrului.

pts_time
Timpul de prezentare al cadrului de intrare, exprimat ca număr de secunde.

post Poziția cadrului în fluxul de intrare sau -1 dacă această informație este
indisponibil și/sau lipsit de sens (de exemplu, în cazul unui videoclip sintetic).

fmt Numele formatului de pixeli.

SAR Raportul de aspect al eșantionului cadrului de intrare, exprimat sub formă o/zi.

s Dimensiunea cadrului de intrare. Pentru sintaxa acestei opțiuni, verificați "Video mărimea"
secțiune in il ffmpeg-utils manual.

i Tipul de mod întrețesut („P” pentru „progresiv”, „T” pentru câmpul superior mai întâi, „B” pentru
câmpul de jos primul).

iskey
Acesta este 1 dacă cadrul este un cadru cheie, 0 în caz contrar.

tip
Tipul de imagine al cadrului de intrare („I” pentru un cadru I, „P” pentru un cadru P, „B” pentru un
Cadru B sau "?" pentru un tip necunoscut). Consultați, de asemenea, documentația
enumerarea „AVPictureType” și a funcției „av_get_picture_type_char” definită în
libavutil/avutil.h.

checksum
Suma de control Adler-32 (imprimată în hexazecimal) a tuturor planurilor cadrului de intrare.

plane_checksum
Suma de control Adler-32 (imprimată în hexazecimal) a fiecărui plan al cadrului de intrare,
exprimat sub forma „[c0 c1 c2 c3]".

paleta de prezentare
Afișează paleta de 256 de culori a fiecărui cadru. Acest filtru este relevant doar pentru pal8 pixel
format cadre.

Acceptă următoarea opțiune:

s Setați dimensiunea casetei utilizate pentru a reprezenta o intrare de culoare a paletei. Implicit este 30 (pentru
o casetă de pixeli „30x30”).

shuffleplanes
Reordonați și/sau duplicați avioanele video.

Acceptă următorii parametri:

map0
Indicele planului de intrare care va fi utilizat ca prim plan de ieșire.

map1
Indicele planului de intrare care va fi utilizat ca al doilea plan de ieșire.

map2
Indicele planului de intrare care va fi utilizat ca al treilea plan de ieșire.

map3
Indicele planului de intrare care va fi utilizat ca al patrulea plan de ieșire.

Primul plan are indicele 0. Implicit este păstrarea nemodificată a intrării.

Schimbați al doilea și al treilea plan al intrării:

ffmpeg -i INPUT -vf shuffleplanes=0:2:1:3 IEȘIRE

statistici de semnal
Evaluați diferite valori vizuale care ajută la determinarea problemelor asociate cu
digitizarea mediilor video analogice.

În mod implicit, filtrul va înregistra aceste valori de metadate:

YMIN
Afișați valoarea Y minimă conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

YLOW
Afișați valoarea Y la percentila de 10% din cadrul de intrare. Exprimat în interval
din [0-255].

YAVG
Afișați valoarea medie Y în cadrul de intrare. Exprimat în intervalul [0-255].

YHIGH
Afișați valoarea Y la percentila de 90% din cadrul de intrare. Exprimat în interval
din [0-255].

YMAX
Afișează valoarea Y maximă conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

UMIN
Afișați valoarea minimă U conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

ULOW
Afișați valoarea U la percentila de 10% în cadrul de intrare. Exprimat în interval
din [0-255].

UAVG
Afișați valoarea medie U în cadrul de intrare. Exprimat în intervalul [0-255].

UHIGH
Afișați valoarea U la percentila de 90% în cadrul de intrare. Exprimat în interval
din [0-255].

UMAX
Afișează valoarea U maximă conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

VMIN
Afișați valoarea V minimă conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

VLOW
Afișați valoarea V la percentila de 10% din cadrul de intrare. Exprimat în interval
din [0-255].

VAVG
Afișați valoarea medie V în cadrul de intrare. Exprimat în intervalul [0-255].

VHIGH
Afișați valoarea V la percentila de 90% din cadrul de intrare. Exprimat în interval
din [0-255].

Extensie VMAX
Afișați valoarea maximă V conținută în cadrul de intrare. Exprimat în intervalul de
[0-255].

SATMIN
Afișați valoarea minimă de saturație conținută în cadrul de intrare. Exprimat în
interval de [0-~181.02].

SATLOW
Afișați valoarea saturației la percentila de 10% din cadrul de intrare. Exprimat
în intervalul [0-~181.02].

SATAVG
Afișează valoarea medie a saturației în cadrul de intrare. Exprimat în intervalul de
[0-~181.02].

SATHIGH
Afișați valoarea saturației la percentila de 90% din cadrul de intrare. Exprimat
în intervalul [0-~181.02].

SATMAX
Afișează valoarea maximă de saturație conținută în cadrul de intrare. Exprimat în
interval de [0-~181.02].

HUEMED
Afișați valoarea mediană pentru nuanță în cadrul de intrare. Exprimat în intervalul de
[0-360].

HUEAVG
Afișați valoarea medie pentru nuanță în cadrul de intrare. Exprimat în intervalul de
[0-360].

YDIF
Afișați media diferenței valorii eșantionului dintre toate valorile planului Y în
cadrul curent și valorile corespunzătoare ale cadrului de intrare anterior. Exprimat în
interval de [0-255].

UDIF
Afișați media diferenței valorii eșantionului dintre toate valorile planului U în
cadrul curent și valorile corespunzătoare ale cadrului de intrare anterior. Exprimat în
interval de [0-255].

VDIF
Afișați media diferenței valorii eșantionului dintre toate valorile planului V în
cadrul curent și valorile corespunzătoare ale cadrului de intrare anterior. Exprimat în
interval de [0-255].

Filtrul acceptă următoarele opțiuni:

Stat
afară Stat specificați o formă suplimentară de analiză a imaginii. afară ieșire video cu
tipul specificat de pixel evidențiat.

Ambele opțiuni acceptă următoarele valori:

tout
Identifica temporal valorile extreme pixeli. A temporal anormal este un pixel spre deosebire de
pixeli vecini ai aceluiasi camp. Exemple de valori aberante temporale includ
rezultate ale întreruperilor video, înfundarea capului sau probleme de urmărire a benzilor.

vrep
Identifica vertical linie repetiţie. Repetarea liniei verticale include rânduri similare
de pixeli dintr-un cadru. În born-digital video repetarea liniei verticale este
comun, dar acest model este neobișnuit în videoclipurile digitizate dintr-o sursă analogică.
Când apare în video care rezultă din digitizarea unei surse analogice, acesta
poate indica ascunderea de la un compensator de abandon.

aduce
Identificați pixelii care nu se încadrează în intervalul legal de difuzare.

culoare, c
Setați culoarea de evidențiere pentru afară opțiune. Culoarea implicită este galbenă.

Exemple

· Date de ieșire ale diferitelor valori video:

ffprobe -f lavfi movie=example.mov,signalstats="stat=tout+vrep+brng" -show_frames

· Date specifice de ieșire despre valorile minime și maxime ale planului Y pe cadru:

ffprobe -f lavfi movie=example.mov,signalstats -show_entries frame_tags=lavfi.signalstats.YMAX,lavfi.signalstats.YMIN

· Redați videoclipuri în timp ce evidențiați pixelii care se află în afara domeniului de difuzare în roșu.

ffplay example.mov -vf signalstats="out=brng:color=red"

· Redare video cu metadate ale statisticilor de semnal desenate peste cadru.

ffplay example.mov -vf signalstats=stat=brng+vrep+tout,drawtext=fontfile=FreeSerif.ttf:textfile=signalstat_drawtext.txt

Conținutul semnalstat_drawtext.txt utilizat în comandă este:

timp %{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})
saturație maximă: %{metadata:lavfi.signalstats.SATMAX}

smartblur
Estompați videoclipul de intrare fără a afecta contururile.

Acceptă următoarele opțiuni:

luma_radius, lr
Setați raza luminii. Valoarea opțiunii trebuie să fie un număr flotant în intervalul [0.1,5.0]
care specifică varianța filtrului gaussian utilizat pentru a estompa imaginea (mai lent dacă
mai mare). Valoarea implicită este 1.0.

puterea_lumă, ls
Setați puterea lumii. Valoarea opțiunii trebuie să fie un număr flotant în intervalul [-1.0,1.0]
care configurează estomparea. O valoare inclusă în [0.0,1.0] va estompa imaginea
în timp ce o valoare inclusă în [-1.0,0.0] va accentua imaginea. Valoarea implicită este 1.0.

prag_lumă, lt
Setați pragul de lumina utilizat ca coeficient pentru a determina dacă un pixel ar trebui să fie
estompată sau nu. Valoarea opțiunii trebuie să fie un număr întreg în intervalul [-30,30]. O valoare de
0 va filtra toată imaginea, o valoare inclusă în [0,30] va filtra zonele plate și a
valoarea inclusă în [-30,0] va filtra marginile. Valoarea implicită este 0.

chroma_radius, cr
Setați raza cromatică. Valoarea opțiunii trebuie să fie un număr flotant în intervalul [0.1,5.0]
care specifică varianța filtrului gaussian utilizat pentru a estompa imaginea (mai lent dacă
mai mare). Valoarea implicită este 1.0.

chroma_strength, cs
Setați puterea cromatică. Valoarea opțiunii trebuie să fie un număr flotant în interval
[-1.0,1.0] care configurează estomparea. O valoare inclusă în [0.0,1.0] va estompa
imagine, în timp ce o valoare inclusă în [-1.0,0.0] va clarifica imaginea. Valoarea implicită este
1.0.

chroma_threshold, ct
Setați pragul de croma utilizat ca coeficient pentru a determina dacă un pixel ar trebui să fie
estompată sau nu. Valoarea opțiunii trebuie să fie un număr întreg în intervalul [-30,30]. O valoare de
0 va filtra toată imaginea, o valoare inclusă în [0,30] va filtra zonele plate și a
valoarea inclusă în [-30,0] va filtra marginile. Valoarea implicită este 0.

Dacă o opțiune de croma nu este setată în mod explicit, valoarea de lumina corespunzătoare este setată.

ssim
Obțineți SSIM (Metrica de similaritate structurală) între două videoclipuri de intrare.

Acest filtru preia două videoclipuri de intrare, prima intrare este considerată „principală”
sursă și este transmis neschimbat la ieșire. A doua intrare este folosită ca „referință”
video pentru calcularea SSIM.

Ambele intrări video trebuie să aibă aceeași rezoluție și format de pixeli pentru ca acest filtru să funcționeze
corect. De asemenea, se presupune că ambele intrări au același număr de cadre, care sunt
comparat unul câte unul.

Filtrul stochează SSIM calculat pentru fiecare cadru.

Urmează descrierea parametrilor acceptați.

stats_file, f
Dacă este specificat, filtrul va folosi fișierul numit pentru a salva SSIM-ul fiecărui individ
cadru.

Fișierul tipărit dacă fişier_statistici este selectat, conține o secvență de perechi cheie/valoare ale
formă cheie:valoare pentru fiecare cuplu comparat de cadre.

Urmează o descriere a fiecărui parametru afișat:

n numărul secvenţial al cadrului de intrare, începând de la 1

Y, U, V, R, G, B
SSIM al cadrelor comparate pentru componenta specificată de sufix.

TOATE SSIM al cadrelor comparate pentru întregul cadru.

dB La fel ca mai sus, dar în reprezentare dB.

De exemplu:

movie=ref_movie.mpg, setpts=PTS-STARTPTS [principal];
[principal][ref] ssim="stats_file=stats.log" [out]

În acest exemplu, fișierul de intrare procesat este comparat cu fișierul de referință
ref_movie.mpg. SSIM-ul fiecărui cadru individual este stocat în statistici.log.

Un alt exemplu cu psnr și ssim în același timp:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim;[0:v][1:v]psnr" -f null -

stereo3d
Conversia între diferite formate de imagine stereoscopică.

Filtrele acceptă următoarele opțiuni:

in Setați formatul de imagine stereoscopic de intrare.

Valorile disponibile pentru formatele de imagine de intrare sunt:

sbsl
unul lângă altul paralel (ochiul stâng stânga, ochiul drept dreapta)

sbsr
ochi încrucișat unul lângă altul (ochiul drept stânga, ochiul stâng dreapta)

sbs2l
unul lângă altul paralel cu rezoluție pe jumătate (ochiul stâng stânga, ochiul drept dreapta)

sbs2r
ochi încrucișat alăturat cu rezoluție la jumătate de lățime (ochiul drept stânga, ochiul stâng dreapta)

sora deasupra-jos (ochiul stâng deasupra, ochiul drept dedesubt)

abr sus-dedesubt (ochiul drept deasupra, ochiul stâng dedesubt)

ab2l
deasupra dedesubt cu rezoluție la jumătate de înălțime (ochiul stâng deasupra, ochiul drept dedesubt)

ab2r
deasupra dedesubt cu rezoluție la jumătate de înălțime (ochiul drept deasupra, ochiul stâng dedesubt)

al cadre alternante (ochiul stâng primul, ochiul drept al doilea)

ar cadre alternante (ochiul drept primul, ochiul stâng al doilea)

Valoarea implicită este sbsl.

afară Setați formatul de imagine stereoscopic de ieșire.

Valorile disponibile pentru formatele de imagine de ieșire sunt toate formatele de intrare, precum și:

arbg
anaglifă roșu/albastru gri (filtru roșu pe ochiul stâng, filtru albastru pe ochiul drept)

argg
anaglifă roșu/verde gri (filtru roșu pe ochiul stâng, filtru verde pe ochiul drept)

arcg
anaglif roșu/gri cyan (filtru roșu pe ochiul stâng, filtru cyan pe ochiul drept)

arc
anaglifă roșu/cian semicolorat (filtru roșu pe ochiul stâng, filtru cyan pe ochiul drept)

arcc
culoare anaglifă roșu/cian (filtru roșu pe ochiul stâng, filtru cyan pe ochiul drept)

arcd
Culoare roșu/cian anaglifă optimizată cu proiecția celor mai mici pătrate a lui Dubois (roșu
filtru pe ochiul stâng, filtru cyan pe ochiul drept)

agmg
anaglif verde/magenta gri (filtru verde pe ochiul stâng, filtru magenta pe dreapta
ochi)

agmh
anaglif verde/magenta semicolorat (filtru verde pe ochiul stâng, filtru magenta activat
ochiul drept)

agmc
anaglifă verde/magenta (filtru verde pe ochiul stâng, filtru magenta pe dreapta
ochi)

agmd
Culoare anaglif verde/magenta optimizată cu proiecția celor mai mici pătrate a lui Dubois
(filtru verde pe ochiul stâng, filtru magenta pe ochiul drept)

aybg
anaglif galben/albastru gri (filtru galben pe ochiul stâng, filtru albastru pe ochiul drept)

aybh
anaglifă galben/albastru semicolorat (filtru galben pe ochiul stâng, filtru albastru pe dreapta
ochi)

aybc
anaglifă galben/albastru (filtru galben pe ochiul stâng, filtru albastru pe ochiul drept)

aybd
Culoare anaglifă galben/albastru optimizată cu proiecția celor mai mici pătrate a lui Dubois
(filtru galben pe ochiul stâng, filtru albastru pe ochiul drept)

IRL rânduri intercalate (ochiul stâng are rândul de sus, ochiul drept începe pe rândul următor)

irr rânduri intercalate (ochiul drept are rândul de sus, ochiul stâng începe pe rândul următor)

ml ieșire mono (doar ochiul stâng)

mr ieșire mono (doar ochiul drept)

Valoarea implicită este arcd.

Exemple

· Convertiți video de intrare unul lângă altul paralel cu anaglif galben/albastru dubois:

stereo3d=sbsl:aybd

· Conversia video de intrare de sus de jos (ochiul stâng deasupra, ochiul drept dedesubt) în alăturat
cruce.

stereo3d=abl:sbsr

spp
Aplicați un filtru simplu de postprocesare care comprimă și decomprimă imaginea la câteva
(sau - în cazul calitate nivelul 6 - toate) schimbă și medie rezultatele.

Filtrul acceptă următoarele opțiuni:

calitate
Setați calitatea. Această opțiune definește numărul de niveluri pentru mediere. Acceptă o
întreg în intervalul 0-6. Dacă este setat la 0, filtrul nu va avea niciun efect. O valoare de 6
înseamnă calitate superioară. Pentru fiecare creștere a acelei valori, viteza scade cu un factor
de aproximativ 2. Valoarea implicită este 3.

qp Forțați un parametru de cuantizare constant. Dacă nu este setat, filtrul va folosi QP de la
fluxul video (dacă este disponibil).

mod
Setați modul de prag. Modurile disponibile sunt:

greu
Setați un prag dur (implicit).

moale
Setați un prag moale (efect mai bun de de-ringing, dar probabil mai neclar).

use_bframe_qp
Activați utilizarea QP din cadrul B-Frames dacă este setată la 1. Utilizarea acestei opțiuni poate cauza
pâlpâie, deoarece cadrele B au adesea QP mai mare. Implicit este 0 (nu este activat).

subtitrari
Desenați subtitrări deasupra videoclipului de intrare folosind biblioteca libass.

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu „--enable-libass”.
Acest filtru necesită, de asemenea, o construcție cu libavcodec și libavformat pentru a converti fișierul trecut
fișierul de subtitrări în formatul de subtitrări ASS (Advanced Substation Alpha).

Filtrul acceptă următoarele opțiuni:

nume de fișier, f
Setați numele fișierului pentru a fi citit. Trebuie specificat.

Dimensiunea originală
Specificați dimensiunea videoclipului original, videoclipul pentru care a fost compus fișierul ASS.
Pentru sintaxa acestei opțiuni, verificați "Video mărimea" secțiune in il ffmpeg-utils
manual. Din cauza unei proiectări greșite în aritmetica raportului de aspect ASS, acest lucru este necesar
scala corect fonturile dacă raportul de aspect a fost modificat.

fontsdir
Setați o cale de director care să conțină fonturi care pot fi utilizate de filtru. Aceste fonturi
va fi folosit în plus față de orice folosește furnizorul de fonturi.

charenc
Setați codificarea caracterelor de intrare pentru subtitrări. numai filtrul „subtitrări”. Util doar dacă nu
UTF-8.

stream_index, si
Setați indexul fluxului de subtitrări. numai filtrul „subtitrări”.

stil_fort
Ignorați stilul implicit sau parametrii de informații despre script ai subtitrarilor. Acceptă un șir
care conține cupluri în formatul stilului ASS „KEY=VALUE” separate prin ",".

Dacă prima cheie nu este specificată, se presupune că prima valoare specifică
nume de fișier.

De exemplu, pentru a reda fișierul sub.srt deasupra videoclipului de intrare, utilizați comanda:

subtitrări=sub.srt

care este echivalent cu:

subtitles=filename=sub.srt

Pentru a reda fluxul implicit de subtitrări din fișier video.mkv, utilizare:

subtitrări=video.mkv

Pentru a reda al doilea flux de subtitrări din acel fișier, utilizați:

subtitrări=video.mkv:si=1

Pentru a face fluxul de subtitrări din sub.srt apar în verde transparent „DejaVu Serif”, utilizați:

subtitles=sub.srt:force_style='FontName=DejaVu Serif,PrimaryColour=&HAA00FF00'

super2xsai
Scalați intrarea de 2x și uniformizați utilizând pixel art-ul Super2xSaI (Scale and Interpolate).
algoritm de scalare.

Util pentru mărirea imaginilor pixel art fără a reduce claritatea.

swapuv
Schimbați avionul U & V.

telecine
Aplicați procesul de telecine la videoclip.

Acest filtru acceptă următoarele opțiuni:

primul_câmp
top, t
câmpul de sus mai întâi

jos, b
câmpul de jos primul Valoarea implicită este „sus”.

model
Un șir de numere care reprezintă modelul derulant pe care doriți să îl aplicați. Implicit
valoarea este 23.

Câteva modele tipice:

Ieșire NTSC (30i):
27.5p: 32222
24p: 23 (clasic)
24p: 2332 (de preferat)
20p: 33
18p: 334
16p: 3444

Ieșire PAL (25i):
27.5p: 12222
24p: 222222222223 ("Euro pulldown")
16.67p: 33
16p: 33333334

miniatura
Selectați cel mai reprezentativ cadru dintr-o anumită secvență de cadre consecutive.

Filtrul acceptă următoarele opțiuni:

n Setați dimensiunea lotului de cadre de analizat; într-un set de n cadre, filtrul va alege unul
dintre ele și apoi se ocupă de următorul lot de n cadre până la final. Implicit este 100.

Deoarece filtrul ține evidența întregii secvențe de cadre, este mai mare n valoarea va avea ca rezultat
o utilizare mai mare a memoriei, deci nu este recomandată o valoare mare.

Exemple

· Extrage o poză la fiecare 50 de cadre:

miniatură = 50

· Exemplu complet de creare a unei miniaturi cu FFMPEG:

ffmpeg -i in.avi -vf thumbnail,scale=300:200 -frames:v 1 out.png

ţiglă
Împreună mai multe cadre succesive.

Filtrul acceptă următoarele opțiuni:

aspect
Setați dimensiunea grilei (adică numărul de linii și coloane). Pentru sintaxa acesteia
opțiune, verificați "Video mărimea" secțiune in il ffmpeg-utils manual.

nb_frames
Setați numărul maxim de cadre de randat în zona dată. Trebuie să fie mai mic decât sau
egal cu wxh. Valoarea implicită este 0, ceea ce înseamnă că va fi folosită toată zona.

margine
Setați marginea marginii exterioare în pixeli.

umplutură
Setați grosimea marginii interioare (adică numărul de pixeli dintre cadre). Pentru mai mult
opțiuni avansate de umplutură (cum ar fi valori diferite pentru margini), consultați
pad filtru video.

culoare
Specificați culoarea zonei neutilizate. Pentru sintaxa acestei opțiuni, bifați „Culoare”
secțiunea din manualul ffmpeg-utils. Valoarea implicită a culoare este negru".

Exemple

· Produceți dale PNG de 8x8 pentru toate cadrele cheie (-skip_frame fară cheie) într-un film:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale=128:72,tile=8x8' -an -vsync 0 keyframes%03d.png

-vsync 0 este necesar pentru a preveni FFMPEG de la duplicarea fiecărui cadru de ieșire la
să se adapteze la rata de cadre detectată inițial.

· Afișați 5 imagini într-o zonă de cadre „3x2”, cu 7 pixeli între ele și 2
pixeli ai marginii inițiale, folosind opțiuni mixte plate și denumite:

tile=3x2:nb_frames=5:padding=7:margin=2

împletire
Efectuați diferite tipuri de intercalare a câmpului temporal.

Cadrele sunt numărate începând de la 1, deci primul cadru de intrare este considerat impar.

Filtrul acceptă următoarele opțiuni:

mod
Specificați modul de întrețesere. Această opțiune poate fi specificată și ca valoare
singur. Vedeți mai jos o listă de valori pentru această opțiune.

Valorile disponibile sunt:

combina, 0
Mutați cadre impare în câmpul superior, chiar și în câmpul inferior, generând a
cadru cu înălțime dublă la jumătate de rată a cadrelor.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444

ieșire:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

drop_odd, 1
Se scot numai cadrele pare, cadrele impare, generând un cadru cu neschimbat
înălțime la jumătate de frame rate.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444

ieșire:
22222 44444
22222 44444
22222 44444
22222 44444

drop_even, 2
Ieșiți numai cadre impare, cadrele pare sunt eliminate, generând un cadru cu neschimbat
înălțime la jumătate de frame rate.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444

ieșire:
11111 33333
11111 33333
11111 33333
11111 33333

tampon, 3
Extindeți fiecare cadru la înălțimea maximă, dar tamponați liniile alternative cu negru, generând a
cadru cu înălțime dublă la aceeași rata de intrare a cadrelor.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444

ieșire:
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444
11111 ..... 33333 .....
..... 22222 ..... 44444

interleave_top, 4
Intercalați câmpul superior din cadrele impare cu câmpul inferior din cadrele pare,
generarea unui cadru cu înălțimea neschimbată la jumătate de rată a cadrelor.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-

ieșire:
11111 33333
22222 44444
11111 33333
22222 44444

interleave_bottom, 5
Intercalați câmpul inferior din cadrele impare cu câmpul superior din cadrele pare,
generarea unui cadru cu înălțimea neschimbată la jumătate de rată a cadrelor.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444

ieșire:
22222 44444
11111 33333
22222 44444
11111 33333

interlax2, 6
Rată dublă a cadrelor cu înălțimea neschimbată. Se introduc cadre, fiecare conţinând
al doilea câmp temporal din cadrul de intrare anterior și primul câmp temporal
din următorul cadru de intrare. Acest mod se bazează pe indicatorul top_field_first. Util
pentru afișaje video întrețesute fără sincronizare de câmp.

------> timp
Intrare:
Cadrul 1 Cadrul 2 Cadrul 3 Cadrul 4

+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444
+11111 22222 33333 44444

ieșire:
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

Valorile numerice sunt depreciate, dar sunt acceptate din motive de compatibilitate inversă.

Modul implicit este „imbinare”.

steaguri
Specificați steaguri care influențează procesul de filtrare.

Valoare disponibila pentru steaguri este:

filtru_pass_jos, vlfp
Activați filtrarea verticală trece-jos în filtru. Filtrarea verticală trece-jos este
necesar la crearea unei destinaţii întreţesute dintr-o sursă progresivă care
conține detalii verticale de înaltă frecvență. Filtrarea va reduce interlatarea „twitter”
și modelarea Moire.

Filtrarea trece-jos verticală poate fi activată numai pentru mod interleave_top și
interleave_bottom.

transpune
Transpuneți rândurile cu coloane în videoclipul de intrare și opțional întoarceți-l.

Acceptă următorii parametri:

dir Specificați direcția de transpunere.

Poate presupune următoarele valori:

0, 4, cclock_flip
Rotiți cu 90 de grade în sens invers acelor de ceasornic și răsturnați vertical (implicit), adică:

LR Ll
. . -> . .
lr Rr

1, 5, ceas
Rotiți cu 90 de grade în sensul acelor de ceasornic, adică:

LR lL
. . -> . .
lr rR

2, 6, ceas
Rotiți cu 90 de grade în sens invers acelor de ceasornic, adică:

LR Rr
. . -> . .
lr Ll

3, 7, clock_flip
Rotiți cu 90 de grade în sensul acelor de ceasornic și răsturnați vertical, adică:

LR rR
. . -> . .
lr lL

Pentru valori între 4-7, transpunerea se face numai dacă geometria video de intrare este
portret și nu peisaj. Aceste valori sunt depreciate, opțiunea „passthrough”.
ar trebui folosit în schimb.

Valorile numerice sunt depreciate și ar trebui abandonate în favoarea constantelor simbolice.

A trece prin
Nu aplicați transpunerea dacă geometria de intrare se potrivește cu cea specificată de
valoare specificată. Acceptă următoarele valori:

nici unul
Aplicați întotdeauna transpunerea.

portret
Păstrează geometria portretului (când înălțime >= lățime).

peisaj
Păstrează geometria peisajului (când lățime >= înălțime).

Valoarea implicită este „niciunul”.

De exemplu, pentru a roti cu 90 de grade în sensul acelor de ceasornic și pentru a păstra aspectul portret:

transpose=dir=1:passthrough=portret

Comanda de mai sus poate fi specificată și ca:

transpose=1:portret

tunde
Tăiați intrarea astfel încât ieșirea să conțină o subparte continuă a intrării.

Acceptă următorii parametri:

Începe
Specificați ora începerii secțiunii păstrate, adică cadrul cu marcajul de timp
Începe va fi primul cadru din ieșire.

capăt Specificați timpul primului cadru care va fi abandonat, adică cadrul imediat
precedându-l pe cel cu marcaj temporal capăt va fi ultimul cadru din ieșire.

start_pts
Aceasta este la fel ca Începe, cu excepția faptului că această opțiune setează marcajul de timp de început în baza de timp
unități în loc de secunde.

end_pts
Aceasta este la fel ca capăt, cu excepția că această opțiune setează marcajul de timp de sfârșit în unități de bază de timp
în loc de secunde.

durată
Durata maximă a ieșirii în secunde.

start_frame
Numărul primului cadru care ar trebui să fie transmis la ieșire.

end_frame
Numărul primului cadru care ar trebui să fie eliminat.

Începe, capăt, și durată sunt exprimate ca specificații de durată de timp; vedea il Timp
durată secțiune in il ffmpeg-utils(1) manual pentru sintaxa acceptată.

Rețineți că primele două seturi de opțiuni de început/sfârșit și durată opțiunea uită-te la
marca temporală a cadrului, în timp ce variantele _frame pur și simplu numără cadrele care trec prin
filtru. De asemenea, rețineți că acest filtru nu modifică marcajele de timp. Dacă doriți pentru
ieșiți marcajele de timp pentru a începe de la zero, introduceți un filtru setpts după filtrul de tăiere.

Dacă sunt setate mai multe opțiuni de început sau de sfârșit, acest filtru încearcă să fie lacom și să păstreze toate
cadre care se potrivesc cu cel puțin una dintre constrângerile specificate. Pentru a păstra doar partea care
se potrivește simultan cu toate constrângerile, conectează mai multe filtre de tăiere.

Valorile implicite sunt astfel încât toate intrările să fie păstrate. Deci, este posibil să setați, de exemplu, doar
valori finale pentru a păstra totul înainte de ora specificată.

Exemple:

· Eliminați totul, cu excepția celui de-al doilea minut de intrare:

ffmpeg -i INPUT -vf trim=60:120

· Păstrați doar prima secundă:

ffmpeg -i INPUT -vf trim=duration=1

neascuțit
Ascuțiți sau estompați videoclipul de intrare.

Acceptă următorii parametri:

luma_msize_x, lx
Setați dimensiunea orizontală a matricei luma. Trebuie să fie un număr întreg impar între 3 și 63
valoarea implicită este 5.

lumina_msize_y, ly
Setați dimensiunea verticală a matricei lumatice. Trebuie să fie un număr întreg impar între 3 și 63
valoarea implicită este 5.

suma_lumă, la
Setați puterea efectului de luma. Trebuie să fie un număr în virgulă mobilă, valori rezonabile
așezați între -1.5 și 1.5.

Valorile negative vor estompa videoclipul de intrare, în timp ce valorile pozitive îl vor ascuți, a
valoarea zero va dezactiva efectul.

Valoarea implicită este 1.0.

chroma_msize_x, cx
Setați dimensiunea orizontală a matricei cromatice. Trebuie să fie un număr întreg impar între 3 și 63
valoarea implicită este 5.

chroma_msize_y, cy
Setați dimensiunea verticală a matricei cromatice. Trebuie să fie un număr întreg impar între 3 și 63
valoarea implicită este 5.

chroma_amount, ca
Setați puterea efectului cromatic. Trebuie să fie un număr în virgulă mobilă, valori rezonabile
așezați între -1.5 și 1.5.

Valorile negative vor estompa videoclipul de intrare, în timp ce valorile pozitive îl vor ascuți, a
valoarea zero va dezactiva efectul.

Valoarea implicită este 0.0.

opencl
Dacă este setat la 1, specificați utilizarea capabilităților OpenCL, disponibile numai dacă FFmpeg a fost
configurat cu „--enable-opencl”. Valoarea implicită este 0.

Toți parametrii sunt opționali și implicit la echivalentul șirului „5:5:1.0:5:5:0.0”.

Exemple

· Aplicați un efect puternic de ascuțire a luma:

unsharp=luma_msize_x=7:luma_msize_y=7:luma_amount=2.5

· Aplicați o estompare puternică atât a parametrilor de lumina cât și a parametrilor cromatici:

unsharp=7:7:-2:7:7:-2

uspp
Aplicați un filtru de postprocesare ultra lent/simplu care comprimă și decomprimă imaginea
la mai multe (sau - în cazul calitate nivelul 8 - toate) schimbă și medie rezultatele.

Modul în care acesta diferă de comportamentul spp este că uspp codifică și decodifică de fapt fiecare
caz cu libavcodec Snow, în timp ce spp utilizează un DCT simplificat intra doar 8x8 similar cu
MJPEG.

Filtrul acceptă următoarele opțiuni:

calitate
Setați calitatea. Această opțiune definește numărul de niveluri pentru mediere. Acceptă o
întreg în intervalul 0-8. Dacă este setat la 0, filtrul nu va avea niciun efect. O valoare de 8
înseamnă calitate superioară. Pentru fiecare creștere a acelei valori, viteza scade cu un factor
de aproximativ 2. Valoarea implicită este 3.

qp Forțați un parametru de cuantizare constant. Dacă nu este setat, filtrul va folosi QP de la
fluxul video (dacă este disponibil).

vectorscope
Afișați valorile a 2 componente de culoare în graficul bidimensional (care se numește a
vectorscop).

Acest filtru acceptă următoarele opțiuni:

mod, m
Setați modul vectorscop.

Acceptă următoarele valori:

gri
Valorile de gri sunt afișate pe grafic, luminozitatea mai mare înseamnă că mai mulți pixeli au același lucru
valoarea culorii componentei în locația din grafic. Acesta este modul implicit.

culoare
Valorile gri sunt afișate pe grafic. Valorile pixelilor din jur care nu sunt
prezente în cadrul video sunt desenate în gradient de 2 componente de culoare care sunt setate
prin opțiunea „x” și „y”.

color2
Valorile reale ale componentelor de culoare prezente în cadrul video sunt afișate pe grafic.

color3
Similar cu culoarea2, dar o frecvență mai mare a acelorași valori „x” și „y” pe grafic
crește valoarea unei alte componente de culoare, care este luminanța în mod implicit
de „x” și „y”.

color4
Culorile reale prezente în cadrul video sunt afișate pe grafic. Dacă două diferite
culorile mapează la aceeași poziție pe grafic, apoi colorează cu valoarea mai mare a componentei nu
prezent în grafic este ales.

x Setați ce componentă de culoare va fi reprezentată pe axa X. Implicit este 1.

y Setați ce componentă de culoare va fi reprezentată pe axa Y. Implicit este 2.

intensitate, i
Setați intensitatea, utilizată de modurile: gri, culoare și culoare3 pentru creșterea luminozității
componenta de culoare care reprezintă frecvența locației (X, Y) în grafic.

plic, e
nici unul
Fără plic, acesta este implicit.

clipă
Plicul instantaneu, chiar și cel mai întunecat un singur pixel vor fi evidențiate clar.

vârf
Țineți valorile maxime și minime prezentate în grafic în timp. În felul acesta poți
găsește în continuare valori în afara intervalului, fără a te uita constant la vectorscop.

vârf+instant
Peak și plicul instant combinate împreună.

vidstabdetect
Analizați stabilizarea/deshakingul video. Efectuați trecerea 1 din 2, vezi vidstabtransform pentru trecere
2.

Acest filtru generează un fișier cu informații relative de translație și rotație
despre cadrele ulterioare, care este apoi folosit de către vidstabtransform filtru.

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu
„--enable-libvidstab”.

Acest filtru acceptă următoarele opțiuni:

rezultat
Setați calea către fișierul folosit pentru a scrie informațiile despre transformări. Valoarea implicită este
transformă.trf.

tremurături
Setează cât de tremurător este videoclipul și cât de rapidă este camera. Acceptă un număr întreg în
intervalul 1-10, o valoare de 1 înseamnă tremurări mici, o valoare de 10 înseamnă tremurări puternice.
Valoarea implicită este 5.

precizie
Setați acuratețea procesului de detectare. Trebuie să fie o valoare în intervalul 1-15. A
valoarea 1 înseamnă precizie scăzută, o valoare de 15 înseamnă precizie ridicată. Valoarea implicită este 15.

dimensiunea pasului
Setați dimensiunea procesului de căutare. Regiunea din jurul minimului este scanată cu 1 pixel
rezoluţie. Valoarea implicită este 6.

mincontrast
Setați contrastul minim. Sub această valoare, un câmp de măsurare local este eliminat. Trebuie sa fie
o valoare în virgulă mobilă în intervalul 0-1. Valoarea implicită este 0.3.

trepied
Setați numărul cadrului de referință pentru modul trepied.

Dacă este activată, mișcarea cadrelor este comparată cu un cadru de referință din filtru
flux, identificat prin numărul specificat. Ideea este de a compensa toate mișcările în interior
o scenă mai mult sau mai puțin statică și păstrează vederea camerei absolut nemișcată.

Dacă este setată la 0, este dezactivată. Cadrele se numără începând de la 1.

Arăta
Afișați câmpurile și transformările în cadrele rezultate. Acceptă un număr întreg în interval
0-2. Valoarea implicită este 0, ceea ce dezactivează orice vizualizare.

Exemple

· Utilizați valorile implicite:

vidstabdetect

· Analizați filmul puternic tremurător și puneți rezultatele în fișier mytransforms.trf:

vidstabdetect=shakiness=10:accuracy=15:result="mytransforms.trf"

· Vizualizați rezultatul transformărilor interne în videoclipul rezultat:

vidstabdetect=show=1

· Analizați un videoclip cu tremurări medii folosind FFMPEG:

ffmpeg -i input -vf vidstabdetect=shakiness=5:show=1 dummy.avi

vidstabtransform
Stabilizare/deshaking video: trecere 2 din 2, vezi vidstabdetect pentru trecerea 1.

Citiți un fișier cu informații de transformare pentru fiecare cadru și aplicați/compensați-le. Împreună
cu vidstabdetect filtru aceasta poate fi folosit pentru a deshake videoclipuri. Vezi si
<http://public.hronopik.de/vid.stab>. Este important să folosiți și neascuțit filtru, vezi
de mai jos.

Pentru a activa compilarea acestui filtru, trebuie să configurați FFmpeg cu
„--enable-libvidstab”.

Opţiuni

intrare
Setați calea către fișierul folosit pentru a citi transformările. Valoarea implicită este transformă.trf.

netezirea
Setați numărul de cadre (valoare*2 + 1) utilizate pentru filtrarea trece-jos a camerei
miscarile. Valoarea implicită este 10.

De exemplu, un număr de 10 înseamnă că sunt utilizate 21 de cadre (10 în trecut și 10 în
viitor) pentru a netezi mișcarea în videoclip. O valoare mai mare duce la un videoclip mai fluid,
dar limitează accelerația camerei (mișcări pan/tilt). 0 este un caz special
unde este simulată o cameră statică.

optalgo
Setați algoritmul de optimizare a traseului camerei.

Valorile acceptate sunt:

gauss
filtru trece-jos nucleu gaussian pentru mișcarea camerei (implicit)

avg medie pe transformări

maxshift
Setați numărul maxim de pixeli pentru a traduce cadre. Valoarea implicită este -1, adică nu
limită.

maxangle
Setați unghiul maxim în radiani (grade*PI/180) pentru a roti cadrele. Valoarea implicită este -1,
adică fără limită.

cultură
Specificați cum să tratați frontierele care pot fi vizibile datorită compensării mișcării.

Valorile disponibile sunt:

păstra
păstrați informațiile despre imagine din cadrul precedent (implicit)

negru
umple chenarul negru

inversa
Inversați transformările dacă este setată la 1. Valoarea implicită este 0.

relativ
Luați în considerare transformările ca fiind relativ la cadrul anterior, dacă este setată la 1, absolută dacă este setată la 0.
Valoarea implicită este 0.

zoom
Setați procentul pentru a mări. O valoare pozitivă va avea ca rezultat un efect de mărire, unul negativ
valoare într-un efect de micșorare. Valoarea implicită este 0 (fără zoom).

optzoom
Setați mărirea optimă pentru a evita marginile.

Valorile acceptate sunt:

0 invalid

1 este determinată valoarea optimă a zoomului static (doar mișcările foarte puternice vor duce la
margini vizibile) (implicit)

2 este determinată valoarea optimă de zoom adaptiv (nu vor fi vizibile margini), vezi
viteza de zoom

Rețineți că valoarea dată la zoom se adaugă la cea calculată aici.

viteza de zoom
Setați procente pentru a mări maxim fiecare cadru (activat când optzoom este setat la 2). Gama este
de la 0 la 5, valoarea implicită este 0.25.

interpol
Specificați tipul de interpolare.

Valorile disponibile sunt:

Nu. fara interpolare

liniar
liniar numai orizontal

biliniar
liniar în ambele direcții (implicit)

bicubic
cubic în ambele direcții (lent)

trepied
Activați modul trepied virtual dacă este setat la 1, ceea ce este echivalent cu
„relativ=0:smoothing=0”. Valoarea implicită este 0.

Utilizați și opțiunea „trepied”. vidstabdetect.

depana
Creșteți verbozitatea jurnalului dacă este setată la 1. De asemenea, mișcările globale detectate sunt scrise
fisierul temporar global_motions.trf. Valoarea implicită este 0.

Exemple

· Utilizare FFMPEG pentru o stabilizare tipică cu valori implicite:

ffmpeg -i inp.mpeg -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 inp_stabilized.mpeg

Observați utilizarea lui neascuțit filtru care este întotdeauna recomandat.

· Măriți puțin mai mult și încărcați datele de transformare dintr-un fișier dat:

vidstabtransform=zoom=5:input="mytransforms.trf"

· Netezește și mai mult videoclipul:

vidstabtransform=netezire=30

vflip
Întoarceți videoclipul de intrare pe verticală.

De exemplu, pentru a răsturna vertical un videoclip cu FFMPEG:

ffmpeg -i in.avi -vf "vflip" out.avi

vinietă
Creați sau inversați un efect natural de vignetare.

Filtrul acceptă următoarele opțiuni:

unghi, a
Setați expresia unghiului lentilei ca număr de radiani.

Valoarea este tăiată în intervalul „[0,PI/2]”.

Valoare implicită: „PI/5”

x0
y0 Setați expresii pentru coordonatele centrale. Respectiv „w/2” și „h/2” implicit.

mod
Setați modul înainte/înapoi.

Modurile disponibile sunt:

înainte
Cu cât distanța de la punctul central este mai mare, cu atât imaginea devine mai întunecată.

înapoi
Cu cât distanța de la punctul central este mai mare, cu atât imaginea devine mai luminoasă.
Acesta poate fi folosit pentru a inversa un efect de vignetă, deși nu există automat
detectie pentru extragerea lentilei unghi și alte setări (încă). De asemenea, poate fi folosit
pentru a crea un efect de ardere.

Valoarea implicită este înainte.

eval
Setați modul de evaluare pentru expresiile (unghi, x0, y0).

Acceptă următoarele valori:

înăuntru
Evaluați expresiile o singură dată în timpul inițializării filtrului.

cadru
Evaluați expresiile pentru fiecare cadru primit. Acesta este mult mai lent decât înăuntru
modul deoarece necesită recalcularea tuturor scalerilor, dar permite avansat
expresii dinamice.

Valoarea implicită este înăuntru.

oscila
Setați ditheringul pentru a reduce efectele de bandă circulară. Implicit este 1 (activat).

aspect
Setați aspectul vignetei. Această setare permite ajustarea formei vignetei.
Setarea acestei valori la SAR al intrării va face o vignetare dreptunghiulară
urmând dimensiunile videoclipului.

Implicit este „1/1”.

Expresii

alfa, x0 și y0 expresiile pot conține următorii parametri.

w
h lățimea și înălțimea de intrare

n numărul de cadre de intrare, începând de la 0

pct timpul PTS (Presentation TimeStamp) al cadrului video filtrat, exprimat în TB
unități, NAN dacă este nedefinit

r rata de cadre a videoclipului de intrare, NAN dacă rata de cadre de intrare este necunoscută

t PTS (Presentation TimeStamp) al cadrului video filtrat, exprimat în secunde,
NAN dacă este nedefinit

tb baza de timp a videoclipului de intrare

Exemple

· Aplicați efect de vignetare simplu și puternic:

vignette=PI/4

· Realizați o vignetare pâlpâitoare:

vignette='PI/4+aleator(1)*PI/50':eval=cadru

vstack
Stivuiți videoclipurile introduse pe verticală.

Toate fluxurile trebuie să aibă același format de pixeli și aceeași lățime.

Rețineți că acest filtru este mai rapid decât utilizarea acoperire și tampon filtru pentru a crea aceeași ieșire.

Filtrul acceptă următoarea opțiune:

nb_inputs
Setați numărul de fluxuri de intrare. Implicit este 2.

w3fdif
Deintercalați videoclipul de intrare ("w3fdif" înseamnă "Weston 3 Field Deinterlacing Filter").

Bazat pe procesul descris de Martin Weston pentru BBC R&D și implementat pe baza
algoritm de de-interlace scris de Jim Easterbrook pentru BBC R&D, domeniul Weston 3
filtrul de întrețesere utilizează coeficienți de filtru calculați de BBC R&D.

Există două seturi de coeficienți de filtru, așa-numitele „simpli” și „complex”. Care set de
coeficienții de filtru sunt utilizați pot fi setați prin trecerea unui parametru opțional:

filtru
Setați coeficienții filtrului de întrețesere. Acceptă una dintre următoarele valori:

simplu
Set de coeficienți de filtru simplu.

complex
Set de coeficienți de filtru mai complex.

Valoarea implicită este complex.

deint
Specificați ce cadre să dezintercalați. Acceptați una dintre următoarele valori:

toate Dezintercalați toate cadrele,

împletit
Numai cadrele de întrețesut marcate ca întrețesute.

Valoarea implicită este toate.

forme de undă
Monitor pentru forma de undă video.

Monitorul formei de undă grafică intensitatea componentei de culoare. În mod implicit doar luminanță. Fiecare
coloana formei de undă corespunde unei coloane de pixeli din videoclipul sursă.

Acceptă următoarele opțiuni:

mod, m
Poate fi fie „rând”, fie „coloană”. Implicit este „coloană”. În modul rând, graficul de pe
partea stângă reprezintă valoarea componentei de culoare 0, iar partea dreaptă reprezintă valoarea =
255. În modul coloană, partea de sus reprezintă valoarea componentei de culoare = 0 și partea de jos
reprezintă valoarea = 255.

intensitate, i
Setați intensitatea. Valorile mai mici sunt utile pentru a afla câte valori ale acelorași
luminanța este distribuită pe rândurile/coloanele de intrare. Valoarea implicită este 0.04. Permis
intervalul este [0, 1].

oglindă, r
Setați modul de oglindire. 0 înseamnă neoglindit, 1 înseamnă oglindă. În modul oglindă, mai mare
valorile vor fi reprezentate în partea stângă pentru modul „rând” și în partea de sus pentru „coloană”
modul. Implicit este 1 (oglindit).

afişa, d
Setați modul de afișare. Acceptă următoarele valori:

acoperire
Prezintă informații identice cu cele din „paradă”, cu excepția graficelor
componentele reprezentative de culoare sunt suprapuse direct una peste alta.

Acest mod de afișare facilitează identificarea diferențelor sau asemănărilor relative
zone suprapuse ale componentelor de culoare care ar trebui să fie identice, de exemplu
ca alb neutru, gri sau negru.

paradă
Afișați grafic separat pentru componentele de culoare una lângă alta în modul „rând” sau unul
sub celălalt în modul „coloană”.

Utilizarea acestui mod de afișare facilitează identificarea tonurilor de culoare în zonele evidențiate și
umbrele unei imagini, prin compararea contururilor graficelor de sus și de jos ale
fiecare formă de undă. Deoarece albul, gri și negrul sunt caracterizați exact de egalitate
cantitățile de zone neutre ale imaginii roșii, verzi și albastre ar trebui să afișeze trei
forme de undă de lățime/înălțime aproximativ egală. Dacă nu, corectarea este ușor de efectuat
făcând ajustări de nivel celor trei forme de undă.

Implicit este „parada”.

componente, c
Setați ce componente de culoare să afișați. Implicit este 1, ceea ce înseamnă doar luminanță sau roșu
componentă de culoare dacă intrarea este în spațiul de culoare RGB. Dacă este setat, de exemplu, la 7, va fi
afișați toate cele 3 (dacă) componente de culoare disponibile.

plic, e
nici unul
Fără plic, acesta este implicit.

clipă
Plicul instantaneu, valorile minime și maxime prezentate în grafic vor fi ușor
vizibil chiar și cu o valoare „pas” mică.

vârf
Țineți valorile minime și maxime prezentate în grafic de-a lungul timpului. În felul acesta poți
găsește în continuare valori în afara intervalului, fără a te uita constant la formele de undă.

vârf+instant
Peak și plicul instant combinate împreună.

filtru, f
trece jos
Fără filtrare, aceasta este implicită.

plat
Luma și croma combinate împreună.

un apartament
Similar ca mai sus, dar arată diferența între croma albastru și roșu.

cromă
Afișează doar croma.

acromă
Similar ca mai sus, dar arată diferența între croma albastru și roșu.

culoare
Afișează valoarea reală a culorii pe forma de undă.

xbr
Aplicați filtrul de mărire de înaltă calitate xBR, care este conceput pentru pixel art. Aceasta
urmează un set de reguli de detectare a marginilor, vezi
<http://www.libretro.com/forums/viewtopic.php?f=6&t=134>.

Acceptă următoarea opțiune:

n Setați dimensiunea de scalare: 2 pentru „2xBR”, 3 pentru „3xBR” și 4 pentru „4xBR”. Implicit este 3.

yadif
Deintercalați videoclipul de intrare („yadif” înseamnă „încă un filtru de deinterlazare”).

Acceptă următorii parametri:

mod
Modul de întrețesere de adoptat. Acceptă una dintre următoarele valori:

0, trimite_cadru
Ieșiți un cadru pentru fiecare cadru.

1, câmp_trimitere
Ieșiți un cadru pentru fiecare câmp.

2, send_frame_nospatial
Ca „send_frame”, dar omite verificarea întrețeserii spațiale.

3, send_field_nospatial
Ca „send_field”, dar omite verificarea întrețeserii spațiale.

Valoarea implicită este „send_frame”.

paritate
Paritatea câmpului de imagine presupusă pentru videoclipul intercalat de intrare. Acceptă unul dintre
următoarele valori:

0, tff
Să presupunem că câmpul de sus este primul.

1, BFF
Să presupunem că câmpul de jos este primul.

-1, Auto
Activați detectarea automată a parității câmpului.

Valoarea implicită este „auto”. Dacă împletirea este necunoscută sau decodorul nu
exportați aceste informații, primul câmp de sus va fi considerat.

deint
Specificați ce cadre să dezintercalați. Acceptați una dintre următoarele valori:

0, toate
Dezintercalați toate cadrele.

1, împletit
Numai cadrele de întrețesut marcate ca întrețesute.

Valoarea implicită este „toate”.

zoompan
Aplicați efectul Zoom & Pan.

Acest filtru acceptă următoarele opțiuni:

zoom, z
Setați expresia de zoom. Implicit este 1.

x
y Setați expresia x și y. Implicit este 0.

d Setați expresia duratei în număr de cadre. Aceasta stabilește pentru câte număr de
efectul de cadre va dura pentru o singură imagine de intrare.

s Setați dimensiunea imaginii de ieșire, implicit este „hd720”.

Fiecare expresie poate conține următoarele constante:

în W, iw
Lățimea de intrare.

in_h, ih
Înălțimea de intrare.

out_w, ow
Lățimea de ieșire.

out_h, oh
Înălțimea de ieșire.

in Număr de cadre de intrare.

on Număr de cadre de ieșire.

x
y Ultima poziție calculată „x” și „y” din expresia „x” și „y” pentru intrarea curentă
cadru.

px
py „x” și „y” din ultimul cadru de ieșire al cadrului de intrare anterior sau 0 când nu a existat încă
un astfel de cadru (primul cadru de intrare).

zoom
Ultimul zoom calculat din expresia „z” pentru cadrul de intrare curent.

Pzoom.
Ultimul zoom calculat al ultimului cadru de ieșire al cadrului de intrare anterior.

durată
Numărul de cadre de ieșire pentru cadrul de intrare curent. Calculat din expresia „d” pentru
fiecare cadru de intrare.

pduraţie
numărul de cadre de ieșire create pentru cadrul de intrare anterior

a Număr rațional: lățime de intrare / înălțime de intrare

SAR raportul aspectului eșantionului

da raportul de aspect al afișajului

Exemple

· Măriți până la 1.5 și deplasați în același timp către un loc din apropierea centrului imaginii:

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

· Măriți până la 1.5 și deplasați întotdeauna în centrul imaginii:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

VIDEO SURSE


Mai jos este o descriere a surselor video disponibile în prezent.

tampon
Salvați cadrele video și puneți-le la dispoziție pentru lanțul de filtre.

Această sursă este destinată în principal unei utilizări programatice, în special prin intermediul interfeței
definit în libavfilter/vsrc_buffer.h.

Acceptă următorii parametri:

video_size
Specificați dimensiunea (lățimea și înălțimea) cadrelor video stocate în tampon. Pentru sintaxa lui
această opțiune, bifați "Video mărimea" secțiune in il ffmpeg-utils manual.

lățime
Lățimea video de intrare.

înălțime
Înălțimea video de intrare.

pix_fmt
Un șir reprezentând formatul de pixeli al cadrelor video stocate în tampon. Poate fi o
număr corespunzător unui format de pixel sau unui nume de format de pixel.

baza de timp
Specificați baza de timp asumată de marcajele de timp ale cadrelor tamponate.

frame_rate
Specificați rata de cadre așteptată pentru fluxul video.

pixel_aspect, SAR
Raportul de aspect al eșantionului (pixeli) al videoclipului de intrare.

sws_param
Specificați parametrii opționali care vor fi utilizați pentru filtrul de scară care este automat
inserat atunci când este detectată o modificare a intrării în dimensiunea sau formatul de intrare.

De exemplu:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

va instrui sursa să accepte cadre video cu dimensiunea 320x240 și cu format
„yuv410p”, presupunând 1/24 ca marcaj de timp baza de timp și pixeli pătrați (aspect eșantion 1:1
raport). Deoarece formatul de pixel cu numele „yuv410p” corespunde cu numărul 6 (verificați
enum definiția AVPixelFormat în libavutil/pixfmt.h), acest exemplu corespunde cu:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

Alternativ, opțiunile pot fi specificate ca șir plat, dar această sintaxă este
depreciat:

lățime:înălțime:pix_fmt:baza_timp.num:baza_timp.den:pixel_aspect.num:pixel_aspect.den[:sws_param]

cellauto
Creați un model generat de un automat celular elementar.

Starea inițială a automatului celular poate fi definită prin intermediul nume de fișier, și
model Opțiuni. Dacă astfel de opțiuni nu sunt specificate, o stare inițială este creată aleatoriu.

La fiecare cadru nou, un nou rând din videoclip este umplut cu rezultatul celular
automat de generație următoare. Comportamentul când întregul cadru este umplut este definit de
derulaţi opțiune.

Această sursă acceptă următoarele opțiuni:

nume de fișier, f
Citiți starea inițială a automatului celular, adică rândul de început, din cea specificată
fişier. În fișier, fiecare caracter care nu are spațiu alb este considerat o celulă vie, a
linia nouă va termina rândul și alte caractere din fișier vor fi ignorate.

model, p
Citiți starea inițială a automatului celular, adică rândul de început, din cea specificată
șir.

Fiecare caracter fără spații albe din șir este considerat o celulă vie, o linie nouă
va termina rândul și alte caractere din șir vor fi ignorate.

rată, r
Setați rata video, adică numărul de cadre generate pe secundă. Implicit este 25.

random_fill_raport, raport
Setați raportul de umplere aleatoriu pentru rândul inițial al automatului celular. Este o plutitoare
valoarea numărului punctului variind de la 0 la 1, implicit la 1/PHI.

Această opțiune este ignorată atunci când este specificat un fișier sau un model.

random_seed, sămânţă
Setați sămânța pentru umplerea aleatorie a rândului inițial, trebuie să fie un număr întreg inclus între
0 și UINT32_MAX. Dacă nu este specificat sau dacă este setat în mod explicit la -1, filtrul va încerca
folosiți o sămânță bună aleatorie pe baza efortului maxim.

pronunța
Setați regula automatului celular, este un număr care variază de la 0 la 255. Valoare implicită
este 110.

mărimea, s
Setați dimensiunea videoclipului de ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual.

If nume de fișier or model este specificat, dimensiunea este setată implicit la lățimea
rândul de stare inițială specificat, iar înălțimea este setată la lățime * PHI.

If mărimea este setat, trebuie să conțină lățimea șirului de model specificat și
modelul specificat va fi centrat pe rândul mai mare.

Dacă nu este specificat un nume de fișier sau un șir de model, valoarea implicită a dimensiunii este
„320x518” (utilizat pentru o stare inițială generată aleatoriu).

derulaţi
Dacă este setată la 1, derulați rezultatul în sus când toate rândurile din ieșire au fost
deja umplut. Dacă este setat la 0, noul rând generat va fi scris peste rândul de sus
imediat după ce rândul de jos este umplut. Implicit la 1.

start_full, Complet
Dacă este setată la 1, umpleți complet rezultatul cu rândurile generate înainte de a scoate
primul cadru. Acesta este comportamentul implicit, pentru dezactivare setați valoarea la 0.

cusătură
Dacă setați la 1, coaseți marginile rândurilor din stânga și din dreapta împreună. Aceasta este valoarea implicită
comportament, pentru dezactivare setați valoarea la 0.

Exemple

· Citiți starea inițială de la modelși specificați o ieșire de dimensiunea 200x400.

cellauto=f=pattern:s=200x400

· Generați un rând inițial aleatoriu cu o lățime de 200 de celule, cu un raport de umplere de 2/3:

cellauto=raport=2/3:s=200x200

· Creați un model generat de regula 18 începând cu o singură celulă vie centrată pe un
rândul inițial cu lățime 100:

cellauto=p=@s=100x400:full=0:rule=18

· Specificați un model inițial mai elaborat:

cellauto=p='@@ @ @@':s=100x400:full=0:rule=18

mandelbrot
Generați un fractal set Mandelbrot și măriți progresiv către punctul specificat cu
start_x și start_y.

Această sursă acceptă următoarele opțiuni:

end_pts
Setați valoarea punctelor terminale. Valoarea implicită este 400.

scară_finală
Setați valoarea scalei terminale. Trebuie să fie o valoare în virgulă mobilă. Valoarea implicită este 0.3.

interior
Setați modul de colorare interioară, adică algoritmul folosit pentru a desena fractalul Mandelbrot
regiune internă.

Acesta va lua una dintre următoarele valori:

negru
Setați modul negru.

convergență
Arată timpul până la convergență.

mincol
Setați culoarea pe baza punctului cel mai apropiat de originea iterațiilor.

perioadă
Setați modul perioadei.

Valoarea implicită este mincol.

bailout
Setați valoarea de salvare. Valoarea implicită este 10.0.

maxiter
Setați maximul de iterații efectuate de algoritmul de randare. Valoarea implicită este
7189.

exterior
Setați modul de colorare exterioară. Acesta va lua una dintre următoarele valori:

număr_iterații
Setați modul de contorizare de iterație.

număr_iterații_normalizate
setați modul normalizat de numărare a iterațiilor.

Valoarea implicită este număr_iterații_normalizate.

rată, r
Setați rata de cadre, exprimată ca număr de cadre pe secundă. Valoarea implicită este „25”.

mărimea, s
Setați dimensiunea cadrului. Pentru sintaxa acestei opțiuni, verificați secțiunea „Dimensiunea video” din
manualul ffmpeg-utils. Valoarea implicită este „640x480”.

start_scale
Setați valoarea inițială a scalei. Valoarea implicită este 3.0.

start_x
Setați poziția x inițială. Trebuie să fie o valoare în virgulă mobilă între -100 și 100.
Valoarea implicită este -0.743643887037158704752191506114774.

start_y
Setați poziția inițială y. Trebuie să fie o valoare în virgulă mobilă între -100 și 100.
Valoarea implicită este -0.131825904205311970493132056385139.

mptestsrc
Generați diverse modele de testare, așa cum sunt generate de filtrul de testare MPlayer.

Dimensiunea videoclipului generat este fixă ​​și este de 256x256. Această sursă este utilă în
special pentru testarea caracteristicilor de codificare.

Această sursă acceptă următoarele opțiuni:

rată, r
Specificați rata de cadre a videoclipului sursă, ca număr de cadre generate per
al doilea. Trebuie să fie un șir în format frame_rate_num/frame_rate_den, un număr întreg
număr, un număr în virgulă mobilă sau o abreviere validă a ratei de cadre video. Implicit
valoarea este „25”.

durată, d
Setați durata videoclipului sursă. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată.

Dacă nu este specificată sau durata exprimată este negativă, videoclipul ar trebui să fie
generat pentru totdeauna.

de testare, t
Setați numărul sau numele testului de efectuat. Testele acceptate sunt:

dc_luma
dc_chroma
freq_luma
freq_chroma
amp_luma
amp_chroma
cbp
mv
ring1
ring2
toate

Valoarea implicită este „toate”, care va parcurge lista tuturor testelor.

Cateva exemple:

mptestsrc=t=dc_luma

va genera un model de testare „dc_luma”.

frei0r_src
Furnizați o sursă gratuită.

Pentru a activa compilarea acestui filtru, trebuie să instalați antetul frei0r și să configurați
FFmpeg cu „--enable-frei0r”.

Această sursă acceptă următorii parametri:

mărimea
Dimensiunea videoclipului de generat. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual.

rata de cadre
Rata de cadre a videoclipului generat. Poate fi un șir de formă o/zi sau un
abrevierea frame rate.

nume_filtru
Numele sursei frei0r de încărcat. Pentru mai multe informații despre frei0r și cum
pentru a seta parametrii, citiți frei0r secțiunea din documentația filtrelor video.

filter_params
O listă de parametri separată prin „|” care trebuie transmisă sursei frei0r.

De exemplu, pentru a genera o sursă frei0r partik0l cu dimensiunea 200x200 și frame rate 10
care este suprapus pe intrarea principală a filtrului de suprapunere:

frei0r_src=size=200x200:framerate=10:filter_name=partik0l:filter_params=1234 [overlay]; [în][overlay] suprapunere

viaţă
Generați un model de viață.

Această sursă se bazează pe o generalizare a jocului vieții lui John Conway.

Intrarea sursă reprezintă o grilă de viață, fiecare pixel reprezintă o celulă care poate fi într-una singură
din două stări posibile, viu sau mort. Fiecare celulă interacționează cu cei opt vecini ai săi,
care sunt celulele care sunt adiacente orizontal, vertical sau diagonal.

La fiecare interacțiune grila evoluează conform regulii adoptate, care specifică
numărul de celule vii vecine care vor face ca o celulă să rămână în viață sau să se nască. The pronunța opțiune
permite specificarea regulii de adoptat.

Această sursă acceptă următoarele opțiuni:

nume de fișier, f
Setați fișierul din care să citiți starea inițială a grilei. În dosar, fiecare non-
caracterul de spațiu alb este considerat o celulă vie, iar linia nouă este folosită pentru a delimita
capătul fiecărui rând.

Dacă această opțiune nu este specificată, grila inițială este generată aleatoriu.

rată, r
Setați rata video, adică numărul de cadre generate pe secundă. Implicit este 25.

random_fill_raport, raport
Setați raportul de umplere aleatoriu pentru grila aleatoare inițială. Este un număr în virgulă mobilă
valoare variind de la 0 la 1, implicit la 1/PHI. Este ignorat atunci când este specificat un fișier.

random_seed, sămânţă
Setați sămânța pentru umplerea grilei aleatoare inițiale, trebuie să fie un număr întreg inclus între
0 și UINT32_MAX. Dacă nu este specificat sau dacă este setat în mod explicit la -1, filtrul va încerca
folosiți o sămânță bună aleatorie pe baza efortului maxim.

pronunța
Stabiliți regula vieții.

O regulă poate fi specificată cu un cod de tipul „SNS/BNB", Unde NS și NB sunt
secvențe de numere în intervalul 0-8, NS specifică numărul de celule vecine vii
care fac ca o celulă vie să rămână în viață și NB numărul de celule vecine vii care
face o celulă moartă să devină vie (adică să „născuți”). „s” și „b” pot fi folosite în loc
de „S” și, respectiv, „B”.

Alternativ, o regulă poate fi specificată printr-un număr întreg de 18 biți. Cei 9 biți de ordin înalt sunt
folosit pentru a codifica următoarea stare a celulei dacă este în viață pentru fiecare număr de vecini în viață
celule, biții de ordin inferior specifică regula pentru „născuți” celule noi. Biți de ordin superior
codifică pentru un număr mai mare de celule vecine. De exemplu, numărul 6153 =
„(12<<9)+9” specifică o regulă de rămânere în viață de 12 și o regulă de naștere de 9, care corespunde
la „S23/B03”.

Valoarea implicită este „S23/B3”, care este regula originală a jocului vieții Conway și va
mentine o celula in viata daca are 2 sau 3 celule vecine vii si va naste o noua celula daca
există trei celule vii în jurul unei celule moarte.

mărimea, s
Setați dimensiunea videoclipului de ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual.

If nume de fișier este specificat, dimensiunea este setată implicit la aceeași dimensiune a intrării
fişier. Dacă mărimea este setat, trebuie să conțină dimensiunea specificată în fișierul de intrare și
grila inițială definită în acel fișier este centrată în zona rezultată mai mare.

Dacă nu este specificat un nume de fișier, valoarea implicită a dimensiunii este „320x240” (utilizată pentru o
grilă inițială generată aleatoriu).

cusătură
Dacă setați la 1, coaseți marginile din stânga și din dreapta ale grilei împreună, și partea de sus și de jos
de asemenea marginile. Implicit la 1.

Matrite
Setați viteza matriței celulare. Dacă se setează, o celulă moartă va pleca din moarte_culoare la culoarea_mucegaiului cu
pas de Matrite. Matrite poate avea o valoare de la 0 la 255.

culoarea_viata
Setați culoarea celulelor vii (sau nou-născute).

moarte_culoare
Setați culoarea celulelor moarte. Dacă Matrite este setat, aceasta este prima culoare folosită pentru a reprezenta
o celulă moartă.

culoarea_mucegaiului
Setați culoarea mucegaiului, pentru celulele cu siguranță moarte și mucegăite.

Pentru sintaxa acestor 3 opțiuni de culoare, verificați secțiunea „Culoare” din ffmpeg-utils
manuală.

Exemple

· Citiți o grilă din modelși centrați-l pe o grilă cu dimensiunea 300x300 pixeli:

viata=f=model:s=300x300

· Generați o grilă aleatorie de dimensiunea 200x200, cu un raport de umplere de 2/3:

viata=raport=2/3:s=200x200

· Specificați o regulă personalizată pentru evoluția unei grile generate aleatoriu:

viata=regula=S14/B34

· Exemplu complet cu efect de moarte lentă (mucegai) folosind 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, aliuv, culoare, Haldclutsrc, nullsrc, rgbtestsrc, smptebars, smptehdbars, testsrc
Sursa „allrgb” returnează cadre cu dimensiunea 4096x4096 pentru toate culorile rgb.

Sursa „allyuv” returnează cadre cu dimensiunea 4096x4096 din toate culorile yuv.

Sursa „culoare” oferă o intrare colorată uniform.

Sursa „haldclutsrc” oferă o identitate Hald CLUT. Vezi si Haldclut filtru.

Sursa „nullsrc” returnează cadre video neprocesate. Este util în principal să fii angajat
în instrumentele de analiză/depanare sau ca sursă pentru filtrele care ignoră datele de intrare.

Sursa „rgbtestsrc” generează un model de testare RGB util pentru detectarea RGB vs BGR
probleme. Ar trebui să vedeți o dungă roșie, verde și albastră de sus în jos.

Sursa „smptebars” generează un model de bare de culoare, bazat pe SMPTE Engineering
Ghidul EG 1-1990.

Sursa „smptehdbars” generează un model de bare de culoare, bazat pe SMPTE RP 219-2002.

Sursa „testsrc” generează un model video de testare, arătând un model de culoare, o defilare
gradient și un marcaj de timp. Acesta este destinat în principal pentru scopuri de testare.

Sursele acceptă următorii parametri:

culoare, c
Specificați culoarea sursei, disponibilă numai în sursa „culoare”. Pentru sintaxă
a acestei opțiuni, verificați secțiunea „Culoare” din manualul ffmpeg-utils.

nivel
Specificați nivelul Hald CLUT, disponibil numai în sursa „haldclutsrc”. A
nivelul „N” generează o imagine de „N*N*N” cu „N*N*N” pixeli pentru a fi folosită ca identitate
matrice pentru tabele de căutare 3D. Fiecare componentă este codificată pe o scară „1/(N*N)”.

mărimea, s
Specificați dimensiunea videoclipului sursă. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „320x240”.

Această opțiune nu este disponibilă cu filtrul „haldclutsrc”.

rată, r
Specificați rata de cadre a videoclipului sursă, ca număr de cadre generate per
al doilea. Trebuie să fie un șir în format frame_rate_num/frame_rate_den, un număr întreg
număr, un număr în virgulă mobilă sau o abreviere validă a ratei de cadre video. Implicit
valoarea este „25”.

SAR Setați raportul de aspect al eșantionului video sursă.

durată, d
Setați durata videoclipului sursă. Vedea il Timp durată secțiune in il
ffmpeg-utils(1) manual pentru sintaxa acceptată.

Dacă nu este specificată sau durata exprimată este negativă, videoclipul ar trebui să fie
generat pentru totdeauna.

zecimale, n
Setați numărul de zecimale de afișat în marcajul de timp, disponibil numai în „testsrc”
sursă.

Valoarea marcajului de timp afișat va corespunde cu valoarea inițială a marcajului de timp
înmulțit cu puterea lui 10 a valorii specificate. Valoarea implicită este 0.

De exemplu următoarele:

testsrc=duration=5.3:size=qcif:rate=10

va genera un videoclip cu o durată de 5.3 secunde, cu dimensiunea 176x144 și cu un frame rate
de 10 cadre pe secundă.

Următoarea descriere a graficului va genera o sursă roșie cu o opacitate de 0.2, cu
dimensiunea „qcif” și o rată de cadre de 10 cadre pe secundă.

culoare=c=[e-mail protejat]:s=qcif:r=10

Dacă conținutul de intrare trebuie ignorat, poate fi folosit „nullsrc”. Următoarea comandă
generează zgomot în planul de luminanță prin folosirea filtrului „geq”:

nullsrc=s=256x256, geq=aleator(1)*255:128:128

Comenzi

Sursa „culoare” acceptă următoarele comenzi:

c, culoare
Setați culoarea imaginii create. Acceptă aceeași sintaxă a corespunzătoare culoare
opțiune.

VIDEO CHIUVE


Mai jos este o descriere a canalelor video disponibile în prezent.

chiuveta tampon
Salvați cadrele video și puneți-le disponibile până la sfârșitul graficului de filtrare.

Această chiuvetă este destinată în principal utilizării programatice, în special prin interfață
definit în libavfilter/buffersink.h sau sistemul de opțiuni.

Acceptă un pointer către o structură AVBufferSinkContext, care definește intrarea
formatele bufferelor, care urmează să fie transmise ca parametru opac la „avfilter_init_filter” pentru
initializare.

nullsk
Null video sink: nu faceți absolut nimic cu videoclipul de intrare. Este util în principal ca a
șablon și pentru utilizare în instrumente de analiză/depanare.

MULTIMEDIA FILTRE


Mai jos este o descriere a filtrelor multimedia disponibile în prezent.

afazemetru
Convertiți sunetul de intrare într-o ieșire video, afișând faza audio.

Filtrul acceptă următoarele opțiuni:

rată, r
Setați rata de ieșire a cadrelor. Valoarea implicită este 25.

mărimea, s
Setați dimensiunea video pentru ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „800x400”.

rc
gc
bc Specificați contrastul roșu, verde, albastru. Valorile implicite sunt 2, 7 și 1. Interval permis
este „[0, 255]”.

MPC Setați culoarea care va fi utilizată pentru desenarea fazei mediane. Dacă culoarea este „niciuna”, care este
implicit, nu va fi trasă nicio valoare mediană a fazei.

De asemenea, filtrul exportă metadatele cadrului „lavfi.aphasemeter.phase” care reprezintă media
faza cadrului audio curent. Valoarea este în intervalul „[-1, 1]”. „-1” înseamnă stânga și dreapta
canalele sunt complet defazate și 1 înseamnă că canalele sunt în fază.

avectorscope
Convertiți sunetul de intrare într-o ieșire video, reprezentând domeniul vectorului audio.

Filtrul este folosit pentru a măsura diferența dintre canalele de flux audio stereo. A
semnal monoaural, constând dintr-un semnal identic din stânga și din dreapta, are drept rezultat
linie verticala. Orice separare stereo este vizibilă ca o abatere de la această linie, creând a
Figura Lissajous. Dacă linia dreaptă (sau abaterea de la ea) dar orizontală apare aceasta
indică faptul că canalele stânga și dreapta sunt defazate.

Filtrul acceptă următoarele opțiuni:

mod, m
Setați modul vectorscop.

Valorile disponibile sunt:

lissajous
Lissajous sa rotit cu 45 de grade.

lissajous_xy
La fel ca mai sus, dar nu rotit.

polar
Forma asemănătoare cu jumătate de cerc.

Valoarea implicită este lissajous.

mărimea, s
Setați dimensiunea video pentru ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „400x400”.

rată, r
Setați rata de ieșire a cadrelor. Valoarea implicită este 25.

rc
gc
bc
ac Specificați contrastul roșu, verde, albastru și alfa. Valorile implicite sunt 40, 160, 80 și
255. Intervalul permis este „[0, 255]”.

rf
gf
bf
af Specificați decolorarea roșu, verde, albastru și alfa. Valorile implicite sunt 15, 10, 5 și 5.
Intervalul permis este „[0, 255]”.

zoom
Setați factorul de zoom. Valoarea implicită este 1. Intervalul permis este „[1, 10]”.

Exemple

· Exemplu complet de utilizare ffplay:

ffplay -f lavfi 'amovie=input.mp3, asplit [a][out1];
[a] avectorscope=zoom=1.3:rc=2:gc=200:bc=10:rf=1:gf=8:bf=7 [out0]'

concat
Concatenează fluxurile audio și video, unindu-le unul după altul.

Filtrul funcționează pe segmente de fluxuri video și audio sincronizate. Toate segmentele trebuie
au același număr de fluxuri de fiecare tip și acesta va fi și numărul de fluxuri
la iesire.

Filtrul acceptă următoarele opțiuni:

n Setați numărul de segmente. Implicit este 2.

v Setați numărul de fluxuri video de ieșire, care este, de asemenea, numărul de fluxuri video din interior
fiecare segment. Implicit este 1.

a Setați numărul de fluxuri audio de ieșire, care este și numărul de fluxuri audio în interior
fiecare segment. Implicit este 0.

nesigur
Activați modul nesigur: nu dați greș dacă segmentele au un format diferit.

Filtrul are v+a ieșiri: în primul rând v ieșiri video, atunci a ieșiri audio.

Sunt nx(v+a) intrări: mai întâi intrările pentru primul segment, în aceeași ordine ca și
ieșirile, apoi intrările pentru al doilea segment etc.

Fluxurile înrudite nu au întotdeauna exact aceeași durată, din diverse motive
inclusiv dimensiunea cadrului codecului sau crearea neglijent. Din acest motiv, legate sincronizate
fluxurile (de exemplu, un videoclip și pista sa audio) ar trebui să fie concatenate dintr-o dată. Concatul
filtrul va folosi durata celui mai lung flux din fiecare segment (cu excepția ultimului),
și, dacă este necesar, blocați fluxuri audio mai scurte cu tăcere.

Pentru ca acest filtru să funcționeze corect, toate segmentele trebuie să înceapă cu marcajul de timp 0.

Toate fluxurile corespunzătoare trebuie să aibă aceiași parametri în toate segmentele; filtrarea
sistemul va selecta automat un format comun de pixeli pentru fluxurile video și un format comun
formatul de eșantionare, rata de eșantionare și aspectul canalului pentru fluxurile audio, dar alte setări, cum ar fi
ca rezoluție, trebuie convertită în mod explicit de către utilizator.

Rate de cadre diferite sunt acceptabile, dar vor avea ca rezultat o rată de cadre variabilă la ieșire; fi
asigurați-vă că configurați fișierul de ieșire pentru a-l gestiona.

Exemple

· Concatenează o deschidere, un episod și un final, toate în versiune bilingvă (video în
flux 0, audio în fluxurile 1 și 2):

ffmpeg -i opening.mkv -i episode.mkv -i ending.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]' output.mkv

· Concatenează două părți, gestionând audio și video separat, folosind filmul (a).
surse și ajustarea rezoluției:

film=part1.mp4, scară=512:288 [v1] ; amovie=part1.mp4 [a1] ;
film=part2.mp4, scară=512:288 [v2] ; amovie=part2.mp4 [a2] ;
[v1] [v2] concat [outv] ; [a1] [a2] concat=v=0:a=1 [outa]

Rețineți că se va produce o desincronizare la cusătură dacă fluxurile audio și video nu se întâmplă
au exact aceeași durată în primul fișier.

ebur128
Filtru scaner EBU R128. Acest filtru preia un flux audio ca intrare și îl scoate la ieșire
neschimbat. În mod implicit, înregistrează un mesaj la o frecvență de 10 Hz cu Momentary
sonoritate (identificată prin „M”), sonoritate pe termen scurt („S”), sonoritate integrată („I”) și
Gama de intensitate („LRA”).

Filtrul are și o ieșire video (vezi video opțiune) cu un grafic în timp real pentru
observați evoluția sonorității. Graficul conține mesajul înregistrat menționat mai sus,
deci nu mai este tipărită atunci când această opțiune este setată, cu excepția cazului în care este setată înregistrarea verbose.
Zona principală de grafică conține volumul pe termen scurt (3 secunde de analiză) și
indicatorul din dreapta este pentru volumul momentan (400 milisecunde).

Mai multe informații despre Recomandarea Loudness EBU R128 pe
<http://tech.ebu.ch/loudness>.

Filtrul acceptă următoarele opțiuni:

video
Activați ieșirea video. Fluxul audio este transmis neschimbat dacă această opțiune este
set sau nu. Fluxul video va fi primul flux de ieșire dacă este activat. Implicit este
0.

mărimea
Setați dimensiunea videoclipului. Această opțiune este doar pentru videoclipuri. Pentru sintaxa acestei opțiuni,
verifică "Video mărimea" secțiune in il ffmpeg-utils manual. Implicit și minim
rezoluția este „640x480”.

metru
Setați contorul de scară EBU. Implicit este 9. Valorile comune sunt 9 și, respectiv, 18 pentru
Contor scară EBU +9 și contor scară EBU +18. Orice altă valoare întreagă între acest interval
este permis.

metadate
Setați injectarea metadatelor. Dacă este setată la 1, intrarea audio va fi segmentată în 100 ms
cadre de ieșire, fiecare dintre ele conținând diferite informații de volum în metadate. Toate
cheile de metadate sunt prefixate cu „lavfi.r128.”.

Valoarea implicită este 0.

framelog
Forțați nivelul de înregistrare a cadrului.

Valorile disponibile sunt:

info
nivelul de înregistrare a informațiilor

prolix
nivel de logare verbos

În mod implicit, nivelul de înregistrare este setat la info. Dacă video sau metadate opțiunile sunt
setat, se comută la prolix.

vârf
Setați modul(ele) de vârf.

Modurile disponibile pot fi cumulate (opțiunea este de tip „steag”). Valorile posibile sunt:

nici unul
Dezactivați orice mod de vârf (implicit).

probă
Activați modul eșantion-peak.

Modul de vârf simplu care caută valoarea eșantionului mai mare. Înregistrează un mesaj pentru
vârful eșantionului (identificat prin „SPK”).

adevărat
Activați modul true-peak.

Dacă este activată, căutarea vârfului se face pe o versiune supraeșantionată a fluxului de intrare
pentru o mai bună precizie de vârf. Înregistrează un mesaj pentru true-peak. (identificat prin „TPK”)
și true-peak per cadru (identificat prin „FTPK”). Acest mod necesită o construcție cu
„libswresample”.

Exemple

· Utilizarea graficului în timp real ffplay, cu un contor la scară EBU +18:

ffplay -f lavfi -i "amovie=input.mp3,ebur128=video=1:meter=18 [out0][out1]"

· Rulați o analiză cu FFMPEG:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -

intercalare, intercalare
Intercalați temporar cadre de la mai multe intrări.

„interleave” funcționează cu intrări video, „ainterleave” cu audio.

Aceste filtre citesc cadre de la mai multe intrări și trimit cel mai vechi cadru din coadă la
ieșire.

Fluxurile de intrare trebuie să aibă valori bine definite, care cresc în mod monoton, marcajele temporale ale cadrelor.

Pentru a trimite un cadru la ieșire, aceste filtre trebuie să pună în coadă cel puțin un cadru
pentru fiecare intrare, deci nu pot funcționa în cazul în care o intrare nu este încă terminată și nu va funcționa
primiți cadre primite.

De exemplu, luați în considerare cazul când o intrare este un filtru „selectat” care renunță întotdeauna la intrare
rame. Filtrul „intercalare” va continua să citească din acea intrare, dar nu va fi niciodată
capabil să trimită cadre noi la ieșire până când intrarea va trimite un semnal de sfârșit de flux.

De asemenea, în funcție de sincronizarea intrărilor, filtrele vor lăsa cadre în cazul unei intrări
primește mai multe cadre decât celelalte, iar coada este deja umplută.

Aceste filtre acceptă următoarele opțiuni:

nb_inputs, n
Setați numărul de intrări diferite, acesta este 2 în mod implicit.

Exemple

· Intercalare cadre aparținând diferitelor fluxuri folosind FFMPEG:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex „[0:v][1:v] intercalare” out.avi

· Adăugați efect de estompare pâlpâire:

select='daca(gt(aleator(0), 0.2), 1, 2)':n=2 [tmp], boxblur=2:2, [tmp] intercalare

permanente, aperms
Setați permisiunile de citire/scriere pentru cadrele de ieșire.

Aceste filtre sunt destinate în principal dezvoltatorilor pentru a testa calea directă în următorul filtru
în filtergraph.

Filtrele acceptă următoarele opțiuni:

mod
Selectați modul de permisiuni.

Acceptă următoarele valori:

nici unul
Nu face nimic. Aceasta este valoarea implicită.

ro Setați toate cadrele de ieșire doar pentru citire.

rw Setați toate cadrele de ieșire direct inscriptibile.

comutare
Faceți cadrul doar pentru citire dacă este inscriptibil și inscriptibil dacă este doar pentru citire.

aleator
Setați fiecare cadru de ieșire doar pentru citire sau scriere aleatorie.

sămânţă
Setați sămânța pentru aleator modul, trebuie să fie un număr întreg inclus între 0 și
„UINT32_MAX”. Dacă nu este specificat sau dacă este setat în mod explicit la „-1”, filtrul va încerca
folosiți o sămânță bună aleatorie pe baza efortului maxim.

Notă: în cazul filtrului auto-inserat între filtrul de permisiuni și cel următor,
este posibil ca permisiunea să nu fie primită așa cum era de așteptat în filtrul următor. Inserarea a
format or aformat filtrul înainte ca filtrul perms/aperms poate evita această problemă.

Selectați, aselecta
Selectați cadrele pentru a le transmite în ieșire.

Acest filtru acceptă următoarele opțiuni:

expr, e
Setați expresia, care este evaluată pentru fiecare cadru de intrare.

Dacă expresia este evaluată la zero, cadrul este eliminat.

Dacă rezultatul evaluării este negativ sau NaN, cadrul este trimis la prima ieșire;
în caz contrar, este trimis la ieșire cu indexul „ceil(val)-1”, presupunând că intrarea
indicele începe de la 0.

De exemplu, o valoare de 1.2 corespunde ieșirii cu indicele „ceil(1.2)-1 = 2-1 =
1", adică a doua ieșire.

ieșiri, n
Setați numărul de ieșiri. Ieșirea către care se trimite cadrul selectat se bazează
rezultatul evaluării. Valoarea implicită este 1.

Expresia poate conține următoarele constante:

n Numărul (secvențial) al cadrului filtrat, începând de la 0.

selectat_n
Numărul (secvențial) al cadrului selectat, începând de la 0.

prev_selected_n
Numărul secvenţial al ultimului cadru selectat. Este NAN dacă este nedefinit.

TB Baza de timp a marcajelor de timp introduse.

pct PTS (Presentation TimeStamp) al cadrului video filtrat, exprimat în TB de unități.
Este NAN dacă este nedefinit.

t PTS-ul cadrului video filtrat, exprimat în secunde. Este NAN dacă este nedefinit.

puncte_prev
PTS-ul cadrului video filtrat anterior. Este NAN dacă este nedefinit.

puncte_selectate_anterior
PTS-ul ultimului cadru video filtrat anterior. Este NAN dacă este nedefinit.

prev_selectat_t
PTS-ul ultimului cadru video selectat anterior. Este NAN dacă este nedefinit.

start_pts
PTS-ul primului cadru video din videoclip. Este NAN dacă este nedefinit.

start_t
Ora primului cadru video din videoclip. Este NAN dacă este nedefinit.

tip_pict (video numai)
Tipul cadrului filtrat. Poate lua una dintre următoarele valori:

I
P
B
S
SI
SP
BI
tip_interlace (video numai)
Tipul cadru întrețesut. Poate lua una dintre următoarele valori:

PROGRESIV
Cadrul este progresiv (nu intercalat).

ÎNȚI ÎNȚI
Cadrul este pe primul loc.

ÎNTÂI DE JOS
Cadrul este primul câmp de jos.

consumed_sample_n (audio numai)
numărul de mostre selectate înainte de cadrul curent

mostre_n (audio numai)
numărul de mostre din cadrul curent

rata simpla (audio numai)
rata de eșantionare de intrare

cheie Acesta este 1 dacă cadrul filtrat este un cadru-cheie, 0 în caz contrar.

post pozitia in fisier a cadrului filtrat, -1 daca informatia nu este disponibila
(de ex. pentru videoclipuri sintetice)

scenă (video numai)
valoare între 0 și 1 pentru a indica o nouă scenă; o valoare scăzută reflectă o probabilitate scăzută
pentru ca cadrul curent să introducă o nouă scenă, în timp ce o valoare mai mare înseamnă curentul
cadru este mai probabil să fie unul (vezi exemplul de mai jos)

Valoarea implicită a expresiei selectate este „1”.

Exemple

· Selectați toate cadrele din intrare:

selecta

Exemplul de mai sus este același cu:

select=1

· Omiteți toate cadrele:

select=0

· Selectați numai cadre I:

select='eq(tip_pict\,I)'

· Selectați un cadru la fiecare 100:

select='nu(mod(n\,100))'

· Selectați numai cadrele conținute în intervalul de timp 10-20:

select=intre(t\,10\,20)

· Selectați numai cadre I conținute în intervalul de timp 10-20:

selectați=între(t\,10\,20)*eq(tip_pict\,I)

· Selectați cadre cu o distanță minimă de 10 secunde:

select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'

· Utilizați selecția pentru a selecta numai cadre audio cu număr de mostre > 100:

aselect='gt(samples_n\,100)'

· Creați un mozaic al primelor scene:

ffmpeg -i video.avi -vf select='gt(scene\,0.4)',scale=160:120,tile -frames:v 1 preview.png

Comparând scenă față de o valoare între 0.3 și 0.5 este în general o alegere sănătoasă.

· Trimite cadre pare și impare la ieșiri separate și compune-le:

select=n=2:e='mod(n, 2)+1' [impar][par]; [impar] pad=h=2*ih [tmp]; [tmp][chiar] suprapunere=y=h

trimite cmd, asendcmd
Trimiteți comenzi către filtrele din filtergraph.

Aceste filtre citesc comenzi pentru a fi trimise către alte filtre din filtergraph.

„sendcmd” trebuie inserat între două filtre video, „asendcmd” trebuie inserat între
două filtre audio, dar în afară de asta acţionează la fel.

Specificarea comenzilor poate fi furnizată în argumentele filtrului cu comenzi
opțiunea sau într-un fișier specificat de nume de fișier opțiune.

Aceste filtre acceptă următoarele opțiuni:

comenzi, c
Setați comenzile să fie citite și trimise către celelalte filtre.

nume de fișier, f
Setați numele fișierului comenzilor care urmează să fie citite și trimise la celelalte filtre.

Comenzi sintaxă

O descriere a comenzilor constă dintr-o secvență de specificații de interval, cuprinzând a
lista de comenzi care trebuie executate atunci când are loc un anumit eveniment legat de acel interval.
Evenimentul care apare este de obicei timpul curent al cadrului de intrare sau de ieșire dintr-un anumit moment
interval.

Un interval este specificat de următoarea sintaxă:

[- ] ;

Intervalul de timp este specificat de START și Sfârşit ori. Sfârşit este opțional și implicit
la timpul maxim.

Timpul curent al cadrului este considerat în intervalul specificat dacă este inclus în
intervalul [START, Sfârşit), adică atunci când timpul este mai mare sau egal cu START şi este
mai mică decât Sfârşit.

COMANDE constă dintr-o secvență de una sau mai multe specificații de comandă, separate prin ",",
referitoare la acel interval. Sintaxa unei specificații de comandă este dată de:

[ ]

FLAGURI este opţională şi precizează tipul de evenimente aferente intervalului de timp care
permite trimiterea comenzii specificate și trebuie să fie o secvență non-nulă de steaguri de identificare
separate prin „+” sau „|” și închis între „[” și „]”.

Sunt recunoscute următoarele steaguri:

introduce
Comanda este trimisă atunci când marcajul temporal al cadrului curent intră în intervalul specificat. În
cu alte cuvinte, comanda este trimisă atunci când marcajul temporal al cadrului anterior nu era în
interval dat, iar curentul este.

părăsi
Comanda este trimisă atunci când marcajul temporal al cadrului curent părăsește intervalul specificat. În
cu alte cuvinte, comanda este trimisă atunci când marcajul de timp al cadrului anterior a fost în date
interval, iar curentul nu este.

If FLAGURI nu este specificată, se presupune o valoare implicită „[enter]”.

ŢINTĂ specifică ținta comenzii, de obicei numele clasei de filtru sau a
nume specific al instanței de filtru.

COMMAND specifică numele comenzii pentru filtrul țintă.

ARG este opțional și specifică lista opțională de argument pentru data dată COMMAND.

Între o specificație de interval și alta, spații albe sau secvențe de caractere
începând cu „#” până la sfârșitul rândului, sunt ignorate și pot fi folosite pentru a adnota comentarii.

Urmează o descriere BNF simplificată a sintaxei specificației comenzilor:

::= „intra” | "părăsi"
::= [(+|"|") ]
::= ["[" „]”] [ ]
::= [, ]
::= [- ]
::= [; ]

Exemple

· Specificați modificarea tempoului audio la secunda 4:

asendcmd=c='4.0 atempo tempo 1.5',atempo

· Specificați o listă de comenzi drawtext și hue într-un fișier.

# afișează textul în intervalul 5-10
5.0-10.0 [enter] drawtext reinițiază „fontfile=FreeSerif.ttf:text=hello world”,
[lasă] drawtext reinițializare 'fontfile=FreeSerif.ttf:text=';

# desaturați imaginea în intervalul 15-20
15.0-20.0 [introduceți] nuanță s 0,
[introduceți] drawtext reinițializați „fontfile=FreeSerif.ttf:text=nocolor”,
[lasă] nuanță s 1,
[leave] drawtext reinițializează 'fontfile=FreeSerif.ttf:text=color';

# aplicați un efect de estompare a saturației exponențiale, începând cu momentul 25
25 [introduceți] hue s exp(25-t)

Un filtergraph care permite citirea și procesarea listei de comenzi de mai sus stocate într-un fișier
test.cmd, poate fi specificat cu:

sendcmd=f=test.cmd,drawtext=fontfile=FreeSerif.ttf:text='',hue

setari, asetpts
Modificați PTS (marca temporală de prezentare) a cadrelor de intrare.

„setpts” funcționează pe cadre video, „asetpts” pe cadre audio.

Acest filtru acceptă următoarele opțiuni:

expres
Expresia care este evaluată pentru fiecare cadru pentru a-și construi marca temporală.

Expresia este evaluată prin API-ul eval și poate conține următoarele constante:

FRAME_RATE
frame rate, definită numai pentru videoclipuri cu frame rate constant

PTS Marca temporală a prezentării în intrare

N Numărul cadrului de intrare pentru video sau numărul de mostre consumate, nu
inclusiv cadrul curent pentru audio, începând de la 0.

NB_CONSUMED_SAMPLES
Numărul de mostre consumate, fără a include cadrul curent (doar audio)

NB_SAMPLES, S
Numărul de mostre din cadrul curent (numai audio)

RATA SIMPLA, SR
Rata de eșantionare audio.

STARTPTS
PTS-ul primului cadru.

STARTT
timpul în secunde al primului cadru

ÎNTREPLEȘTE
Precizați dacă cadrul curent este întrețesut.

T timpul în secunde al cadrului curent

POS poziția inițială în fișierul cadrului sau nedefinită dacă este nedefinită pentru actualul
cadru

PREV_INPTS
Intrarea anterioară PTS.

PREV_INT
timpul de intrare anterior în secunde

PREV_OUTPTS
Ieșirea anterioară PTS.

PREV_OUTT
timpul de ieșire anterior în secunde

RTCTIME
Ora ceasului de perete (RTC) în microsecunde. Acest lucru este depreciat, folosiți timp(0) în schimb.

RTCSTART
Ora ceasului de perete (RTC) la începutul filmului, în microsecunde.

TB Baza de timp a marcajelor de timp introduse.

Exemple

· Începeți să numărați PTS de la zero

setpts=PTS-STARTPTS

· Aplicați efectul de mișcare rapidă:

setpts=0.5*PTS

· Aplicați efectul de încetinire:

setpts=2.0*PTS

· Setați o rată fixă ​​de 25 de cadre pe secundă:

setpts=N/(25*TB)

· Setați o rată fixă ​​de 25 fps cu unele fluctuații:

setpts='1/(25*TB) * (N + 0.05 * sin(N*2*PI/25))'

· Aplicați un offset de 10 secunde la PTS de intrare:

setpts=PTS+10/TB

· Generați marcaje temporale dintr-o „sursă live” și rebazați pe baza de timp curentă:

setpts='(RTCTIME - RTCSTART) / (TB * 1000000)'

· Generați marcaje temporale prin numărarea mostrelor:

asetpts=N/SR/TB

setb, asetb
Setați baza de timp de utilizat pentru marcajele de timp ale cadrelor de ieșire. Este util în principal pentru testare
configurarea bazei de timp.

Acceptă următorii parametri:

expr, tb
Expresia care este evaluată în baza de timp de ieșire.

Valoarea pentru tb este o expresie aritmetică reprezentând un rațional. Expresia poate
conțin constantele „AVTB” (baza de timp implicită), „intb” (baza de timp de intrare) și „sr”
(frecvența de eșantionare, numai audio). Valoarea implicită este „intb”.

Exemple

· Setați baza de timp la 1/25:

setb=expr=1/25

· Setați baza de timp la 1/10:

setb=expr=0.1

· Setați baza de timp la 1001/1000:

setb=1+0.001

· Setați baza de timp la 2*intb:

setb=2*intb

· Setați valoarea implicită a bazei de timp:

setb=AVTB

showcqt
Convertiți sunetul de intrare într-o ieșire video reprezentând spectrul de frecvență logaritmic
(folosind transformarea Q constantă cu algoritmul Brown-Puckette), cu scară de ton muzical, de la
E0 până la D#10 (10 octave).

Filtrul acceptă următoarele opțiuni:

volum
Specificați expresia volumului de transformare (multiplicator). Expresia poate conține
variabile:

frecvență, frecventa, f
frecvența la care se evaluează transformarea

clemă de timp, tc
valoarea opțiunii timeclamp

si functii:

a_ponderare(f)
Ponderarea A de luminozitate egală

b_ponderare(f)
Ponderarea B de luminozitate egală

c_ponderare(f)
Ponderarea C de luminozitate egală

Valoarea implicită este 16.

lungimea
Specificați expresia lungimii transformării. Expresia poate conține variabile:

frecvență, frecventa, f
frecvența la care se evaluează transformarea

clemă de timp, tc
valoarea opțiunii timeclamp

Valoarea implicită este „384/f*tc/(384/f+tc)”.

clemă de timp
Specificați clema de timp pentru transformare. La frecvență joasă, există un compromis între precizie
în domeniul timpului și domeniul frecvenței. Dacă timeclamp este mai mic, evenimentul din domeniul temporal este
reprezentat mai precis (cum ar fi tobă rapidă), altfel eveniment în frecvență
domeniul este reprezentat mai precis (cum ar fi chitara bas). Valoarea acceptabilă este [0.1,
1.0]. Valoarea implicită este 0.17.

coeffclamp
Specificați coeffclamp de transformare. Dacă coeffclamp este mai mic, transformarea este mai precisă,
altfel transformarea este mai rapidă. Valoarea acceptabilă este [0.1, 10.0]. Valoarea implicită este 1.0.

gamma
Specificați gama. Gama mai scăzută face ca spectrul să fie mai contrastat, gamma mai mare face ca
spectru având o gamă mai mare. Valoarea acceptabilă este [1.0, 7.0]. Valoarea implicită este 3.0.

gamma2
Specificați gama graficului cu bare. Valoarea acceptabilă este [1.0, 7.0]. Valoarea implicită este 1.0.

fontfile
Specificați fișierul fontului pentru utilizare cu freetype. Dacă nu este specificat, utilizați fontul încorporat.

fontcolor
Specificați expresia culorii fontului. Aceasta este expresia aritmetică care ar trebui să revină
valoare întreagă 0xRRGGBB. Expresia poate conține variabile:

frecvență, frecventa, f
frecvența la care se evaluează transformarea

clemă de timp, tc
valoarea opțiunii timeclamp

si functii:

midi(f)
număr midi de frecvență f, unele numere midi: E0(16), C1(24), C2(36), A4(69)

r(x), g(x), b(x)
valoarea de roșu, verde și albastru a intensității x

Valoarea implicită este „st(0, (midi(f)-59.5)/12); st(1, if(between(ld(0),0,1),
0.5-0.5*cos(2*PI*ld(0)), 0)); r(1-ld(1)) + b(ld(1))"

FullHD
Dacă este setată la 1 (implicit), dimensiunea videoclipului este 1920x1080 (full HD), dacă este setată la 0,
dimensiunea videoclipului este 960x540. Utilizați această opțiune pentru a reduce utilizarea procesorului.

FPS Specificați fps video. Valoarea implicită este 25.

conta
Specificați numărul de transformări pe cadru, astfel încât să existe fps*count transforms pe secundă.
Rețineți că rata de date audio trebuie să fie divizibilă cu fps*count. Valoarea implicită este 6.

Exemple

· Redarea audio în timp ce afișați spectrul:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt [out0]'

· La fel ca mai sus, dar cu rata de cadre 30 fps:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt=fps=30:count=5 [out0]'

· Redare la 960x540 și utilizarea CPU mai mică:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt=fullhd=0:count=3 [out0]'

· A1 și armonicile sale: A1, A2, (aproape)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]'

· La fel ca mai sus, dar cu mai multă precizie în domeniul frecvenței (și mai lent):

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]'

· ponderare B de luminozitate egală

volum=16*b_ponderare(f)

· Factor Q mai scăzut

lungime=100/f*tc/(100/f+tc)

· Culoarea fontului personalizat, C-note este colorată în verde, altele sunt colorate în albastru

fontcolor='if(mod(floor(midi(f)+0.5),12), 0x0000FF, g(1))"

· Gama personalizată, acum spectrul este liniar cu amplitudinea.

gamma=2:gamma2=2

showfreqs
Convertiți sunetul de intrare în ieșire video reprezentând spectrul de putere audio. Audio
amplitudinea este pe axa Y în timp ce frecvența este pe axa X.

Filtrul acceptă următoarele opțiuni:

mărimea, s
Specificați dimensiunea videoclipului. Pentru sintaxa acestei opțiuni, verificați "Video mărimea" secțiune
in il ffmpeg-utils manual. Implicit este „1024x512”.

mod
Setați modul de afișare. Aceasta setează modul în care fiecare bin de frecvență va fi reprezentat.

Acceptă următoarele valori:

linie
bar
punct

Implicit este „bar”.

o scală
Setați scara de amplitudine.

Acceptă următoarele valori:

Lin Scară liniară.

sqrt
Scala rădăcină pătrată.

cbrt
Scala rădăcină cubică.

log Scară logaritmică.

Implicit este „log”.

fscale
Setați scara de frecvență.

Acceptă următoarele valori:

Lin Scară liniară.

log Scară logaritmică.

rlog
Scala logaritmică inversă.

Implicit este „lin”.

win_size
Setați dimensiunea ferestrei.

Acceptă următoarele valori:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

Implicit este „w2048”

win_func
Setați funcția de fereastră.

Acceptă următoarele valori:

RECT
Bartlett
hanning
ciocănind
om negru
welch
Flattop
bharris
bnuttall
bhann
sinus
nuttall

Implicit este „hanning”.

suprapune
Setați suprapunerea ferestrelor. În intervalul „[0, 1]”. Implicit este 1, ceea ce înseamnă suprapunere optimă pentru
va fi selectată funcția fereastră selectată.

medie
Setați media timpului. Setarea la 0 va afișa vârfurile maxime curente. Implicit este
1, ceea ce înseamnă că media timpului este dezactivată.

culoare
Specificați lista de culori separate prin spațiu sau prin „|” care va fi folosit pentru a desena canalul
frecvente. Culorile nerecunoscute sau lipsă vor fi înlocuite cu culoarea albă.

spectru de spectacol
Convertiți sunetul de intrare într-o ieșire video, reprezentând spectrul de frecvență audio.

Filtrul acceptă următoarele opțiuni:

mărimea, s
Specificați dimensiunea video pentru ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „640x512”.

aluneca
Specificați cum ar trebui să alunece spectrul de-a lungul ferestrei.

Acceptă următoarele valori:

înlocui
mostrele încep din nou în stânga când ajung în dreapta

derulaţi
mostrele derulează de la dreapta la stânga

cadru complet
cadrele sunt produse numai când mostrele ajung în dreapta

Valoarea implicită este „înlocuire”.

mod
Specificați modul de afișare.

Acceptă următoarele valori:

combinate
toate canalele sunt afișate pe același rând

distinct
toate canalele sunt afișate pe rânduri separate

Valoarea implicită este combinate.

culoare
Specificați modul de culoare de afișare.

Acceptă următoarele valori:

canal
fiecare canal este afișat într-o culoare separată

intensitate
fiecare canal este afișat folosind aceeași schemă de culori

Valoarea implicită este canal.

scară
Specificați scara utilizată pentru calcularea valorilor intensității culorii.

Acceptă următoarele valori:

Lin liniar

sqrt
rădăcină pătrată, implicit

cbrt
rădăcină cubică

log logaritmică

Valoarea implicită este sqrt.

saturaţie
Setați modificatorul de saturație pentru culorile afișate. Valorile negative oferă o alternativă
schema de culori. 0 nu este deloc saturație. Saturația trebuie să fie în intervalul [-10.0, 10.0].
Valoarea implicită este 1.

win_func
Setați funcția ferestrei.

Acceptă următoarele valori:

nici unul
Fără preprocesare a mostrelor (nu vă așteptați să fie mai rapid)

Hann
fereastra Hann

ciocănind
Fereastra Hamming

om negru
Fereastra Blackman

Valoarea implicită este „hann”.

Utilizarea este foarte similară cu filtrul showwaves; vezi exemplele din acea secțiune.

Exemple

· Fereastra mare cu scalare logaritmică a culorilor:

showspectrum=s=1280x480:scale=log

· Exemplu complet pentru un spectru colorat și glisant pe canal folosind ffplay:

ffplay -f lavfi 'amovie=input.mp3, asplit [a][out1];
[a] showspectrum=mode=separate:color=intensity:slide=1:scale=cbrt [out0]'

showvolume
Convertiți volumul audio de intrare într-o ieșire video.

Filtrul acceptă următoarele opțiuni:

rată, r
Setați rata video.

b Setați lățimea chenarului, intervalul permis este [0, 5]. Implicit este 1.

w Setați lățimea canalului, intervalul permis este [40, 1080]. Implicit este 400.

h Setați înălțimea canalului, intervalul permis este [1, 100]. Implicit este 20.

f Setați fade, intervalul permis este [1, 255]. Implicit este 20.

c Setați expresia culorii volumului.

Expresia poate folosi următoarele variabile:

VOLUM
Volumul maxim curent al canalului în dB.

CANAL
Numărul canalului curent, începând de la 0.

t Dacă este setat, afișează numele canalelor. Implicit este activat.

valuri de spectacol
Convertiți sunetul de intrare într-o ieșire video, reprezentând undele probe.

Filtrul acceptă următoarele opțiuni:

mărimea, s
Specificați dimensiunea video pentru ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „600x240”.

mod
Setați modul de afișare.

Valorile disponibile sunt:

punct
Desenați un punct pentru fiecare probă.

linie
Desenați o linie verticală pentru fiecare probă.

p2p Desenați un punct pentru fiecare probă și o linie între ele.

clina
Desenați o linie verticală centrată pentru fiecare probă.

Valoarea implicită este „punct”.

n Setați numărul de mostre care sunt imprimate pe aceeași coloană. O valoare mai mare va
reduce rata de cadre. Trebuie să fie un număr întreg pozitiv. Această opțiune poate fi setată numai dacă
valoarea pentru rată nu este specificat în mod explicit.

rată, r
Setați rata de cadre de ieșire (aproximativă). Acest lucru se face prin setarea opțiunii n. Mod implicit
valoarea este „25”.

split_channels
Setați dacă canalele trebuie desenate separat sau se suprapun. Valoarea implicită este 0.

Exemple

· Ieșiți simultan fișierul de intrare audio și reprezentarea video corespunzătoare
timp:

amovie=a.mp3,asplit[out0],showwaves[out1]

· Creați un semnal sintetic și afișați-l cu showwaves, forțând o rată de cadre de 30
cadre pe secundă:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

showwavespic
Convertiți sunetul de intrare într-un singur cadru video, reprezentând undele de mostre.

Filtrul acceptă următoarele opțiuni:

mărimea, s
Specificați dimensiunea video pentru ieșire. Pentru sintaxa acestei opțiuni, verificați "Video
mărimea" secțiune in il ffmpeg-utils manual. Valoarea implicită este „600x240”.

split_channels
Setați dacă canalele trebuie desenate separat sau se suprapun. Valoarea implicită este 0.

Exemple

· Extrageți o reprezentare divizată de canal a formei de undă a unei piese audio întregi într-un
Utilizarea imaginii 1024x800 FFMPEG:

ffmpeg -i audio.flac -lavfi showwavespic=split_channels=1:s=1024x800 waveform.png

Despică, asplit
Împărțiți intrarea în mai multe ieșiri identice.

„asplit” funcționează cu intrare audio, „split” cu video.

Filtrul acceptă un singur parametru care specifică numărul de ieșiri. Dacă
nespecificat, este implicit 2.

Exemple

· Creați două ieșiri separate din aceeași intrare:

[in] split [out0][out1]

· Pentru a crea 3 sau mai multe ieșiri, trebuie să specificați numărul de ieșiri, ca în:

[in] asplit=3 [out0][out1][out2]

· Creați două ieșiri separate din aceeași intrare, una decupată și una căptușită:

[în] split [splitout1][splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· Creați 5 copii ale sunetului de intrare cu FFMPEG:

ffmpeg -i INPUT -filter_complex asplit=5 IEȘIRE

zmq, azmq
Primiți comenzi trimise printr-un client libzmq și redirecționați-le către filtrele din
filtrugraf.

„zmq” și „azmq” funcționează ca filtre de trecere. „zmq” trebuie introdus între două videoclipuri
filtre, „azmq” între două filtre audio.

Pentru a activa aceste filtre, trebuie să instalați biblioteca și anteturile libzmq și să configurați
FFmpeg cu „--enable-libzmq”.

Pentru mai multe informații despre libzmq, consultați:http://www.zeromq.org/>

Filtrele „zmq” și „azmq” funcționează ca un server libzmq, care primește mesajele trimise prin
o interfață de rețea definită de adresa_bind opțiune.

Mesajul primit trebuie să fie sub forma:

[ ]

ŢINTĂ specifică ținta comenzii, de obicei numele clasei de filtru sau a
nume specific al instanței de filtru.

COMMAND specifică numele comenzii pentru filtrul țintă.

ARG este opțional și specifică lista de argumente opționale pentru data dată COMMAND.

La recepție, mesajul este procesat și comanda corespunzătoare este injectată în
graficul cu filtru. În funcție de rezultat, filtrul va trimite un răspuns clientului,
adoptarea formatului:




MESAJ este opțional.

Exemple

Uita-te la instrumente/zmqsend pentru un exemplu de client zmq care poate fi folosit pentru a trimite comenzi
procesate de aceste filtre.

Luați în considerare următorul filtergraph generat de ffplay

ffplay -dumpgraph 1 -f lavfi "
culoare=s=100x100:c=rosu [l];
culoare=s=100x100:c=albastru [r];
nullsrc=s=200x100, zmq [bg];
[bg][l] suprapunere [bg+l];
[bg+l][r] suprapunere=x=100 "

Pentru a schimba culoarea părții stângi a videoclipului, se poate folosi următoarea comandă:

echo Parsed_color_0 c galben | instrumente/zmqsend

Pentru a schimba partea dreaptă:

echo Parsed_color_1 c roz | instrumente/zmqsend

MULTIMEDIA SURSE


Mai jos este o descriere a surselor multimedia disponibile în prezent.

un film
Aceasta este la fel ca film sursă, cu excepția că selectează un flux audio în mod implicit.

film
Citiți fluxuri audio și/sau video dintr-un container de film.

Acceptă următorii parametri:

nume de fișier
Numele resursei de citit (nu neapărat un fișier; poate fi și un dispozitiv sau un
flux accesat printr-un protocol).

format_name, f
Specifică formatul presupus pentru citirea filmului și poate fi fie numele unui
container sau un dispozitiv de intrare. Dacă nu este specificat, formatul este ghicit din numele_filmului
sau prin sondare.

seek_point, sp
Specifică punctul de căutare în secunde. Cadrele vor fi ieșite pornind de la această căutare
punct. Parametrul este evaluat cu „av_strtod”, deci valoarea numerică poate fi
sufixat de un postfix IS. Valoarea implicită este „0”.

cursuri, s
Specifică fluxurile de citit. Pot fi specificate mai multe fluxuri, separate prin „+”. The
sursa va avea atunci cât mai multe ieșiri, în aceeași ordine. Sintaxa este explicată în
secțiunea ``Specificatori de flux'' din manualul ffmpeg. Două nume speciale, „dv” și
„da” specifică, respectiv, fluxul video și audio implicit (cel mai potrivit). Implicit este
„dv” sau „da” dacă filtrul este numit „amovie”.

stream_index, si
Specifică indexul fluxului video de citit. Dacă valoarea este -1, cea mai potrivită
fluxul video va fi selectat automat. Valoarea implicită este „-1”. Depreciat. Dacă
filtrul se numește „amovie”, va selecta audio în loc de video.

buclă
Specifică de câte ori se citește fluxul în secvență. Dacă valoarea este mai mică de 1,
fluxul va fi citit din nou și din nou. Valoarea implicită este „1”.

Rețineți că atunci când filmul este în buclă, marcajele de timp sursei nu sunt modificate, așa că se va schimba
generați marcaje temporale care nu cresc monoton.

Permite suprapunerea unui al doilea videoclip peste intrarea principală a unui filtergraph, așa cum se arată în
acest grafic:

intrare -----------> deltapts0 --> suprapunere --> ieșire
^
|
film --> scară--> deltapts1 -------+

Exemple

· Omiteți 3.2 secunde de la începutul fișierului AVI în.avi și suprapuneți-l deasupra
intrare etichetată „în”:

movie=in.avi:seek_point=3.2, scale=180:-1, setpts=PTS-STARTPTS [peste];
[în] setpts=PTS-STARTPTS [principal];
[principal][peste] suprapunere=16:16 [out]

· Citiți de pe un dispozitiv video4linux2 și suprapuneți-l deasupra intrării etichetate „în”:

movie=/dev/video0:f=video4linux2, scale=180:-1, setpts=PTS-STARTPTS [peste];
[în] setpts=PTS-STARTPTS [principal];
[principal][peste] suprapunere=16:16 [out]

· Citiți primul flux video și fluxul audio cu id 0x81 de pe dvd.vob; videoclipul
este conectat la pad-ul numit „video”, iar sunetul este conectat la pad-ul numit
"audio":

film=dvd.vob:s=v:0+#0x81 [video] [audio]

Utilizați filtre ffmpeg online folosind serviciile onworks.net


Servere și stații de lucru gratuite

Descărcați aplicații Windows și Linux

  • 1
    Phaser
    Phaser
    Phaser este o deschidere rapidă, gratuită și distractivă
    cadru de joc HTML5 sursă care oferă
    Redare WebGL și Canvas
    browsere web desktop și mobile. Jocuri
    poate fi co...
    Descărcați Phaser
  • 2
    Motor VASSAL
    Motor VASSAL
    VASSAL este un motor de joc pentru creare
    versiuni electronice ale plăcii tradiționale
    și jocuri de cărți. Oferă suport pentru
    redarea și interacțiunea pieselor de joc,
    și ...
    Descărcați VASSAL Engine
  • 3
    OpenPDF - Furk of iText
    OpenPDF - Furk of iText
    OpenPDF este o bibliotecă Java pentru creare
    și editarea fișierelor PDF cu un LGPL și
    Licență open source MPL. OpenPDF este
    Succesorul LGPL/MPL open source al iText,
    o ...
    Descărcați OpenPDF - Furk of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistem pentru automatizare
    Analize Geoștiințifice - este un Geografic
    Sistemul informatic (GIS) software cu
    capacități imense pentru geodate
    procesare și ana...
    Descărcați SAGA GIS
  • 5
    Caseta de instrumente pentru Java/JTOpen
    Caseta de instrumente pentru Java/JTOpen
    IBM Toolbox for Java / JTOpen este un
    biblioteca de clase Java care acceptă
    programare client/server și internet
    modele către un sistem care rulează OS/400,
    i5/OS, o...
    Descărcați Toolbox pentru Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (sau D3 pentru documente bazate pe date)
    este o bibliotecă JavaScript care vă permite
    pentru a produce date dinamice, interactive
    vizualizări în browsere web. Cu D3
    tu...
    Descărcați D3.js
  • Mai mult »

Comenzi Linux

  • 1
    abidiff
    abidiff
    abidiff - comparați ABI-urile fișierelor ELF
    abidiff compară aplicația binară
    Interfețe (ABI) a două biblioteci partajate
    în format ELF. Emite un sens
    repor ...
    Fugi abidiff
  • 2
    abidw
    abidw
    abidw - serializați ABI-ul unui ELF
    fișierul abidw citește o bibliotecă partajată în ELF
    format și emite o reprezentare XML
    a ABI-ului său la ieșirea standard. The
    emis...
    Run abidw
  • 3
    copac2xml
    copac2xml
    bibutils - conversie bibliografie
    utilitati...
    Rulați copac2xml
  • 4
    Copt
    Copt
    copt - optimizator peephole SYSNOPIS:
    fișier copt.. DESCRIERE: copt este a
    optimizator de uz general pentru vizor. Aceasta
    citește codul din intrarea sa standard și
    scrie un...
    Fugi copt
  • 5
    gather_stx_titles
    gather_stx_titles
    gather_stx_titles - aduna titlul
    declarații din documentele Stx...
    Rulați gather_stx_titles
  • 6
    gatling-banc
    gatling-banc
    bench - http benchmark...
    Alerga gatling-bench
  • Mai mult »

Ad