Angielskifrancuskihiszpański

Ad


Ulubiona usługa OnWorks

ffmpeg-filtry - Online w chmurze

Uruchom filtry ffmpeg u dostawcy bezpłatnego hostingu OnWorks przez Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

Jest to polecenie ffmpeg-filters, które można uruchomić u dostawcy bezpłatnego hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych internetowych stacji roboczych, takich jak Ubuntu Online, Fedora Online, emulator online Windows lub emulator online MAC OS

PROGRAM:

IMIĘ


ffmpeg-filtry - Filtry FFmpeg

OPIS


Ten dokument opisuje filtry, źródła i ujścia dostarczane przez bibliotekę libavfilter.

FILTRACJA WPROWADZENIE


Filtrowanie w FFmpeg jest włączone przez bibliotekę libavfilter.

W libavfilter filtr może mieć wiele wejść i wiele wyjść. Aby zilustrować
różne rzeczy, które są możliwe, rozważymy następujący filtr.

[Główny]
wejście --> split ---------------------> nakładka --> wyjście
| ^
|[tmp] [przerzucenie]|
+-----> przycinanie --> odwracanie -------+

Ten wykres filtra dzieli strumień wejściowy na dwa strumienie, a następnie przesyła jeden strumień przez
filtr przycinania i filtr vflip, przed połączeniem go z powrotem z innym strumieniem przez
nakładanie go na wierzch. Aby to osiągnąć, możesz użyć następującego polecenia:

ffmpeg -i WEJŚCIE -vf "split [główne][tmp]; [tmp] crop=iw:ih/2:0:0, vflip [flip]; [główne][flip] overlay=0:H/2" WYJŚCIE

W rezultacie górna połowa wideo zostanie odzwierciedlona w dolnej połowie
wyjście wideo.

Filtry w tym samym łańcuchu liniowym są oddzielone przecinkami, a odrębne łańcuchy liniowe
filtry są oddzielone średnikami. W naszym przykładzie kadrowanie, przerzucanie są w jednym łańcuchu liniowym,
dzielić i narzuta są osobno w innym. Punkty, w których łączą się łańcuchy liniowe, to
oznaczone nazwami ujętymi w nawiasy kwadratowe. W tym przykładzie filtr dzielony generuje
dwa wyjścia, które są powiązane z etykietami [Główny] i [tmp].

Strumień wysłany do drugiego wyjścia dzielić, oznaczony jako [tmp], jest przetwarzany przez
wole filtr, który wycina dolną połowę filmu, a następnie w pionie
odwrócony. ten narzuta filtr przyjmuje na wejście pierwsze niezmienione wyjście filtra dzielonego
(który został oznaczony jako [Główny]) i nałóż na jego dolną połowę dane wyjściowe generowane przez
kadrowanie, przerzucanie łańcuch filtrów.

Niektóre filtry przyjmują na wejściu listę parametrów: są one określone po nazwie filtra
i znakiem równości i są oddzielone od siebie dwukropkiem.

Istnieją tak zwane źródło filtry które nie mają wejścia audio/wideo oraz tonąć
filtry które nie będą miały wyjścia audio/wideo.

WYKRES


Połączenia wykres2kropka program zawarty w FFmpeg narzędzia katalog może być użyty do parsowania a
opis filtrowania i wydanie odpowiedniej reprezentacji tekstowej w kropki
język.

Wywołaj polecenie:

wykres2kropka -h

aby zobaczyć, jak używać wykres2kropka.

Następnie możesz przekazać opis kropki do kropka program (z pakietu graphviz z
programów) i uzyskać graficzną reprezentację wykresu filtra.

Na przykład sekwencja poleceń:

Echo | \
tools/graph2dot -o graph.tmp && \
kropka -Tpng graph.tmp -o graph.png && \
wyświetl wykres.png

może służyć do tworzenia i wyświetlania obrazu przedstawiającego wykres opisany przez
GRAPH_DESCRIPTION strunowy. Zauważ, że ten ciąg musi być kompletnym, samodzielnym wykresem,
z jego wejściami i wyjściami wyraźnie zdefiniowanymi. Na przykład, jeśli twoja linia poleceń jest z
formularz:

ffmpeg -i plik wejściowy -vf skala=640:360 plik wyjściowy

Twój GRAPH_DESCRIPTION ciąg będzie musiał mieć postać:

nullsrc,skala=640:360,nullsink

może być również konieczne ustawienie nullsrc parametry i dodaj a format filtruj, aby
symulować określony plik wejściowy.

FILTRGRAF OPIS


Filtergraph to ukierunkowany wykres połączonych filtrów. Może zawierać cykle, a tam
może być wieloma linkami między parą filtrów. Każde łącze ma jedną podkładkę wejściową po jednej stronie
podłączając go do jednego filtra, z którego pobiera swoje wejście, a jednego padu wyjściowego na drugi
strona łącząca go z jednym filtrem akceptującym jego wyjście.

Każdy filtr na wykresie filtrów jest instancją klasy filtra zarejestrowaną w
aplikacja, która definiuje funkcje i liczbę padów wejściowych i wyjściowych
filtr.

Filtr bez padów wejściowych nazywany jest „źródłem”, a filtr bez padów wyjściowych to
zwany „zlewem”.

Wykres filtra składnia
Wykres filtracyjny ma reprezentację tekstową, która jest rozpoznawana przez -filtr/-vf/-af i
-filter_kompleks opcje ffmpeg i -vf/-af in ffplayOraz przez
Funkcja „avfilter_graph_parse_ptr()” zdefiniowana w libavfilter/avfilter.h.

Łańcuch filtrów składa się z sekwencji połączonych filtrów, z których każdy jest połączony z
poprzedni w kolejności. Łańcuch filtrów jest reprezentowany przez listę ","-separated
opisy filtrów.

Wykres filtra składa się z sekwencji łańcuchów filtrów. Sekwencja łańcuchów filtrów to
reprezentowana przez listę opisów łańcucha filtrów oddzielonych „;”.

Filtr jest reprezentowany przez ciąg postaci:
[w_link_1]...[w_linku_N]nazwa_filtra=argumenty[out_link_1]...[out_link_M]

nazwa_filtra to nazwa klasy filtra, której instancją jest opisywany filtr
of i musi być nazwą jednej z klas filtrów zarejestrowanych w programie. ten
po nazwie klasy filtra opcjonalnie następuje ciąg "=argumenty".

argumenty to ciąg znaków, który zawiera parametry używane do inicjalizacji filtra
instancja. Może mieć jedną z dwóch form:

· Oddzielona ':' lista klucz=wartość par.

· Oddzielona ':' lista wartość. W tym przypadku zakłada się, że klawisze są opcją
nazwiska w kolejności, w jakiej zostały zadeklarowane. Np. filtr „fade” deklaruje trzy opcje w
ten porzadek -- rodzaj, ramka_początkowa i nb_ramek. Następnie lista parametrów w:0:30 znaczy
że wartość in jest przypisany do opcji rodzaj, 0 do ramka_początkowa i 30 do
nb_ramek.

· Oddzielona ':' lista mieszanych bezpośrednich wartość i długi klucz=wartość pary. Bezpośredni wartość
musi poprzedzać klucz=wartość par i postępuj zgodnie z tą samą kolejnością ograniczeń
poprzedni punkt. Następujące klucz=wartość pary można ustawiać w dowolnej preferowanej kolejności.

Jeśli sama wartość opcji jest listą elementów (np. filtr "format" przyjmuje listę
formaty pikseli), pozycje na liście są zwykle oddzielone |.

Listę argumentów można cytować za pomocą znaku ' jako początkowy i końcowy znak, oraz
charakter \ do ucieczki znaków w cytowanym tekście; w przeciwnym razie argument
łańcuch jest uważany za zakończony, gdy następny znak specjalny (należący do zestawu
[]=;,).

Nazwa i argumenty filtra są opcjonalnie poprzedzone i poprzedzone listą
etykiety łączy. Etykieta linku pozwala nazwać link i powiązać go z danymi wyjściowymi filtra
lub pad wejściowy. Poprzednie etykiety w_link_1 ... w_linku_N, są powiązane z filtrem
pady wejściowe, następujące etykiety out_link_1 ... out_link_M, są powiązane z wyjściem
klocki.

Gdy na wykresie filtra zostaną znalezione dwie etykiety linków o tej samej nazwie, link między
zostanie utworzony odpowiedni pad wejściowy i wyjściowy.

Jeśli pad wyjściowy nie jest oznaczony, jest domyślnie połączony z pierwszym nieopisanym wejściem
wkładka następnego filtra w łańcuchu filtrów. Na przykład w łańcuchu filtrów

nullsrc, split[L1], [L2]nakładka, nullsink

instancja filtra dzielonego ma dwa pady wyjściowe, a instancja filtra nakładki dwa wejścia
naramienniki. Pierwszy pad wyjściowy podziału jest oznaczony jako „L1”, a pierwszy pad wejściowy nakładki to
oznaczony jako „L2”, a drugi pad wyjściowy splitu jest połączony z drugim padem wejściowym
nakładki, które są nieoznaczone.

W opisie filtra, jeśli etykieta wejściowa pierwszego filtra nie jest określona, ​​"in" to
przypuszczalny; jeśli etykieta wyjściowa ostatniego filtru nie jest określona, ​​przyjmowane jest "out".

W kompletnym łańcuchu filtrów wszystkie nieoznaczone wkładki wejściowe i wyjściowe filtra muszą być
połączony. Wykres filtra jest uważany za ważny, jeśli wszystkie wkładki wejściowe i wyjściowe filtra
wszystkie łańcuchy filtrów są połączone.

Libavfilter wstawi się automatycznie skala filtry, w których wymagana jest konwersja formatu.
Możliwe jest określenie flag swscale dla automatycznie wstawianych skalerów przez
poprzedzające "sws_flags=flagi;" do opisu filtra.

Oto opis BNF składni wykresu filtra:

::= ciąg znaków alfanumerycznych i „_”
::= "[" "]"
::= [ ]
::= ciąg znaków (prawdopodobnie cytowany)
::= [ ] ["=" ] [ ]
::= [, ]
::= [flagi_sws= ;] [; ]

Uwagi on wykres filtracyjny uciekać
Kompozycja opisu filtrografu pociąga za sobą kilka poziomów ucieczki. Widzieć dotychczasowy „Cytowanie
i ucieczka” Sekcja in dotychczasowy narzędzia ffmpeg(1) podręcznik aby uzyskać więcej informacji na temat
zastosował procedurę ucieczki.

Ucieczka pierwszego poziomu wpływa na zawartość każdej wartości opcji filtra, która może zawierać
znak specjalny ":" używany do oddzielania wartości lub jeden ze znaków ucieczki "\'".

Ucieczka drugiego poziomu wpływa na cały opis filtra, który może zawierać
znaki specjalne "\'" lub znaki specjalne "[],;" używany przez filtergraph
opis.

Na koniec, kiedy podasz wykres filtra w wierszu poleceń powłoki, musisz wykonać a
trzeci poziom ucieczki dla zawartych w nim znaków specjalnych powłoki.

Rozważmy na przykład, że następujący ciąg zostanie osadzony w tekst rysunkowy filtrować
opis XNUMX wartość:

to jest „ciąg”: może zawierać jeden lub więcej znaków specjalnych

Ten ciąg zawiera specjalny znak ucieczki „'” i znak specjalny „:”, więc
należy uciec w ten sposób:

text=to jest \'ciąg \'\: może zawierać jeden lub więcej znaków specjalnych

Drugi poziom ucieczki jest wymagany podczas osadzania opisu filtra w a
opis wykresu filtra, aby uniknąć wszystkich znaków specjalnych wykresu filtra. Zatem
powyższy przykład staje się:

drawtext=text=to jest \\\'ciąg \\\'\\: może zawierać jeden\ lub więcej\ znaków specjalnych

(zwróć uwagę, że oprócz znaku „\” uciekającego przed znakami specjalnymi, również "," musi być
uciekł).

Wreszcie, podczas pisania opisu filtru potrzebny jest dodatkowy poziom ucieczki
w poleceniu powłoki, które zależy od reguł ucieczki przyjętej powłoki. Na przykład,
zakładając, że "\" jest specjalny i musi być poprzedzony innym "\", poprzednim ciągiem
ostatecznie zaowocuje:

-vf "drawtext=text=to jest \\\\\\'ciąg \\\\\\'\\\\: może zawierać jeden\\ lub więcej\\ znaków specjalnych"

TIMELINE REDAGOWANIE


Niektóre filtry obsługują ogólny umożliwiać opcja. W przypadku filtrów obsługujących edycję osi czasu,
ta opcja może być ustawiona na wyrażenie, które jest oceniane przed wysłaniem ramki do
filtr. Jeśli ocena jest niezerowa, filtr zostanie włączony, w przeciwnym razie ramka
zostanie wysłany bez zmian do następnego filtra na wykresie filtra.

Wyrażenie przyjmuje następujące wartości:

t znacznik czasu wyrażony w sekundach, NAN, jeśli wejściowy znacznik czasu jest nieznany

n kolejny numer ramki wejściowej, zaczynając od 0

pisać pozycja w pliku ramki wejściowej, NAN jeśli nieznana

w
h szerokość i wysokość ramki wejściowej, jeśli wideo

Ponadto filtry te obsługują umożliwiać polecenie, którego można użyć do przedefiniowania
wyrażenie.

Jak każda inna opcja filtrowania, umożliwiać opcja podlega tym samym zasadom.

Na przykład, aby włączyć filtr rozmycia (inteligentne rozmycie) od 10 sekund do 3 minut oraz a
Krzywe filtrowanie od 3 sekund:

smartblur = enable='między(t,10,3*60)',
krzywe = enable='gte(t,3)' : preset=cross_process

AUDIO FILTRY


Kiedy konfigurujesz swoją kompilację FFmpeg, możesz wyłączyć dowolny z istniejących filtrów za pomocą
„--wyłącz-filtry”. Dane wyjściowe konfiguracji pokażą filtry audio zawarte w twoim
budować.

Poniżej znajduje się opis aktualnie dostępnych filtrów audio.

przenikanie
Zastosuj crossfade z jednego wejściowego strumienia audio do innego wejściowego strumienia audio. Krzyż
zanikanie jest stosowane przez określony czas pod koniec pierwszego strumienia.

Filtr akceptuje następujące opcje:

nb_próbek, ns
Określ liczbę próbek, dla których efekt przenikania ma trwać. Na końcu
efektu crossfade pierwszy sygnał wejściowy będzie całkowicie cichy. Wartość domyślna to
44100.

Trwanie, d
Określ czas trwania efektu przenikania. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni. Domyślnie określony jest czas trwania
by nb_próbek. Jeśli jest ustawiona, ta opcja jest używana zamiast nb_próbek.

zachodzić na siebie, o
Czy koniec pierwszego strumienia powinien pokrywać się z początkiem drugiego strumienia. Domyślnie jest włączone.

krzywa1
Ustaw krzywą przejścia crossfade dla pierwszego strumienia.

krzywa2
Ustaw krzywą przejścia crossfade dla drugiego strumienia.

Opis dostępnych typów krzywych patrz zanikać opis filtra.

Przykłady

· Przenikanie z jednego wejścia do drugiego:

ffmpeg -i pierwszy.flac -i drugi.flac -filter_complex crossfade=d=10:c1=exp:c2=exp output.flac

· Przenikanie z jednego wejścia do drugiego, ale bez nakładania się:

ffmpeg -i pierwszy.flac -i drugi.flac -filter_complex crossfade=d=10:o=0:c1=exp:c2=exp output.flac

opóźnienie
Opóźnij jeden lub więcej kanałów audio.

Próbki w kanale opóźnionym są wypełnione ciszą.

Filtr akceptuje następującą opcję:

opóźnienia
Ustaw listę opóźnień w milisekundach dla każdego kanału rozdzielonych znakiem '|'. Przynajmniej jeden
należy podać opóźnienie większe niż 0. Niewykorzystane opóźnienia będą po cichu ignorowane. Jeśli
liczba podanych opóźnień jest mniejsza niż liczba kanałów wszystkie pozostałe kanały będą
nie zwlekaj.

Przykłady

· Opóźnienie pierwszego kanału o 1.5 sekundy, trzeciego kanału o 0.5 sekundy i pozostawienie
drugi kanał (i wszelkie inne kanały, które mogą być obecne) bez zmian.

opóźnienie=1500|0|500

echo
Zastosuj echo do wejściowego dźwięku.

Echa są odbitym dźwiękiem i mogą występować naturalnie w górach (a czasami duże
budynki) podczas mówienia lub krzyczenia; cyfrowe efekty echa naśladują to zachowanie i są
często używany do wypełnienia dźwięku pojedynczego instrumentu lub wokalu. Różnica czasu
między pierwotnym sygnałem a odbiciem jest „opóźnienie”, a głośność
sygnał odbity to „zanik”. Wiele ech może mieć różne opóźnienia i zaniki.

Poniżej znajduje się opis akceptowanych parametrów.

zysk_
Ustaw wzmocnienie wejściowe sygnału odbitego. Wartość domyślna to 0.6.

out_zysk
Ustaw wzmocnienie wyjściowe odbitego sygnału. Wartość domyślna to 0.3.

opóźnienia
Ustaw listę odstępów czasu w milisekundach między oryginalnym sygnałem a odbiciami
oddzielone znakiem '|'. Dozwolony zakres dla każdego „opóźnienia” to „(0 – 90000.0]”. Wartość domyślna to 1000.

rozkłada się
Ustaw listę głośności odbitych sygnałów oddzielonych znakiem '|'. Dozwolony zakres dla każdego
„Zanik” to „(0 – 1.0]”. Wartość domyślna to 0.5.

Przykłady

· Spraw, aby brzmiało to tak, jakby było dwa razy więcej instrumentów niż faktycznie gra:

echo=0.8:0.88:60:0.4

· Jeśli opóźnienie jest bardzo krótkie, to brzmi jak (metaliczny) robot grający muzykę:

echo=0.8:0.88:6:0.4

· Dłuższe opóźnienie zabrzmi jak koncert plenerowy w górach:

echo=0.8:0.9:1000:0.3

· Tak samo jak powyżej, ale z jeszcze jedną górą:

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

eval
Zmodyfikuj sygnał audio zgodnie z określonymi wyrażeniami.

Ten filtr akceptuje jedno lub więcej wyrażeń (po jednym dla każdego kanału), które są oceniane
i używane do modyfikowania odpowiedniego sygnału audio.

Przyjmuje następujące parametry:

wyrażenie
Ustaw listę wyrażeń rozdzielonych '|' dla każdego oddzielnego kanału. Jeśli liczba
kanały wejściowe są większe niż liczba wyrażeń, ostatnie określone
wyrażenie jest używane dla pozostałych kanałów wyjściowych.

układ_kanałowy, c
Ustaw układ kanału wyjściowego. Jeśli nie określono, układ kanału jest określony przez
liczba wyrażeń. Jeśli ustawione na taki sam, domyślnie użyje tego samego kanału wejściowego
układ.

Każde wyrażenie w wyrażenie może zawierać następujące stałe i funkcje:

ch numer kanału bieżącego wyrażenia

n numer ocenianej próby, począwszy od 0

s próbna stawka

t czas ocenianej próbki wyrażony w sekundach

nb_w_kanałach
nb_kanały_wyjściowe
liczba kanałów wejściowych i wyjściowych

wart(CH)
wartość kanału wejściowego z numerem CH

Uwaga: ten filtr działa wolno. Aby przyspieszyć przetwarzanie, powinieneś użyć dedykowanego filtra.

Przykłady

· Połowa objętości:

aeval=val(ch)/2:c=to samo

· Odwrócona faza drugiego kanału:

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

zanikać
Zastosuj efekt zanikania/zanikania do wejściowego dźwięku.

Poniżej znajduje się opis akceptowanych parametrów.

rodzaj, t
Określ typ efektu, może być „in” dla zanikania lub „out” dla wyciszania
efekt. Wartość domyślna to „w”.

początek_przykładu, ss
Określ numer próbki początkowej, aby rozpocząć stosowanie efektu zanikania. Domyślna
to 0.

nb_próbek, ns
Określ liczbę sampli, dla których efekt zanikania ma trwać. Na końcu
efekt zanikania dźwięk wyjściowy będzie miał taką samą głośność jak dźwięk wejściowy, przy
po zakończeniu przejścia wyciszania dźwięk wyjściowy będzie wyciszony. Wartość domyślna to 44100.

czas rozpoczęcia, st
Określ czas rozpoczęcia efektu zanikania. Wartość domyślna to 0. Wartość musi być określona
jako czas trwania; zobaczyć dotychczasowy Czas czas trwania Sekcja in dotychczasowy narzędzia ffmpeg(1) podręcznik dla
przyjęta składnia. Jeśli jest ustawiona, ta opcja jest używana zamiast początek_przykładu.

Trwanie, d
Określ czas trwania efektu zanikania. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni. Pod koniec efektu zanikania
dźwięk wyjściowy będzie miał taką samą głośność jak dźwięk wejściowy, pod koniec wyciszania
przejście wyjście audio będzie cisza. Domyślnie czas trwania określany jest przez
nb_próbek. Jeśli jest ustawiona, ta opcja jest używana zamiast nb_próbek.

krzywa
Ustaw krzywą przejścia zanikania.

Przyjmuje następujące wartości:

tri wybierz trójkątne, liniowe nachylenie (domyślne)

qsin
wybierz ćwierć fali sinusoidalnej

hsin
wybierz połowę sinusoidy

inspiracja
wybierz wykładniczą sinusoidę

log wybierz logarytmiczne

szwagier
wybierz odwróconą parabolę

tutaj wybierz kwadratowe

kostka wybierz sześcienny

squir wybierz pierwiastek kwadratowy

cbr wybierz pierwiastek sześcienny

przez wybierz parabolę

exp wybierz wykładniczy

iqsin
wybierz odwróconą ćwiartkę sinusoidy

ihsin
wybierz odwróconą połowę sinusoidy

życzenie
wybierz podwójne wykładnicze miejsce

desi
wybierz sigmoid podwójnie wykładniczy

Przykłady

· Zanikanie w pierwszych 15 sekundach dźwięku:

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

· Wycisz ostatnie 25 sekund 900-sekundowego dźwięku:

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

format
Ustaw ograniczenia formatu wyjściowego dla dźwięku wejściowego. Ramy będą negocjować najwięcej
odpowiedni format, aby zminimalizować konwersje.

Przyjmuje następujące parametry:

przykładowe_fmts
Lista żądanych formatów przykładowych rozdzielonych znakami '|'.

przykładowe_stawki
Lista żądanych częstotliwości próbkowania rozdzielonych „|”.

układy kanałów
Lista żądanych układów kanałów rozdzielonych '|'.

See dotychczasowy Kanał układ Sekcja in dotychczasowy narzędzia ffmpeg(1) podręcznik dla wymaganej składni.

Jeśli parametr zostanie pominięty, wszystkie wartości są dozwolone.

Wymuś wyjście jako stereofoniczne 8-bitowe bez znaku lub 16-bitowe ze znakiem

aformat=sample_fmts=u8|s16:channel_layouts=stereo

wszyscy przechodzą
Zastosuj dwubiegunowy filtr wszechprzepustowy o częstotliwości środkowej (w Hz) częstotliwość, i filtr-
szerokość szerokość. Filtr wszechprzepustowy zmienia częstotliwość dźwięku na zależność fazową
bez zmiany stosunku częstotliwości do amplitudy.

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw częstotliwość w Hz.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości.

łączyć się
Połącz dwa lub więcej strumieni audio w jeden wielokanałowy strumień.

Filtr akceptuje następujące opcje:

Wejścia
Ustaw liczbę wejść. Wartość domyślna to 2.

Jeśli układy kanałów wejść są rozłączne, a zatem kompatybilne, kanał
układ wyjścia zostanie odpowiednio ustawiony, a kanały zostaną uporządkowane jako
niezbędny. Jeśli układy kanałów wejść nie są rozłączne, na wyjściu będą wszystkie
kanały pierwszego wejścia, następnie wszystkie kanały drugiego wejścia, w tej kolejności,
a układ kanału wyjścia będzie wartością domyślną odpowiadającą sumie
Liczba kanałów.

Na przykład, jeśli pierwsze wejście to 2.1 (FL+FR+LF), a drugie wejście to FC+BL+BR,
wtedy wyjście będzie w 5.1, z kanałami w następującej kolejności: a1, a2, b1, a3,
b2, b3 (a1 to pierwszy kanał pierwszego wejścia, b1 to pierwszy kanał drugiego)
Wejście).

Z drugiej strony, jeśli oba wejścia są w stereo, kanały wyjściowe będą ustawione domyślnie
kolejność: a1, a2, b1, b2, a układ kanałów zostanie dowolnie ustawiony na 4.0, co może lub
może nie być wartością oczekiwaną.

Wszystkie wejścia muszą mieć tę samą częstotliwość próbkowania i format.

Jeśli wejścia nie mają tego samego czasu trwania, wyjście zatrzyma się najkrócej.

Przykłady

· Połącz dwa pliki mono w strumień stereo:

amovie=lewo.wav [l] ; amovie=prawo.mp3 [r] ; [l] [r] amerge

· Wiele połączeń, zakładając 1 strumień wideo i 6 strumieni audio w wejście.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 wyjście.mkv

mieszać
Miksuje wiele wejść audio w jedno wyjście.

Zauważ, że ten filtr obsługuje tylko próbki zmiennoprzecinkowe ( łączyć się i pan filtry audio
obsługuje wiele formatów). Jeśli mieszać wejście ma wtedy próbki całkowite przykładowy będzie
automatycznie wstawiane, aby wykonać konwersję do próbek pływających.

Na przykład

ffmpeg -i WEJŚCIE1 -i WEJŚCIE2 -i WEJŚCIE3 -filter_complex amix=inputs=3:duration=first:dropout_transition=3 WYJŚCIE

zmiksuje 3 wejściowe strumienie audio do jednego wyjścia o takim samym czasie trwania jak pierwszy
wejście i czas przejścia dla przerwania 3 sekundy.

Przyjmuje następujące parametry:

Wejścia
Liczba wejść. Jeśli nie jest określony, domyślnie wynosi 2.

czas trwania
Jak określić koniec strumienia.

najdłużej
Czas trwania najdłuższego wejścia. (domyślna)

najkrótsza
Czas trwania najkrótszego wejścia.

drugim
Czas trwania pierwszego wejścia.

przerwa_przejście
Czas przejścia (w sekundach) na renormalizację głośności po zakończeniu strumienia wejściowego.
Wartość domyślna to 2 sekund.

anulacja
Przekaż niezmienione źródło dźwięku do wyjścia.

Podkładka
Wypełnij koniec strumienia audio ciszą.

Może być używany razem z ffmpeg -najkrótszy aby rozszerzyć strumienie audio do tej samej długości
jako strumień wideo.

Poniżej znajduje się opis akceptowanych opcji.

rozmiar_pakietu
Ustaw rozmiar pakietu ciszy. Wartość domyślna to 4096.

pad_len
Ustaw liczbę próbek ciszy do dodania na koniec. Po osiągnięciu wartości,
strumień jest zakończony. Ta opcja wyklucza się wzajemnie z cały_len.

cały_len
Ustaw minimalną całkowitą liczbę próbek w wyjściowym strumieniu audio. Jeśli wartość to
dłuższa niż długość wejściowego dźwięku, na końcu dodawana jest cisza, aż do uzyskania wartości
osiągnięty. Ta opcja wyklucza się wzajemnie z pad_len.

Jeśli żadne pad_len ani cały_len opcja jest ustawiona, filtr doda ciszy do
koniec strumienia wejściowego na czas nieokreślony.

Przykłady

· Dodaj 1024 próbki ciszy na końcu wejścia:

apad=pad_len=1024

· Upewnij się, że wyjście audio będzie zawierać co najmniej 10000 próbek, dopełnij wejście za pomocą
cisza w razie potrzeby:

apad=cały_len=10000

· Posługiwać się ffmpeg aby wzmocnić wejście audio ciszą, aby strumień wideo był zawsze
wynik najkrótszy i zostanie przekonwertowany do końca w pliku wyjściowym podczas używania
dotychczasowy najkrótsza opcja:

ffmpeg -i WIDEO -i AUDIO -filter_complex "[1:0]apad" -najkrótsze WYJŚCIE

afazer
Dodaj efekt fazowania do wejściowego dźwięku.

Filtr fazerowy tworzy serie szczytów i dołków w widmie częstotliwości. ten
położenie szczytów i dolin jest modulowane tak, aby zmieniały się w czasie, tworząc a
efekt zamiatania.

Poniżej znajduje się opis akceptowanych parametrów.

zysk_
Ustaw wzmocnienie wejścia. Wartość domyślna to 0.4.

out_zysk
Ustaw wzmocnienie wyjściowe. Wartość domyślna to 0.74

opóźnienie
Ustaw opóźnienie w milisekundach. Wartość domyślna to 3.0.

próchnica
Ustaw rozkład. Wartość domyślna to 0.4.

prędkość
Ustaw prędkość modulacji w Hz. Wartość domyślna to 0.5.

rodzaj
Ustaw typ modulacji. Domyślnie jest trójkątny.

Przyjmuje następujące wartości:

trójkątny, t
sinusoidalny, s

przykładowy
Ponownie próbkuj dźwięk wejściowy do określonych parametrów, używając biblioteki libswresample. Jeśli
żadne nie są określone, filtr automatycznie przekonwertuje dane wejściowe i
wyjście.

Ten filtr może również rozciągać/ściskać dane audio, aby dopasować je do znaczników czasu
lub aby wprowadzić ciszę / wyciąć dźwięk, aby dopasować go do znaczników czasu, wykonaj kombinację
jedno i drugie albo nie.

Filtr akceptuje składnię [próbna stawka:]opcje_ponownego próbkowania, Gdzie próbna stawka wyraża
częstotliwość próbkowania i opcje_ponownego próbkowania to lista klucz=wartość pary, oddzielone znakiem ":". Widzieć
instrukcja ffmpeg-resampler zawiera pełną listę obsługiwanych opcji.

Przykłady

· Ponowne próbkowanie wejściowego dźwięku do 44100 Hz:

arepróbka=44100

· Rozciąganie/ściskanie próbek do podanych znaczników czasu, maksymalnie 1000 próbek na
druga rekompensata:

aresample=async=1000

assetprzykłady
Ustaw liczbę próbek na każdą wyjściową ramkę audio.

Ostatni pakiet wyjściowy może zawierać inną liczbę próbek, ponieważ filtr zostanie przepłukany
wszystkie pozostałe próbki, gdy sygnał wejściowy audio sygnalizuje jego koniec.

Filtr akceptuje następujące opcje:

nb_out_samples, n
Ustaw liczbę klatek na każdą wyjściową ramkę audio. Numer jest przeznaczony jako
Liczba przykładów dla każdy kanał. Wartość domyślna to 1024.

Podkładka, p
Jeśli jest ustawiony na 1, filtr dopełni ostatnią klatkę audio zerami, tak aby ostatnia
ramka będzie zawierała taką samą liczbę próbek jak poprzednie. Wartość domyślna to
1.

Na przykład, aby ustawić liczbę próbek na klatkę na 1234 i wyłączyć dopełnienie dla
ostatnia klatka, użyj:

asetyprzykłady=n=1234:p=0

assetrate
Ustaw częstotliwość próbkowania bez zmiany danych PCM. Spowoduje to zmianę prędkości
i boisko.

Filtr akceptuje następujące opcje:

próbna stawka, r
Ustaw wyjściową częstotliwość próbkowania. Wartość domyślna to 44100 Hz.

pokaż informacje
Pokaż wiersz zawierający różne informacje dla każdej wejściowej ramki audio. Dźwięk wejściowy jest
niezmodyfikowany.

Pokazany wiersz zawiera sekwencję par klucz/wartość formularza klucz:wartość.

Na wyjściu pokazane są następujące wartości:

n Numer (sekwencyjny) ramki wejściowej, zaczynając od 0.

pkt Znacznik czasu prezentacji ramki wejściowej, w jednostkach podstawy czasu; podstawa czasu
zależy od wkładki wejściowej filtra i zwykle wynosi 1/próbna stawka.

pts_czas
Znacznik czasu prezentacji ramki wejściowej w sekundach.

pisać pozycja ramki w strumieniu wejściowym, -1 jeśli ta informacja jest niedostępna
i/lub bez znaczenia (na przykład w przypadku dźwięku syntetycznego)

fmt Przykładowy format.

rozplanowanie
Układ kanałów.

stawka
Częstotliwość próbkowania dla ramki audio.

nb_próbek
Liczba próbek (na kanał) w ramce.

suma kontrolna
Suma kontrolna Adler-32 (wydrukowana w systemie szesnastkowym) danych audio. Dla dźwięku planarnego,
dane są traktowane tak, jakby wszystkie płaszczyzny były połączone.

samolot_suma kontrolna
Lista sum kontrolnych Adler-32 dla każdej płaszczyzny danych.

astaty
Wyświetlaj informacje statystyczne w dziedzinie czasu o kanałach audio. Statystyki są
obliczona i wyświetlona dla każdego kanału audio oraz, w stosownych przypadkach, ogólna liczba
jest również podana.

Akceptuje następującą opcję:

długość
Krótka długość okna w sekundach, używana do pomiaru wartości szczytowej i minimalnej RMS. Wartość domyślna to
0.05 (50 milisekund). Dozwolony zakres to „[0.1–10]”.

metadanych
Ustaw wstrzykiwanie metadanych. Wszystkie klucze metadanych mają przedrostek „lavfi.astats.X”,
gdzie „X” to numer kanału zaczynający się od 1 lub ciąg „Ogólny”. Domyślnie jest wyłączone.

Dostępne klucze dla każdego kanału to: DC_offset Min_level Max_level Min_różnica
Maksymalna_różnica Średnia_różnica Poziom_szczytowy RMS_szczyt RMS_dołek Współczynnik_szczytu Współczynnik_płaski
Liczba_szczytów Głębia_bitów

i dla Ogólnie: DC_offset Min_level Max_level Min_difference Max_difference
Średnia_różnica Poziom_szczytu Poziom_wartości RMS_Szczyt_RMS_dołek_współczynnika Płaski_współczynnik Liczba_szczytów
Głębokość_bitowa Liczba_próbek

Na przykład pełny klucz wygląda tak "lavfi.astats.1.DC_offset" lub tak
„lavfi.astats.Ogólna.liczba_szczytów”.

Aby uzyskać opis, co oznacza każdy klucz, przeczytaj poniżej.

zresetuj
Ustaw liczbę klatek, po których statystyki zostaną przeliczone. Wartość domyślna to
niepełnosprawny.

Poniżej znajduje się opis każdego pokazanego parametru:

DC offset
Średnie przesunięcie amplitudy od zera.

Min poziom
Minimalny poziom próbki.

Max poziom
Maksymalny poziom próbki.

Min różnica
Minimalna różnica między dwiema kolejnymi próbkami.

Max różnica
Maksymalna różnica między dwiema kolejnymi próbkami.

Oznaczać różnica
Średnia różnica między dwiema kolejnymi próbkami. Średnia z każdej różnicy
między dwiema kolejnymi próbkami.

Szczyt poziom dB
RMS poziom dB
Standardowy poziom szczytowy i RMS mierzony w dBFS.

RMS szczyt dB
RMS przez dB
Wartości szczytowe i minimalne dla poziomu RMS mierzone w krótkim oknie.

Herb czynnik
Standardowy stosunek wartości szczytowej do poziomu RMS (uwaga: nie w dB).

Mieszkanie czynnik
Płaskość (tzn. kolejne próbki o tej samej wartości) sygnału w jego piku
poziomy (tzn. albo Min poziom or Max poziom).

Szczyt liczyć
Liczba przypadków (nie liczba próbek), w których uzyskano sygnał Min
poziom or Max poziom.

Bit głębokość
Ogólna głębia bitowa dźwięku. Liczba bitów użytych dla każdej próbki.

synchronizacja strumieniowa
Prześlij dwa strumienie audio i kontroluj kolejność przekazywania buforów.

Filtr akceptuje następujące opcje:

wyraż, e
Ustaw wyrażenie decydujące o tym, który strumień powinien być dalej przekazywany: jeśli wynik to
ujemny, pierwszy strumień jest przekazywany; jeśli wynik jest dodatni lub zerowy, drugi
strumień jest przekazywany. Może używać następujących zmiennych:

b1 b2
liczba buforów przekazanych do tej pory w każdym strumieniu

s1 s2
liczba próbek przesłanych do tej pory w każdym strumieniu

t1 t2
aktualny znacznik czasu każdego strumienia

Domyślna wartość to „t1-t2”, co oznacza, że ​​zawsze przesyłać dalej strumień, który ma
mniejszy znacznik czasu.

Przykłady

Test warunków skrajnych „amerge” poprzez losowe wysyłanie buforów na niewłaściwym wejściu, unikając jednocześnie
dużo desynchronizacji:

amovie=plik.ogg [a] ; amovie=plik.mp3 [b] ;
[a] [b] astreamsync=(2*przypadkowy(1))-1+tanh(5*(t1-t2)) [a2] [b2] ;
[a2] [b2] łączyć

asyncty
Synchronizuj dane audio ze znacznikami czasu, ściskając/rozciągając je i/lub upuszczając
próbki/dodawanie ciszy w razie potrzeby.

Ten filtr nie jest budowany domyślnie, użyj przykładowy zrobić wyciskanie/rozciąganie.

Przyjmuje następujące parametry:

kompensować
Włącz rozciąganie/ściskanie danych, aby dopasować je do znaczników czasu. Wyłączone przez
domyślna. Po wyłączeniu przerwy czasowe są zakrywane ciszą.

min_delta
Minimalna różnica między znacznikami czasu a danymi dźwiękowymi (w sekundach) do wyzwolenia
dodawanie/upuszczanie próbek. Wartość domyślna to 0.1. Jeśli uzyskasz niedoskonałą synchronizację z
ten filtr, spróbuj ustawić ten parametr na 0.

maks_komp
Maksymalna kompensacja w próbkach na sekundę. Dotyczy tylko kompensacji=1. ten
wartość domyślna to 500.

pierwszy_pts
Załóżmy, że pierwszy PTS powinien mieć tę wartość. Podstawa czasu to 1 / częstotliwość próbkowania. Ten
pozwala na dopełnienie/przycinanie na początku strumienia. Domyślnie żadne założenie nie jest
wykonane z oczekiwanym PTS dla pierwszej klatki, więc nie jest wykonywane żadne dopełnienie ani przycinanie. Do
na przykład może to być ustawione na 0, aby uzupełnić początek ciszą, jeśli strumień audio
rozpoczyna się po strumieniu wideo lub przycina próbki z ujemnym PTS z powodu
opóźnienie enkodera.

tempo
Dostosuj tempo dźwięku.

Filtr akceptuje dokładnie jeden parametr, tempo audio. Jeśli nie określono, to
filtr przyjmie nominalne tempo 1.0. Tempo musi mieścić się w zakresie [0.5, 2.0].

Przykłady

· Zwolnij dźwięk do 80% tempa:

tempo=0.8

· Aby przyspieszyć dźwięk do 125% tempa:

tempo=1.25

atrym
Przytnij dane wejściowe tak, aby dane wyjściowe zawierały jedną ciągłą podczęść danych wejściowych.

Przyjmuje następujące parametry:

początek
Znacznik czasu (w sekundach) początku odcinka do zachowania. Np. próbka audio z
znacznik czasu początek będzie pierwszą próbką w danych wyjściowych.

zakończenia Określ czas pierwszej próbki audio, która zostanie odrzucona, tj. próbki audio
bezpośrednio poprzedzający ten ze znacznikiem czasu zakończenia będzie ostatnią próbką w
wyjście.

punkty_początkowe
Taki sam jak początek, z wyjątkiem tego, że ta opcja ustawia początkowy znacznik czasu w próbkach zamiast
towary drugiej jakości.

koniec_pts
Taki sam jak zakończenia, z tą różnicą, że ta opcja ustawia znacznik czasu zakończenia w próbkach zamiast w sekundach.

czas trwania
Maksymalny czas trwania wyjścia w sekundach.

początek_przykładu
Numer pierwszej próbki, która powinna zostać wyprowadzona.

próbka_końcowa
Numer pierwszej próbki, która powinna zostać upuszczona.

początek, zakończenia, czas trwania są wyrażone jako specyfikacje czasu trwania; zobaczyć dotychczasowy Czas
czas trwania Sekcja in dotychczasowy narzędzia ffmpeg(1) podręcznik.

Zwróć uwagę, że pierwsze dwa zestawy opcji początku/końca oraz czas trwania opcja spójrz na
znacznik czasu ramki, podczas gdy opcje _sample po prostu zliczają próbki, które przechodzą przez
filtr. Tak więc start/end_pts i start/end_sample dadzą różne wyniki, gdy
znaczniki czasu są nieprawidłowe, niedokładne lub nie zaczynają się od zera. Należy również pamiętać, że ten filtr nie
modyfikować sygnatury czasowe. Jeśli chcesz, aby wyjściowe znaczniki czasu zaczynały się od zera, wstaw znak
filtr assetpts po filtrze atrim.

Jeśli ustawionych jest wiele opcji rozpoczęcia lub zakończenia, ten filtr stara się być zachłanny i zachować wszystkie
próbki, które pasują do co najmniej jednego z określonych ograniczeń. Aby zachować tylko tę część, która
dopasowuje wszystkie ograniczenia jednocześnie, łączy wiele filtrów atrimów.

Wartości domyślne są takie, że wszystkie dane wejściowe są zachowywane. Można więc ustawić np. tylko
wartości końcowe, aby zachować wszystko przed określonym czasem.

Przykłady:

· Porzuć wszystko oprócz drugiej minuty wprowadzania danych:

ffmpeg -i WEJŚCIE -af atrim=60:120

· Zachowaj tylko pierwsze 1000 próbek:

ffmpeg -i WEJŚCIE -af atrim=end_sample=1000

przepustka
Zastosuj dwubiegunowy filtr pasmowoprzepustowy Butterwortha o częstotliwości środkowej częstotliwość,
(3dB-punkty) szerokość pasma. ten csg opcja wybiera stałe wzmocnienie osłony (wzmocnienie szczytowe =
Q) zamiast domyślnego: stałe wzmocnienie szczytowe 0 dB. Filtr toczy się przy 6 dB na oktawę
(20dB na dekadę).

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw centralną częstotliwość filtra. Wartość domyślna to 3000.

csg Stałe wzmocnienie spódnicy, jeśli ustawione na 1. Domyślna wartość to 0.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości.

odrzucenie zespołu
Zastosuj dwubiegunowy filtr pasmowy Butterwortha z częstotliwością środkową częstotliwość,
(3dB-punkt) szerokość pasma szerokość. Filtr toczy się z prędkością 6dB na oktawę (20dB na dekadę).

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw centralną częstotliwość filtra. Wartość domyślna to 3000.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości.

bas
Wzmocnij lub wytnij niskie (niższe) częstotliwości dźwięku za pomocą dwubiegunowego filtra półkowego
z reakcją podobną do reakcji standardowych regulatorów barwy dźwięku hi-fi. Jest to również znane jako
wyrównanie półek (EQ).

Filtr akceptuje następujące opcje:

zdobyć, g
Podaj wzmocnienie przy 0 Hz. Jego użyteczny zakres to około -20 (dla dużego cięcia) do +20 (dla a
duże zwiększenie). Uważaj na przycinanie podczas korzystania z dodatniego wzmocnienia.

częstotliwość, f
Ustaw centralną częstotliwość filtra, dzięki czemu można go użyć do rozszerzenia lub zmniejszenia
zakres częstotliwości do wzmocnienia lub obcięcia. Wartość domyślna to 100 Hz.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ, jak strome jest przejście półki filtra.

bikwad
Zastosuj biquad filtr IIR o podanych współczynnikach. Gdzie b0, b1, b2 i a0, a1, a2
są odpowiednio współczynnikami licznika i mianownika.

bs2b
Bauer stereo do transformacji binauralnej, która poprawia słuchanie dźwięku stereo
nagrania dźwiękowe.

Przyjmuje następujące parametry:

profil
Wstępnie zdefiniowany poziom posuwu krzyżowego.

domyślnym
Poziom domyślny (fcut=700, feed=50).

spoko
Obwód Chu Moy (fcut=700, feed=60).

jmeier
Obwód Jana Meiera (fcut=650, feed=95).

cięcie
Częstotliwość cięcia (w Hz).

karmić
Poziom paszy (w Hz).

mapa kanałów
Zmień mapowanie kanałów wejściowych na nowe lokalizacje.

Przyjmuje następujące parametry:

układ_kanału
Układ kanałów strumienia wyjściowego.

mapa Mapuj kanały od wejścia do wyjścia. Argumentem jest lista oddzielonych '|' mapowań,
każdy w „in_channel-out_channel" or na_kanale forma. na_kanale może być
nazwa kanału wejściowego (np. FL dla lewego przedniego) lub jego indeks w kanale wejściowym
układ. kanał_wyjściowy to nazwa kanału wyjściowego lub jego indeks na wyjściu
układ kanałów. Jeśli kanał_wyjściowy nie jest podany, to jest domyślnie indeksem, zaczynając
z zerem i rosnącym o jeden dla każdego mapowania.

Jeśli nie ma mapowania, filtr domyślnie mapuje kanały wejściowe na wyjście
kanały, zachowanie indeksów.

Na przykład zakładając, że plik wejściowy MOV 5.1+downmix,

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

utworzy wyjściowy plik WAV oznaczony jako stereo z kanałów downmixu na wejściu.

Aby naprawić plik 5.1 WAV nieprawidłowo zakodowany w natywnej kolejności kanałów AAC

ffmpeg -i in.wav -filter 'mapa kanałów=1|2|0|5|3|4:5.1' out.wav

dzielenie kanałów
Podziel każdy kanał z wejściowego strumienia audio na osobny strumień wyjściowy.

Przyjmuje następujące parametry:

układ_kanału
Układ kanałów strumienia wejściowego. Wartość domyślna to „stereo”.

Na przykład, zakładając plik MP3 z wejściem stereo,

ffmpeg -i in.mp3 -filter_complex channelspodziel się.mkv

utworzy wyjściowy plik Matroska z dwoma strumieniami audio, z których jeden zawiera tylko lewy
kanał, a drugi właściwy kanał.

Podziel plik 5.1 WAV na pliki na kanał:

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

refren
Dodaj efekt chóru do dźwięku.

Może sprawić, że pojedynczy wokal zabrzmi jak refren, ale można go również zastosować do instrumentacji.

Chorus przypomina efekt echa z krótkim opóźnieniem, ale w przypadku echa opóźnienie jest
stała, z chórem, jest zmieniana za pomocą modulacji sinusoidalnej lub trójkątnej. ten
głębokość modulacji określa zakres, w jakim modulowane opóźnienie jest odtwarzane przed lub po
opóźnienie. Stąd opóźniony dźwięk będzie brzmiał wolniej lub szybciej, czyli opóźniony dźwięk
nastrojone wokół oryginalnego, jak w refrenie, w którym niektóre wokale są nieco fałszywie tonowane.

Przyjmuje następujące parametry:

zysk_
Ustaw wzmocnienie wejścia. Wartość domyślna to 0.4.

out_zysk
Ustaw wzmocnienie wyjściowe. Wartość domyślna to 0.4.

opóźnienia
Ustaw opóźnienia. Typowe opóźnienie wynosi około 40ms do 60ms.

rozkłada się
Zestaw rozpadów.

prędkości
Ustaw prędkości.

głębokości
Ustaw głębokości.

Przykłady

· Pojedyncze opóźnienie:

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

· Dwa opóźnienia:

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

· Pełniej brzmiący refren z trzema opóźnieniami:

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

towarzysz
Kompresuj lub rozszerzaj zakres dynamiki dźwięku.

Przyjmuje następujące parametry:

Ataki
rozkłada się
Lista czasów w sekundach dla każdego kanału, przez które chwilowy poziom
sygnał wejściowy jest uśredniany w celu określenia jego głośności. Ataki odnosi się do zwiększenia objętości
i rozkłada się odnosi się do zmniejszenia głośności. W większości sytuacji czas ataku
(reakcja na głośniejszy dźwięk) powinien być krótszy niż czas zaniku, ponieważ
ludzkie ucho jest bardziej wrażliwe na nagły głośny dźwięk niż nagły cichy dźwięk. Typowy
wartość ataku wynosi 0.3 sekundy, a typowa wartość zaniku to 0.8 sekundy. Jeśli
określona liczba ataków i zaników jest mniejsza niż liczba kanałów, ostatni zestaw
atak/zanik zostanie użyty dla wszystkich pozostałych kanałów.

zwrotnica
Lista punktów dla transmitancji, określona w dB w stosunku do maksimum
możliwa amplituda sygnału. Każda lista kluczowych punktów musi być zdefiniowana w następujący sposób
składnia: "x0/y0|x1/y1|x2/y2|...." lub "x0/y0 x1/y1 x2/y2...."

Wartości wejściowe muszą być w ściśle rosnącej kolejności, ale funkcja przenoszenia nie
nie muszą być monotonnie wznoszące się. Zakładany jest punkt „0/0”, ale można go przesłonić
(o „0/wyjście dBn”). Typowe wartości funkcji transferu to "-70/-70|-60/-20".

miękkie kolano
Ustaw promień łuku w dB dla wszystkich połączeń. Wartość domyślna to 0.01.

zdobyć
Ustaw dodatkowe wzmocnienie w dB, które ma być zastosowane we wszystkich punktach funkcji transferu.
Pozwala to na łatwą regulację ogólnego wzmocnienia. Domyślnie jest to 0.

Tom
Ustaw początkową głośność w dB, którą należy przyjąć dla każdego kanału, gdy rozpocznie się filtrowanie.
Pozwala to użytkownikowi początkowo podać poziom nominalny, tak aby na przykład a
bardzo duże wzmocnienie nie jest stosowane do początkowych poziomów sygnału przed kompandowaniem;
zaczął działać. Typowa wartość dla dźwięku, który jest początkowo cichy, wynosi -90 dB. To
domyślnie 0.

opóźnienie
Ustaw opóźnienie w sekundach. Wejściowy dźwięk jest analizowany natychmiast, ale dźwięk jest opóźniony
przed podaniem do regulatora głośności. Określanie opóźnienia w przybliżeniu równego
czasy ataku/zaniku pozwalają filtrowi skutecznie działać w trybie predykcyjnym, a nie
tryb reaktywny. Domyślnie jest to 0.

Przykłady

· Twórz muzykę zarówno cichymi, jak i głośnymi fragmentami, nadającymi się do słuchania w głośnym otoczeniu
środowisko:

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

Inny przykład dźwięku z elementami szeptu i eksplozji:

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

· Bramka szumów, gdy szum jest na poziomie niższym niż sygnał:

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

· Oto kolejna bramka szumów, tym razem dla sytuacji, gdy poziom szumu jest wyższy niż
sygnał (czyniąc go pod pewnymi względami podobnym do squelch):

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

przesunięcie dc
Zastosuj przesunięcie DC do dźwięku.

Może to być przydatne do usunięcia przesunięcia DC (spowodowanego być może przez problem sprzętowy w
łańcuch nagrywania) z dźwięku. Efektem przesunięcia DC jest zmniejszony zapas, a co za tym idzie
Tom. ten astaty filtr może być użyty do określenia, czy sygnał ma przesunięcie DC.

przesunięcie
Ustaw przesunięcie DC, dozwolony zakres to [-1, 1]. Wskazuje kwotę do przesunięcia
dźwięku.

Ogranicznik
Opcjonalny. Powinien mieć wartość znacznie mniejszą niż 1 (np. 0.05 lub 0.02) i służy do:
zapobiec przycinaniu.

dynaudnorma
Dynamiczny normalizator dźwięku.

Ten filtr stosuje pewną ilość wzmocnienia do wejściowego dźwięku w celu uzyskania jego szczytu
wielkość do poziomu docelowego (np. 0 dBFS). Jednak w przeciwieństwie do bardziej „prostych”
algorytmy normalizacji, Dynamic Audio Normalizer *dynamicznie* ponownie dostosowuje wzmocnienie
czynnik do wejściowego dźwięku. Pozwala to na zastosowanie dodatkowego wzmocnienia w „cichych” sekcjach
dźwięk, unikając zniekształceń lub przycinania „głośnych” sekcji. Innymi słowy:
Dynamic Audio Normalizer „wyrównuje” głośność cichych i głośnych sekcji w
Poczuj, że głośność każdej sekcji jest doprowadzona do tego samego poziomu docelowego. Należy jednak pamiętać,
że Dynamic Audio Normalizer osiąga ten cel *bez* stosowania „zakresu dynamicznego
kompresja”. Zachowa 100% zakresu dynamiki *w* każdej sekcji dźwięku
plik.

f Ustaw długość ramki w milisekundach. W zakresie od 10 do 8000 milisekund. Domyślna
wynosi 500 milisekund. Dynamiczny normalizator dźwięku przetwarza dźwięk wejściowy w małych rozmiarach
fragmenty, zwane ramkami. Jest to wymagane, ponieważ szczytowa wielkość nie ma
znaczenie tylko dla jednej wartości próbki. Zamiast tego musimy określić szczyt
wielkość dla ciągłej sekwencji wartości próbki. Podczas gdy „standardowy” normalizator
po prostu użyje szczytowej wielkości całego pliku, Dynamic Audio Normalizer
określa wielkość szczytową indywidualnie dla każdej klatki. Długość ramki wynosi
określony w milisekundach. Domyślnie Dynamic Audio Normalizer używa ramki
długość 500 milisekund, która daje dobre wyniki w przypadku większości plików.
Należy pamiętać, że zostanie określona dokładna długość ramki w liczbie próbek
automatycznie, na podstawie częstotliwości próbkowania pojedynczego wejściowego pliku audio.

g Ustaw rozmiar okna filtru Gaussa. W zakresie od 3 do 301 musi być liczbą nieparzystą.
Wartość domyślna to 31. Prawdopodobnie najważniejszy parametr Dynamic Audio Normalizer
to „rozmiar okna” filtru wygładzania Gaussa. Rozmiar okna filtra to
określone w ramkach, wyśrodkowane wokół bieżącej ramki. W trosce o prostotę
to musi być liczba nieparzysta. W konsekwencji domyślna wartość 31 uwzględnia
bieżąca ramka, jak również 15 poprzednich ramek i 15 kolejnych ramek.
Zastosowanie większego okienka daje silniejszy efekt wygładzenia, a tym samym mniejsze wzmocnienie
zmienność, tj. wolniejsza adaptacja wzmocnienia. I odwrotnie, użycie mniejszego okna powoduje:
słabszy efekt wygładzania, a tym samym większa zmienność wzmocnienia, tj. szybsze wzmocnienie
dostosowanie. Innymi słowy, im bardziej zwiększasz tę wartość, tym bardziej dynamiczna
Audio Normalizer będzie zachowywał się jak „tradycyjny” filtr normalizacyjny. Na
wręcz przeciwnie, im bardziej zmniejszysz tę wartość, tym bardziej Dynamiczny Normalizator dźwięku
zachowywać się jak kompresor zakresu dynamicznego.

p Ustaw docelową wartość szczytową. Określa najwyższy dopuszczalny poziom wielkości dla
znormalizowane wejście audio. Ten filtr spróbuje zbliżyć się do docelowej wielkości szczytowej
tak blisko, jak to możliwe, ale jednocześnie zapewnia również, że znormalizowane
sygnał nigdy nie przekroczy wartości szczytowej. Maksymalny lokalny współczynnik wzmocnienia ramki wynosi
narzucone bezpośrednio przez docelową wielkość szczytową. Domyślna wartość to 0.95, a zatem
pozostawia zapas 5%*. Nie zaleca się przekraczania tej wartości.

m Ustaw maksymalny współczynnik wzmocnienia. W zakresie od 1.0 do 100.0. Wartość domyślna to 10.0. Dynamika
Audio Normalizer określa maksymalny możliwy (lokalny) współczynnik wzmocnienia dla każdego wejścia
klatka, tj. maksymalny współczynnik wzmocnienia, który nie powoduje obcinania ani zniekształceń.
Maksymalny współczynnik wzmocnienia jest określany przez próbkę o największej wielkości.
Jednak Dynamic Audio Normalizer dodatkowo ogranicza maksymalne wzmocnienie klatki
współczynnik przez z góry określony (globalny) maksymalny współczynnik wzmocnienia. Odbywa się to w celu uniknięcia
nadmierne współczynniki wzmocnienia w „cichych” lub prawie cichych klatkach. Domyślnie maksymalna
współczynnik wzmocnienia wynosi 10.0, Dla większości wejść wartość domyślna powinna być wystarczająca i
zwykle nie zaleca się zwiększania tej wartości. Chociaż, dla danych wejściowych z niezwykle
niski ogólny poziom głośności, może być konieczne dopuszczenie jeszcze wyższych współczynników wzmocnienia. Notatka,
jednak, że Dynamic Audio Normalizer nie stosuje po prostu „twardego” progu
(tj. wartości odcięcia powyżej progu). Zamiast tego „sigmoidalna” funkcja progowa
zostaną zastosowane. W ten sposób współczynniki wzmocnienia płynnie zbliżą się do progu
wartość, ale nigdy nie przekraczaj tej wartości.

r Ustaw docelowy RMS. W zakresie od 0.0 do 1.0. Domyślnie 0.0 - wyłączone. Domyślnie,
Dynamic Audio Normalizer wykonuje normalizację „szczytu”. Oznacza to, że
maksymalny lokalny współczynnik wzmocnienia dla każdej ramki jest zdefiniowany (tylko) przez najwyższą ramkę
wielkość próbki. W ten sposób próbki mogą być maksymalnie wzmocnione bez
przekroczenie maksymalnego poziomu sygnału, tj. bez przesterowania. Opcjonalnie jednak
Dynamic Audio Normalizer może również uwzględniać pierwiastek kwadratowy klatki,
skrócony RMS. W elektrotechnice RMS jest powszechnie używany do określania
moc sygnału zmiennego w czasie. Dlatego uważa się, że RMS jest lepszy
przybliżenie „głośności postrzeganej” niż tylko patrzenie na szczyt sygnału
ogrom. W konsekwencji, dostosowując wszystkie klatki do stałej wartości RMS, uniform
można ustalić „postrzeganą głośność”. Jeśli określono docelową wartość RMS, a
lokalny współczynnik wzmocnienia ramki jest zdefiniowany jako czynnik, który spowodowałby dokładnie to
Wartość skuteczna. Należy jednak pamiętać, że maksymalny lokalny współczynnik wzmocnienia jest nadal ograniczony przez
próbka o największej wielkości w klatce, aby zapobiec przycinaniu.

n Włącz łączenie kanałów. Domyślnie jest włączony. Domyślnie Dynamic Audio
Normalizer wzmocni wszystkie kanały o tę samą wartość. Oznacza to ten sam zysk
współczynnik zostanie zastosowany do wszystkich kanałów, tj. maksymalny możliwy współczynnik wzmocnienia wynosi
określony przez „najgłośniejszy” kanał. Jednak w niektórych nagraniach może się zdarzyć, że
głośność różnych kanałów jest nierówna, np. jeden kanał może być „cichszy” niż
drugi(e). W takim przypadku ta opcja może być użyta do wyłączenia kanału
sprzęganie. W ten sposób współczynnik wzmocnienia zostanie określony niezależnie dla każdego kanału,
zależy tylko od najwyższej wartości próbki w pojedynczym kanale. Pozwala to na
harmonizowanie głośności różnych kanałów.

c Włącz korekcję odchylenia DC. Domyślnie jest wyłączony. Sygnał dźwiękowy (w czasie
domena) to sekwencja przykładowych wartości. W Dynamicznym Normalizatorze audio te próbki
wartości są reprezentowane w zakresie od -1.0 do 1.0, niezależnie od oryginalnego wejścia
format. Zwykle sygnał audio lub „przebieg” powinien być wyśrodkowany wokół zera
punkt. Oznacza to, że jeśli obliczymy średnią wartość wszystkich próbek w pliku lub w a
pojedynczą klatkę, to wynik powinien wynosić 0.0 lub co najmniej bardzo zbliżony do tej wartości. Jeśli,
jednak istnieje znaczne odchylenie średniej wartości od 0.0 w obu
kierunek dodatni lub ujemny, jest to określane jako odchylenie DC lub przesunięcie DC. Ponieważ
Odchylenie DC jest wyraźnie niepożądane, Dynamic Audio Normalizer zapewnia opcjonalne odchylenie DC
korekta. Po włączeniu korekcji odchylenia DC Dynamic Audio Normalizer:
określić średnią wartość lub przesunięcie „korekty DC” każdej ramki wejściowej i odjąć;
ta wartość ze wszystkich wartości próbek ramki, która zapewnia, że ​​próbki te są
ponownie wyśrodkowany wokół 0.0. Ponadto, aby uniknąć „luk” na granicach ramki,
Wartości przesunięcia korekcji DC będą interpolowane płynnie pomiędzy sąsiednimi ramkami.

b Włącz alternatywny tryb granic. Domyślnie jest wyłączony. Dynamiczny dźwięk
Normalizer uwzględnia pewne sąsiedztwo wokół każdej klatki. To zawiera
poprzednie klatki, jak również kolejne klatki. Jednak dla „granicy”
klatki, znajdujące się na samym początku i na samym końcu pliku audio, nie wszystkie
dostępne są sąsiednie ramki. W szczególności w przypadku kilku pierwszych klatek w
pliku audio, poprzednie klatki nie są znane. I podobnie dla kilku ostatnich
klatek w pliku audio, kolejne klatki nie są znane. Tak więc pytanie
pojawia się, jakie współczynniki wzmocnienia należy przyjąć dla brakujących ramek w "granicy"
region. Dynamiczny normalizator dźwięku implementuje dwa tryby radzenia sobie z tą sytuacją.
Domyślny tryb graniczny zakłada współczynnik wzmocnienia równy dokładnie 1.0 dla brakujących klatek,
w wyniku płynnego „zanikania” i „zanikania” na początku i na końcu
odpowiednio.

s Ustaw współczynnik kompresji. W zakresie od 0.0 do 30.0. Wartość domyślna to 0.0. Domyślnie
Dynamic Audio Normalizer nie stosuje „tradycyjnej” kompresji. To znaczy że
szczyty sygnału nie zostaną usunięte, a zatem zachowany zostanie pełny zakres dynamiki
w każdym lokalnym sąsiedztwie. Jednak w niektórych przypadkach może być pożądane połączenie
algorytm normalizacji Dynamic Audio Normalizer z bardziej „tradycyjnym”
kompresja. W tym celu Dynamic Audio Normalizer zapewnia opcjonalny
funkcja kompresji (progowania). Jeśli (i tylko jeśli) funkcja kompresji to
włączone, wszystkie ramki wejściowe będą przetwarzane przez funkcję progowania miękkiego kolana przed
do rzeczywistego procesu normalizacji. Mówiąc prościej, funkcja progowania będzie
przycinać wszystkie próbki, których wielkość przekracza określoną wartość progową. Jednakże
Dynamic Audio Normalizer nie stosuje po prostu stałej wartości progowej. Zamiast tego
wartość progowa zostanie dostosowana dla każdej pojedynczej klatki. Ogólnie mniejsze
parametry powodują silniejszą kompresję i odwrotnie. Wartości poniżej 3.0 nie są
zalecane, ponieważ mogą pojawić się słyszalne zniekształcenia.

woskowina
Ułatw sobie słuchanie dźwięku na słuchawkach.

Ten filtr dodaje `wskazówki' do dźwięku stereo 44.1 kHz (tj. w formacie audio CD), dzięki czemu gdy
słuchany na słuchawkach obraz stereo przesuwa się z wnętrza głowy (standard dla
słuchawki) na zewnątrz i przed słuchaczem (standard dla głośników).

Przeniesiony z SoX.

wyrównywacz
Zastosuj dwubiegunowy filtr korekcji szczytowej (EQ). Z tym filtrem poziom sygnału przy
i wokół wybranej częstotliwości można zwiększyć lub zmniejszyć, podczas gdy (w przeciwieństwie do pasma przepustowego i
filtry bandreject), które na wszystkich innych częstotliwościach pozostają niezmienione.

W celu uzyskania złożonych krzywych wyrównywania, filtr ten można podać kilka razy,
każdy z inną częstotliwością środkową.

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw centralną częstotliwość filtra w Hz.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości.

zdobyć, g
Ustaw wymagane wzmocnienie lub tłumienie w dB. Uważaj na obcinanie podczas korzystania z pozytywu
zyskać.

Przykłady

· Tłumienie 10 dB przy 1000 Hz, przy szerokości pasma 200 Hz:

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

· Zastosuj wzmocnienie 2 dB przy 1000 Hz z Q 1 i stłumij 5 dB przy 100 Hz z Q 2:

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

Flansza,
Zastosuj do dźwięku efekt wyginania.

Filtr akceptuje następujące opcje:

opóźnienie
Ustaw opóźnienie bazowe w milisekundach. Zakres od 0 do 30. Wartość domyślna to 0.

głębokość
Ustaw dodatkowe opóźnienie przemiatania w milisekundach. Zakres od 0 do 10. Wartość domyślna to 2.

deszcz
Ustaw procentową regenerację (opóźniony sygnał zwrotny). Zakres od -95 do 95. Domyślnie
wartość wynosi 0.

szerokość
Ustaw procent opóźnionego sygnału zmieszanego z oryginałem. Zakres od 0 do 100. Domyślnie
wartość wynosi 71.

prędkość
Ustaw przemiatania na sekundę (Hz). Zakres od 0.1 do 10. Wartość domyślna to 0.5.

kształt
Ustaw kształt fali ukośnej, może być trójkątny or sinusoidalny. Wartość domyślna to sinusoidalny.

faza
Ustaw procentowe przesunięcie fali przemiatanej dla wielu kanałów. Zakres od 0 do 100. Wartość domyślna
to 25.

interp
Ustaw interpolację linii opóźniającej, liniowy or kwadratowy. Domyślnie jest liniowy.

górnoprzepustowy
Zastosuj filtr górnoprzepustowy o częstotliwości punktowej 3dB. Filtr może być jednobiegunowy,
lub dwubiegunowy (domyślnie). Filtr toczy się przy 6dB na biegun na oktawę (20dB na
bieguna na dekadę).

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw częstotliwość w Hz. Wartość domyślna to 3000.

słupy, p
Ustaw liczbę biegunów. Wartość domyślna to 2.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości. Dotyczy tylko dwubiegunowych
filtr. Wartość domyślna to 0.707q i daje odpowiedź Butterwortha.

przystąpić
Połącz wiele strumieni wejściowych w jeden wielokanałowy strumień.

Przyjmuje następujące parametry:

Wejścia
Liczba strumieni wejściowych. Domyślnie jest to 2.

układ_kanału
Żądany układ kanału wyjściowego. Domyślnie jest to stereo.

mapa Mapuj kanały od wejść do wyjść. Argumentem jest lista oddzielonych '|' mapowań,
każdy w „input_idx.in_channel-out_channel" forma. identyfikator_wejściowy jest indeksem liczonym od 0 z
strumień wejściowy. na_kanale może być nazwą kanału wejściowego (np. FL dla
z przodu po lewej) lub jego indeks w określonym strumieniu wejściowym. kanał_wyjściowy jest nazwą
kanał wyjściowy.

Filtr spróbuje odgadnąć mapowania, jeśli nie zostaną one wyraźnie określone. To
robi to, najpierw próbując znaleźć nieużywany pasujący kanał wejściowy, a jeśli to się nie powiedzie
wybiera pierwszy nieużywany kanał wejściowy.

Dołącz 3 wejścia (z odpowiednio ustawionymi układami kanałów):

ffmpeg -i WEJŚCIE1 -i WEJŚCIE2 -i WEJŚCIE3 -kompleks_filtru łączenie=wejścia=3 WYJŚCIE

Zbuduj wyjście 5.1 z 6 jednokanałowych strumieni:

ffmpeg -i fl -i fr -i fc -i sl -i sr -i lfe -filter_kompleks
'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'
na zewnątrz

ladspa
Załaduj wtyczkę LADSPA (Linux Audio Developer's Simple Plugin API).

Aby włączyć kompilację tego filtra, musisz skonfigurować FFmpeg za pomocą "--enable-ladspa".

file, f
Określa nazwę biblioteki wtyczek LADSPA do załadowania. Jeśli zmienna środowiskowa
LADSPA_PATH jest zdefiniowana, wtyczka LADSPA jest przeszukiwana w każdym z katalogów
określone przez listę rozdzielaną dwukropkami w LADSPA_PATH, inaczej w standardzie LADSPA
ścieżki, które są w tej kolejności: STRONA GŁÓWNA/.ladspa/lib/, /usr/local/lib/ladspa/,
/usr/lib/ladspa/.

plugin, p
Określa wtyczkę w bibliotece. Niektóre biblioteki zawierają tylko jedną wtyczkę, ale
inne zawierają wiele z nich. Jeśli nie jest ustawione, filtr wyświetli listę wszystkich dostępnych wtyczek
w określonej bibliotece.

sterownica, c
Ustaw „|” oddzielona lista kontrolek, które mają zero lub więcej wartości zmiennoprzecinkowych
które określają zachowanie załadowanej wtyczki (na przykład opóźnienie, próg lub
osiągać). Kontrolki należy zdefiniować przy użyciu następującej składni:
c0=wartość0|c1=wartość1|c2=wartość2|..., gdzie wartośći to wartość ustawiona na i-ta kontrola.
If kontroli jest ustawiona na "pomoc", wszystkie dostępne kontrolki i ich prawidłowe zakresy są
drukowane.

próbna stawka, s
Określ częstotliwość próbkowania, domyślnie 44100. Używana tylko wtedy, gdy wtyczka ma zero wejść.

nb_próbek, n
Ustaw liczbę próbek na kanał na każdą klatkę wyjściową, domyślnie 1024. Tylko
używane, jeśli wtyczka ma zero wejść.

Trwanie, d
Ustaw minimalny czas trwania źródła dźwięku. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni. Pamiętaj, że wynikowy czas trwania może:
być dłuższy niż określony czas trwania, ponieważ generowany dźwięk jest zawsze przycinany o
koniec kompletnej ramy. Jeśli nie określono lub wyrażony czas trwania jest ujemny,
dźwięk ma być generowany na zawsze. Używany tylko wtedy, gdy wtyczka ma zero wejść.

Przykłady

· Lista wszystkich dostępnych wtyczek w bibliotece amp (przykładowa wtyczka LADSPA):

ladspa=plik=amp

· Wymień wszystkie dostępne kontrolki i ich prawidłowe zakresy dla wtyczki „vcf_notch” z „VCF”
biblioteka:

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

· Symulacja sprzętu audio niskiej jakości za pomocą wtyczki "Computer Music Toolkit" (CMT)
biblioteka:

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

· Dodaj pogłos do dźwięku za pomocą wtyczek TAP (wtyczki Tom's Audio Processing):

ladspa=plik=tap_reverb:tap_reverb

· Generowanie białego szumu o amplitudzie 0.2:

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

· Generuj kliknięcia 20 bpm za pomocą wtyczki "C* Click - Metronom" z "C* Audio Plugin"
Biblioteka" (CAPS):

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

· Zastosuj efekt „C* Eq10X2 — 10-pasmowy korektor stereo”:

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

Polecenia

Ten filtr obsługuje następujące polecenia:

cN Zmodyfikuj N-ta wartość kontrolna.

Jeśli określona wartość jest nieprawidłowa, jest ignorowana i zachowywana jest poprzednia.

dolnoprzepustowy
Zastosuj filtr dolnoprzepustowy o częstotliwości punktowej 3dB. Filtr może być jednobiegunowy lub
dwubiegunowy (domyślnie). Filtr rozwija się przy 6dB na biegun na oktawę (20dB na biegun)
na dekadę).

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw częstotliwość w Hz. Wartość domyślna to 500.

słupy, p
Ustaw liczbę biegunów. Wartość domyślna to 2.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ szerokość pasma filtru w jednostkach typ_szerokości. Dotyczy tylko dwubiegunowych
filtr. Wartość domyślna to 0.707q i daje odpowiedź Butterwortha.

pan
Miksuj kanały z określonymi poziomami wzmocnienia. Filtr akceptuje układ kanału wyjściowego
po którym następuje zestaw definicji kanałów.

Ten filtr jest również przeznaczony do wydajnej zmiany mapowania kanałów strumienia audio.

Filtr akceptuje parametry postaci: "l|przewyższyć|przewyższyć|..."

l układ kanału wyjściowego lub liczba kanałów

przewyższyć
specyfikacja kanału wyjściowego, w postaci:
"nazwa_zewnętrzna=[zdobyć*]w_nazwa[+[zdobyć*]w_nazwa...]"

nazwa_zewnętrzna
kanał wyjściowy do zdefiniowania nazwy kanału (FL, FR itp.) lub numeru kanału
(c0, c1 itd.)

zdobyć
mnożnik dla kanału, 1 pozostawiając niezmienioną głośność

w_nazwa
kanał wejściowy do użycia, zobacz out_name po szczegóły; nie można mieszać nazwanych i
numerowane kanały wejściowe

Jeśli `=' w specyfikacji kanału jest zastąpione przez `<', wtedy zyski z tego tytułu
specyfikacja zostanie znormalizowana tak, aby suma wynosiła 1, co pozwoli uniknąć przycinania.

Mieszanie przykłady

Na przykład, jeśli chcesz zmiksować w dół ze stereo do mono, ale z większym współczynnikiem dla
lewy kanał:

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

Dostosowany downmix do stereo, który działa automatycznie dla 3, 4, 5 i 7 kanałów
otaczać:

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

Należy pamiętać, że ffmpeg integruje domyślny system downmixu (i upmixu), który powinien być
preferowane (patrz opcja "-ac"), chyba że masz bardzo specyficzne potrzeby.

Przypominanie przykłady

Zmiana mapowania kanałów będzie skuteczna wtedy i tylko wtedy, gdy:

*
*

Jeśli wszystkie te warunki są spełnione, filtr powiadomi użytkownika („Czysty kanał
wykryto mapowanie”) i użyj zoptymalizowanej i bezstratnej metody do ponownego mapowania.

Na przykład, jeśli masz źródło 5.1 i chcesz stereofoniczny strumień audio, upuszczając dodatkowe
kanały:

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

Mając to samo źródło, możesz również przełączać przedni lewy i przedni prawy kanał i zachować
układ kanału wejściowego:

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

Jeśli wejście jest strumieniem dźwięku stereo, możesz wyciszyć lewy przedni kanał (i nadal zachować
układ kanałów stereo) z:

pan="stereo|c1=c1"

Nadal z wejściem stereofonicznego strumienia audio, możesz skopiować prawy kanał z przodu po lewej stronie
i po prawej:

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

powtórka
Filtr skanera ReplayGain. Ten filtr pobiera strumień audio jako wejście i wyprowadza go
bez zmian. Pod koniec filtrowania wyświetla "track_gain" i "track_peak".

ponownie próbkować
Konwertuj format próbki audio, częstotliwość próbkowania i układ kanałów. To nie ma być
używane bezpośrednio.

kompresja łańcucha bocznego
Ten filtr działa jak normalny kompresor, ale ma możliwość kompresji wykrytego sygnału
za pomocą drugiego sygnału wejściowego. Potrzebuje dwóch strumieni wejściowych i zwraca jeden strumień wyjściowy.
Pierwszy strumień wejściowy będzie przetwarzany w zależności od sygnału drugiego strumienia. Filtrowane
sygnał może być następnie filtrowany innymi filtrami w późniejszych etapach przetwarzania. Widzieć pan i
łączyć się filtr.

Filtr akceptuje następujące opcje:

próg
Jeśli sygnał drugiego strumienia wzrośnie powyżej tego poziomu, wpłynie to na redukcję wzmocnienia
pierwszego strumienia. Domyślna wartość to 0.125. Zakres wynosi od 0.00097563 do 1.

stosunek
Ustaw współczynnik redukcji sygnału. 1:2 oznacza, że ​​jeśli poziom wzrósł o 4dB
powyżej progu, po redukcji będzie tylko 2dB powyżej. Wartość domyślna to 2.
Zakres wynosi od 1 do 20.

atakować
Ilość milisekund, przez którą sygnał musi wzrosnąć powyżej progu przed wzmocnieniem
rozpoczyna się redukcja. Wartość domyślna to 20. Zakres wynosi od 0.01 do 2000.

zwolnić
Ilość milisekund, przez którą sygnał musi spaść poniżej progu, zanim nastąpi redukcja
ponownie spadła. Wartość domyślna to 250. Zakres wynosi od 0.01 do 9000.

makijaż
Ustaw ilość, o jaką sygnał zostanie wzmocniony po przetworzeniu. Wartość domyślna to 2.
Zakres wynosi od 1 do 64.

kolano
Zakręć ostre kolano wokół progu, aby łagodniej wejść w redukcję wzmocnienia.
Wartość domyślna to 2.82843. Zakres wynosi od 1 do 8.

link
Wybierz, czy „średni” poziom między wszystkimi kanałami strumienia w łańcuchu bocznym, czy
głośniejszy („maksymalny”) kanał strumienia bocznego wpływa na redukcję. Wartość domyślna to
"przeciętny".

wykrywanie
Czy należy brać dokładny sygnał w przypadku „szczytu” czy RMS w przypadku „rms”.
Domyślnie jest to „rms”, co jest głównie płynniejsze.

Przykłady

· Pełny przykład ffmpeg z 2 wejściami audio, pierwsze wejście do kompresji w zależności od
sygnał drugiego wejścia, a następnie skompresowany sygnał do połączenia z drugim wejściem:

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

ucisz wykrywanie
Wykryj ciszę w strumieniu audio.

Ten filtr rejestruje komunikat, gdy wykryje, że wejściowy poziom głośności dźwięku jest mniejszy lub równy
wartość tolerancji hałasu przez czas trwania większy lub równy minimalnemu wykrytemu hałasowi
Trwanie.

Wydrukowane czasy i czas trwania są wyrażone w sekundach.

Filtr akceptuje następujące opcje:

Trwanie, d
Ustaw czas trwania ciszy do powiadomienia (domyślnie 2 sekundy).

hałas, n
Ustaw tolerancję hałasu. Można określić w dB (w przypadku, gdy "dB" jest dołączone do określonego
wartość) lub stosunek amplitudy. Wartość domyślna to -60dB lub 0.001.

Przykłady

· Wykryj 5 sekund ciszy z tolerancją hałasu -50dB:

Wykrywanie ciszy=n=-50dB:d=5

· Kompletny przykład z ffmpeg do wykrywania ciszy z tolerancją na hałas 0.0001 w
cisza.mp3:

ffmpeg -i silence.mp3 -af silencedetect=hałas=0.0001 -f null -

ciszausuń
Usuń ciszę z początku, środka lub końca dźwięku.

Filtr akceptuje następujące opcje:

start_okresy
Ta wartość jest używana do wskazania, czy dźwięk powinien zostać przycięty na początku dźwięku. A
wartość zero wskazuje, że cisza nie powinna być przycinana od początku. Kiedy
określając wartość niezerową, przycina dźwięk aż do znalezienia braku ciszy. Zwykle
przy przycinaniu ciszy od początku dźwięku start_okresy będzie 1, ale może?
zostać zwiększone do wyższych wartości, aby przyciąć cały dźwięk do określonej liczby braku ciszy
okresy. Wartość domyślna to 0.

czas_rozpoczęcia
Określ czas, przez który musi zostać wykryty brak ciszy, zanim zatrzyma się przycinanie
audio. Wydłużając czas trwania, wybuchy dźwięków mogą być traktowane jako cisza i
przycięte. Wartość domyślna to 0.

próg_początkowy
Wskazuje to, jaką wartość próbki należy traktować jako ciszę. W przypadku dźwięku cyfrowego a
wartość 0 może być w porządku, ale w przypadku dźwięku nagranego analogowo możesz chcieć zwiększyć
wartość uwzględniająca hałas w tle. Można określić w dB (w przypadku, gdy „dB” wynosi
dodany do określonej wartości) lub stosunek amplitudy. Wartość domyślna to 0.

stop_okresy
Ustaw liczbę przycinania ciszy od końca dźwięku. Aby usunąć ciszę z
środek pliku, podaj a stop_okresy to jest negatywne. Ta wartość jest następnie przetwarzana
jako wartość dodatnią i służy do wskazania, że ​​efekt powinien ponownie rozpocząć przetwarzanie, ponieważ
określone przez start_okresy, dzięki czemu nadaje się do usuwania okresów ciszy w
środek dźwięku. Wartość domyślna to 0.

stop_czas trwania
Określ czas trwania ciszy, który musi istnieć, zanim dźwięk nie będzie już kopiowany. Za pomocą
po określeniu dłuższego czasu trwania w audio można pozostawić pożądaną ciszę.
Wartość domyślna to 0.

próg_stopu
To to samo co próg_początkowy ale do przycinania ciszy od końca audio.
Można określić w dB (w przypadku, gdy „dB” jest dołączone do określonej wartości) lub amplitudzie
stosunek. Wartość domyślna to 0.

zostaw_ciszę
To wskazuje, że stop_czas trwania długość dźwięku powinna pozostać nienaruszona na
początek każdego okresu ciszy. Na przykład, jeśli chcesz usunąć długie przerwy
między słowami, ale nie chcę całkowicie usuwać przerw. Wartość domyślna to 0.

Przykłady

· Poniższy przykład pokazuje, jak ten filtr może być użyty do rozpoczęcia nagrywania, które nie
nie zawierają opóźnienia na początku, które zwykle występuje między naciśnięciem rekordu
przycisk i początek spektaklu:

usuwanie ciszy=1:5:0.02

potrójny
Wzmocnij lub wytnij wysokie (górne) częstotliwości dźwięku za pomocą dwubiegunowego filtra półkowego z
reakcja podobna do reakcji standardowych regulatorów barwy dźwięku hi-fi. Jest to również znane jako
wyrównanie półek (EQ).

Filtr akceptuje następujące opcje:

zdobyć, g
Podaj wzmocnienie przy tym, która wartość jest niższa z ~22 kHz i częstotliwości Nyquista. Jego
użyteczny zasięg to około -20 (dla dużego cięcia) do +20 (dla dużego wzmocnienia). Uważać na
przycinanie podczas korzystania z dodatniego wzmocnienia.

częstotliwość, f
Ustaw centralną częstotliwość filtra, dzięki czemu można go użyć do rozszerzenia lub zmniejszenia
zakres częstotliwości do wzmocnienia lub obcięcia. Wartość domyślna to 3000 Hz.

typ_szerokości
Ustaw metodę, aby określić szerokość pasma filtra.

h Hz

q Współczynnik Q

o oktawa

s nachylenie

szerokość, w
Określ, jak strome jest przejście półki filtra.

Tom
Dostosuj głośność wejściowego dźwięku.

Przyjmuje następujące parametry:

Tom
Ustaw ekspresję głośności dźwięku.

Wartości wyjściowe są przycinane do wartości maksymalnej.

Wyjściowa głośność audio jest określona zależnością:

= *

Wartość domyślna dla Tom wynosi „1.0”.

precyzja
Ten parametr reprezentuje dokładność matematyczną.

Określa, które wejściowe formaty próbek będą dozwolone, co wpływa na precyzję
skalowania objętości.

ustalony
8-bitowy stałoprzecinkowy; ogranicza to format próbki wejściowej do U8, S16 i S32.

unosić się
32-bitowa liczba zmiennoprzecinkowa; ogranicza to wejściowy format próbki do FLT. (domyślna)

Podwójna
64-bitowa liczba zmiennoprzecinkowa; ogranicza to wejściowy format próbki do DBL.

powtórka
Wybierz zachowanie po napotkaniu danych pobocznych ReplayGain w ramkach wejściowych.

upuszczać
Usuń dane boczne ReplayGain, ignorując ich zawartość (domyślnie).

ignorować
Zignoruj ​​dane poboczne ReplayGain, ale pozostaw je w ramce.

śledzić
Preferuj wzmocnienie toru, jeśli jest obecne.

album
Preferuj wzmocnienie albumu, jeśli jest obecne.

replaygain_przedwzmacniacz
Wzmocnienie przedwzmacniacza w dB do zastosowania do wybranego wzmocnienia ponownego odtwarzania.

Wartość domyślna dla replaygain_przedwzmacniacz to 0.0.

eval
Ustaw, gdy obliczane jest wyrażenie objętości.

Przyjmuje następujące wartości:

pewnego razu
Oceniaj wyrażenie tylko raz podczas inicjalizacji filtru lub gdy Tom
polecenie zostało wysłane

rama
oceń wyrażenie dla każdej przychodzącej ramki

Wartość domyślna to pewnego razu.

Wyrażenie objętości może zawierać następujące parametry.

n numer klatki (od zera)

nb_kanałów
Liczba kanałów

nb_zużytych_próbek
liczba próbek zużytych przez filtr

nb_próbek
liczba próbek w bieżącej ramce

pisać oryginalna pozycja ramki w pliku

pkt rama PTS

próbna stawka
próbna stawka

zaczyna się
PTS na początku transmisji

zacząć
czas na początku strumienia

t czas klatek

tb podstawa czasowa sygnatury czasowej

Tom
ostatnia ustawiona wartość głośności

Zauważ, że kiedy eval jest ustawione na pewnego razu Tylko próbna stawka i tb dostępne są zmienne,
wszystkie inne zmienne będą oceniane jako NAN.

Polecenia

Ten filtr obsługuje następujące polecenia:

Tom
Zmodyfikuj wyrażenie głośności. Polecenie akceptuje tę samą składnię polecenia
odpowiednią opcję.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

replaygain_noclip
Zapobiegaj przycinaniu, ograniczając zastosowane wzmocnienie.

Wartość domyślna dla replaygain_noclip to 1.

Przykłady

· Zmniejsz o połowę głośność wejściowego dźwięku:

objętość=głośność=0.5
objętość=głośność=1/2
głośność=głośność=-6.0206dB

We wszystkich powyższych przykładach nazwany klucz do Tom można pominąć, np. jak w:

objętość=0.5

· Zwiększenie wejściowej mocy audio o 6 decybeli przy użyciu precyzji stałoprzecinkowej:

głośność=głośność=6dB:precyzja=stała

· Zanikanie głośności po czasie 10 z okresem anihilacji wynoszącym 5 sekund:

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

wykrywanie głośności
Wykryj głośność wejściowego wideo.

Filtr nie ma parametrów. Wejście nie jest modyfikowane. Statystyki dotyczące głośności będą
być drukowane w dzienniku po osiągnięciu końca strumienia wejściowego.

W szczególności pokaże średnią objętość (średnią kwadratową), maksymalną objętość (na
podstawie próbki) oraz początek histogramu zarejestrowanych wartości objętości (od
maksymalna wartość do skumulowanej 1/1000 próbek).

Wszystkie objętości są w decybelach w stosunku do maksymalnej wartości PCM.

Przykłady

Oto fragment wyjścia:

[Parsed_volumedetect_0 0xa23120] średnia_głośność: -27 dB
[Parsed_volumedetect_0 0xa23120] max_volume: -4 dB
[Parsed_volumedetect_0 0xa23120] histogram_4db: 6
[Parsed_volumedetect_0 0xa23120] histogram_5db: 62
[Parsed_volumedetect_0 0xa23120] histogram_6db: 286
[Parsed_volumedetect_0 0xa23120] histogram_7db: 1042
[Parsed_volumedetect_0 0xa23120] histogram_8db: 2551
[Parsed_volumedetect_0 0xa23120] histogram_9db: 4609
[Parsed_volumedetect_0 0xa23120] histogram_10db: 8409

To znaczy, że:

· Średnia kwadratowa energia wynosi około -27 dB lub 10^-2.7.

· Największa próbka ma -4 dB, a dokładniej od -4 dB do -5 dB.

· Jest 6 próbek przy -4 dB, 62 przy -5 dB, 286 przy -6 dB itd.

Innymi słowy podniesienie głośności o +4 dB nie powoduje żadnego obcinania, podniesienie jej o +5
dB powoduje obcinanie dla 6 próbek itp.

AUDIO ŹRÓDŁA


Poniżej znajduje się opis aktualnie dostępnych źródeł dźwięku.

bufor
Buforuj ramki audio i udostępniaj je w łańcuchu filtrów.

To źródło jest przeznaczone głównie do użytku programistycznego, w szczególności za pośrednictwem interfejsu
zdefiniowane w libavfilter/asrc_abuffer.h.

Przyjmuje następujące parametry:

podstawa czasu
Podstawa czasowa, która będzie używana do sygnatur czasowych przesłanych ramek. Musi być albo
liczba zmiennoprzecinkowa lub in licznik ułamka/mianownik forma.

próbna stawka
Częstotliwość próbkowania przychodzących buforów audio.

próbka_fmt
Przykładowy format przychodzących buforów audio. Albo przykładowa nazwa formatu, albo jej
odpowiednia reprezentacja liczb całkowitych z wyliczenia AVSampleFormat in
libavutil/samplefmt.h

układ_kanału
Układ kanałów przychodzących buforów audio. Albo nazwa układu kanału z
channel_layout_map w libavutil/układ_kanałowy.c lub odpowiadająca jej liczba całkowita
reprezentacja z makr AV_CH_LAYOUT_* w libavutil/układ_kanałowy.h

kanały
Liczba kanałów przychodzących buforów audio. Jeśli oba kanały i
układ_kanału są określone, to muszą być spójne.

Przykłady

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

poinstruuje źródło, aby zaakceptowało planarne 16-bitowe podpisane stereo przy 44100 Hz. Ponieważ
przykładowy format o nazwie „s16p” odpowiada numerowi 6 i układowi kanału „stereo”
odpowiada wartości 0x3, co odpowiada:

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

aevalsrc
Wygeneruj sygnał audio określony przez wyrażenie.

To źródło akceptuje na wejściu jedno lub więcej wyrażeń (po jednym dla każdego kanału), które są
oceniane i wykorzystywane do generowania odpowiedniego sygnału audio.

To źródło akceptuje następujące opcje:

wyrażenie
Ustaw listę wyrażeń rozdzielonych '|' dla każdego oddzielnego kanału. W przypadku
układ_kanału opcja nie jest określona, ​​wybrany układ kanałów zależy od
liczba dostarczonych wyrażeń. W przeciwnym razie ostatnie określone wyrażenie jest stosowane do
pozostałe kanały wyjściowe.

układ_kanałowy, c
Ustaw układ kanałów. Liczba kanałów w określonym układzie musi być równa
do liczby określonych wyrażeń.

Trwanie, d
Ustaw minimalny czas trwania źródła dźwięku. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni. Pamiętaj, że wynikowy czas trwania może:
być dłuższy niż określony czas trwania, ponieważ generowany dźwięk jest zawsze przycinany o
koniec kompletnej ramy.

Jeśli nie określono lub wyrażony czas trwania jest ujemny, dźwięk powinien być
generowane na zawsze.

nb_próbek, n
Ustaw liczbę próbek na kanał na każdą ramkę wyjściową, domyślnie 1024.

próbna stawka, s
Określ częstotliwość próbkowania, domyślnie 44100.

Każde wyrażenie w wyrażenie może zawierać następujące stałe:

n numer ocenianej próby, począwszy od 0

t czas ocenianej próbki wyrażony w sekundach, począwszy od 0

s próbna stawka

Przykłady

· Generuj ciszę:

aevalsrc=0

· Generuj sygnał sin o częstotliwości 440 Hz, ustaw częstotliwość próbkowania na 8000 Hz:

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

· Wygeneruj sygnał dwukanałowy, określ układ kanałów (Przód Środek + Tył
Centrum) wyraźnie:

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

· Generuj biały szum:

aevalsrc="/-2+przypadkowy(0) ”

· Generowanie sygnału z modulacją amplitudy:

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

· Generuj dudnienia różnicowe 2.5 Hz na nośniku 360 Hz:

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

anullsrc
Puste źródło dźwięku zwraca nieprzetworzone ramki audio. Przydaje się głównie jako szablon
i do wykorzystania w narzędziach do analizy / debugowania lub jako źródło filtrów, które:
zignoruj ​​dane wejściowe (na przykład filtr sox synth).

To źródło akceptuje następujące opcje:

układ_kanałowy, cl
Określa układ kanału i może być liczbą całkowitą lub łańcuchem reprezentującym
układ kanałów. Domyślna wartość układ_kanału to „stereo”.

Sprawdź definicję channel_layout_map w libavutil/układ_kanałowy.c do mapowania
między ciągami a wartościami układu kanału.

próbna stawka, r
Określa częstotliwość próbkowania i domyślnie 44100.

nb_próbek, n
Ustaw liczbę próbek na żądane ramki.

Przykłady

· Ustaw częstotliwość próbkowania na 48000 Hz i układ kanałów na AV_CH_LAYOUT_MONO.

anullsrc=r=48000:cl=4

· Wykonaj tę samą operację z bardziej oczywistą składnią:

anullsrc=r=48000:cl=mono

Wszystkie parametry muszą być wyraźnie zdefiniowane.

latać
Zsyntetuj wypowiedź głosową za pomocą biblioteki libflite.

Aby umożliwić kompilację tego filtra musisz skonfigurować FFmpeg za pomocą
„--włącz-libflite”.

Zauważ, że biblioteka flite nie jest bezpieczna wątkowo.

Filtr akceptuje następujące opcje:

lista_głosów
Jeśli jest ustawiony na 1, wymień nazwy dostępnych głosów i natychmiast wyjdź. Domyślna
wartość wynosi 0.

nb_próbek, n
Ustaw maksymalną liczbę próbek na klatkę. Wartość domyślna to 512.

plik tekstowy
Ustaw nazwę pliku zawierającego tekst do mówienia.

XNUMX
Ustaw tekst do mówienia.

głos, v
Ustaw głos używany do syntezy mowy. Wartość domyślna to „kal”. Zobacz także
lista_głosów opcja.

Przykłady

· Czytaj z pliku mowa.txti zsyntetyzuj tekst, używając standardowego głosu flite:

flite=plik tekstowy=mowa.txt

· Przeczytaj określony tekst wybierając głos "slt":

flite=text='Że dobrze, biedny diabeł z sub-sub, którego komentatorem jestem':voice=slt

· Wprowadź tekst do ffmpeg:

ffmpeg -f lavfi -i flite=text='Że dobrze, biedny diabeł Sub-Sub, którego komentatorem jestem':voice=slt

· Robić ffplay wypowiedz określony tekst, używając „flite” i urządzenia „lavfi”:

ffplay -f lavfi flite=text='Nie smuć się już tym, co zrobiłeś.'

Aby uzyskać więcej informacji o libflite, sprawdź:http://www.speech.cs.cmu.edu/flite/>

sinus
Generuj sygnał audio składający się z fali sinusoidalnej o amplitudzie 1/8.

Sygnał audio jest dokładny bitowo.

Filtr akceptuje następujące opcje:

częstotliwość, f
Ustaw częstotliwość nośną. Wartość domyślna to 440 Hz.

współczynnik_dźwięku, b
Włącz okresowy sygnał dźwiękowy co sekundę z częstotliwością współczynnik_dźwięku razy przewoźnik
częstotliwość. Wartość domyślna to 0, co oznacza, że ​​sygnał dźwiękowy jest wyłączony.

próbna stawka, r
Określ częstotliwość próbkowania, domyślnie 44100.

Trwanie, d
Określ czas trwania generowanego strumienia audio.

sample_per_frame
Ustaw liczbę próbek na klatkę wyjściową, domyślnie 1024.

Przykłady

· Wygeneruj prostą sinusoidę 440 Hz:

sinus

· Generuj falę sinusoidalną 220 Hz z sygnałem dźwiękowym 880 Hz co sekundę przez 5 sekund:

sinus=220:4:d=5
sinus=f=220:b=4:d=5
sinus=częstotliwość=220:beep_factor=4:czas trwania=5

AUDIO ZLEWY


Poniżej znajduje się opis aktualnie dostępnych pochłaniaczy dźwięku.

zlew buforowy
Buforuj ramki audio i udostępniaj je na końcu łańcucha filtrów.

Ten zlew jest przeznaczony głównie do użytku programistycznego, w szczególności za pośrednictwem interfejsu
zdefiniowane w libavfilter/buffersink.h lub system opcji.

Przyjmuje wskaźnik do struktury AVABufferSinkContext, która definiuje przychodzące
formaty buforów, które mają być przekazane jako parametr nieprzezroczysty do "avfilter_init_filter" dla
inicjalizacja.

zlewozmywak
Zerowy pochłaniacz dźwięku; nie rób absolutnie nic z wejściowym dźwiękiem. Przydaje się głównie jako
szablon i do wykorzystania w narzędziach do analizy / debugowania.

VIDEO FILTRY


Kiedy konfigurujesz swoją kompilację FFmpeg, możesz wyłączyć dowolny z istniejących filtrów za pomocą
„--wyłącz-filtry”. Dane wyjściowe konfiguracji pokażą filtry wideo zawarte w twoim
budować.

Poniżej znajduje się opis aktualnie dostępnych filtrów wideo.

alfaekstrakt
Wyodrębnij składnik alfa z wejścia jako wideo w skali szarości. Jest to szczególnie przydatne
z alfamerge filtr.

alfamerge
Dodaj lub zastąp składnik alfa podstawowych danych wejściowych wartością skali szarości a
drugie wejście. To jest przeznaczone do użytku z alfaekstrakt aby umożliwić transmisję lub
przechowywanie sekwencji ramek, które mają alfa w formacie, który nie obsługuje alfa
kanał.

Na przykład, aby zrekonstruować pełne klatki z normalnego wideo zakodowanego w YUV i oddzielnego
wideo utworzone za pomocą alfaekstrakt, możesz użyć:

film=in_alfa.mkv [alfa]; [in][alfa] alfamerge [out]

Ponieważ ten filtr jest przeznaczony do rekonstrukcji, działa na sekwencjach ramek bez
uwzględnianie znaczników czasu i kończy się, gdy którekolwiek wejście osiągnie koniec strumienia. To będzie
powodować problemy, jeśli potok kodowania porzuca ramki. Jeśli próbujesz zastosować obraz
jako nakładkę na strumień wideo, rozważ narzuta zamiast tego filtruj.

osioł
Taki sam jak napisy na filmie obcojęzycznym filtr, z wyjątkiem tego, że nie wymaga libavcodec i libavformat do
Praca. Z drugiej strony ogranicza się do plików napisów ASS (Advanced Substation Alpha).

Ten filtr akceptuje następującą opcję oprócz typowych opcji z
napisy na filmie obcojęzycznym filtr:

modelacja
Ustaw silnik kształtowania

Dostępne wartości to:

samochód
Domyślny silnik kształtowania libass, który jest najlepszym dostępnym.

prosty
Szybki, niezależny od fontów moduł do kształtowania, który może wykonywać tylko zamiany

kompleks
Wolniejsze narzędzie do kształtowania przy użyciu OpenType do podstawień i pozycjonowania

Wartość domyślna to „auto”.

atadenoise
Zastosuj adaptacyjny odszumiacz uśredniania w czasie do wejścia wideo.

Filtr akceptuje następujące opcje:

0a Ustaw próg A dla 1. płaszczyzny. Wartość domyślna to 0.02. Prawidłowy zakres to 0 do 0.3.

0b Ustaw próg B dla 1. płaszczyzny. Wartość domyślna to 0.04. Prawidłowy zakres to 0 do 5.

1a Ustaw próg A dla drugiej płaszczyzny. Wartość domyślna to 2. Prawidłowy zakres to 0.02 do 0.

1b Ustaw próg B dla drugiej płaszczyzny. Wartość domyślna to 2. Prawidłowy zakres to 0.04 do 0.

2a Ustaw próg A dla 3 płaszczyzny. Wartość domyślna to 0.02. Prawidłowy zakres to 0 do 0.3.

2b Ustaw próg B dla 3 płaszczyzny. Wartość domyślna to 0.04. Prawidłowy zakres to 0 do 5.

Próg A jest przeznaczony do reagowania na nagłe zmiany sygnału wejściowego i progu B
jest przeznaczony do reagowania na ciągłe zmiany sygnału wejściowego.

s Ustaw liczbę klatek, których filtr będzie używał do uśredniania. Domyślnie 33. Musi być liczbą nieparzystą
w zakresie [5, 129].

bbox
Oblicz obwiednię dla nieczarnych pikseli w płaszczyźnie luminancji ramki wejściowej.

Ten filtr oblicza obwiednię zawierającą wszystkie piksele o wartości luminancji
większa niż minimalna dozwolona wartość. Parametry opisujące ramkę ograniczającą to
wydrukowane w dzienniku filtrów.

Filtr akceptuje następującą opcję:

min_wartość
Ustaw minimalną wartość luminancji. Wartość domyślna to 16.

czarny wykrywacz
Wykryj interwały wideo, które są (prawie) całkowicie czarne. Może być przydatny do wykrywania rozdziału
przejścia, reklamy lub nieprawidłowe nagrania. Linie wyjściowe zawierają czas dla
początek, koniec i czas trwania wykrytego odstępu czerni wyrażony w sekundach.

Aby wyświetlić linie wyjściowe, musisz ustawić poziom logowania co najmniej na
AV_LOG_INFO wartość.

Filtr akceptuje następujące opcje:

czarny_min_czas trwania, d
Ustaw minimalny wykryty czas trwania czerni wyrażony w sekundach. To musi być nie-
ujemna liczba zmiennoprzecinkowa.

Wartość domyślna to 2.0.

image_black_ratio_th, zdjęcie_th
Ustaw próg uznania obrazu za „czarny”. Wyraź minimalną wartość dla
stosunek:

/

dla których obraz jest uważany za czarny. Wartość domyślna to 0.98.

piksel_czarny_th, pik_th
Ustaw próg dla uznania piksela za „czarny”.

Próg wyraża maksymalną wartość luminancji piksela, dla której jest piksel
uważany za „czarny”. Podana wartość jest skalowana zgodnie z następującym równaniem:

= + *

luminancja_zakres_rozmiar i luminancja_minimalna_wartość zależy od wejściowego formatu wideo,
zakres to [0-255] dla pełnozakresowych formatów YUV i [16-235] dla niepełnego zakresu YUV
formaty.

Wartość domyślna to 0.10.

Poniższy przykład ustawia maksymalny próg pikseli na wartość minimalną i wykrywa
tylko czarne odstępy co 2 sekundy:

wykrywanie czerni=d=2:pix_th=0.00

czarna ramka
Wykrywaj ramki, które są (prawie) całkowicie czarne. Może być przydatny do wykrywania rozdziału
przejścia lub reklamy. Linie wyjściowe składają się z numeru ramki wykrytego
klatka, procent zaczernienia, pozycja w pliku, jeśli jest znana lub -1 oraz
znacznik czasu w sekundach.

Aby wyświetlić linie wyjściowe, musisz ustawić poziom logowania co najmniej na
AV_LOG_INFO wartość.

Przyjmuje następujące parametry:

ilość
Procent pikseli, które muszą być poniżej progu; domyślnie 98.

próg, namłócić
Próg, poniżej którego wartość piksela jest uważana za czarną; domyślnie 32.

mieszanka, mieszanka stołowa
Połącz ze sobą dwie klatki wideo.

Filtr „mieszanka” pobiera dwa strumienie wejściowe i wyprowadza jeden strumień, pierwszym wejściem jest
warstwa „górna”, a drugie wejście to warstwa „dolna”. Wyjście kończy się, gdy najkrótsze wejście
kończy się.

Filtr „tblend” (mieszanie w czasie) pobiera dwie kolejne klatki z jednego strumienia i
wyświetla wynik uzyskany przez zmieszanie nowej klatki ze starą klatką.

Poniżej znajduje się opis akceptowanych opcji.

tryb c0
tryb c1
tryb c2
tryb c3
all_mode
Ustaw tryb mieszania dla określonego składnika piksela lub wszystkich składników pikseli w przypadku
all_mode. Wartość domyślna to „normalny”.

Dostępne wartości dla trybów komponentów to:

dodatek
i
średni
palić
zaciemniać
różnica
różnica128
podzielić
unik
wykluczenie
poświata
ostre światło
ciężka mieszanka
rozjaśnić
światło liniowe
mnożyć
odmowa
normalna
or
narzuta
feniks
szpilka
odzwierciedlić
ekran
miękkie światło
odejmować
wyraźne światło
xor
c0_przezroczystość
c1_przezroczystość
c2_przezroczystość
c3_przezroczystość
all_krycie
Ustaw przezroczystość mieszania dla określonego składnika piksela lub wszystkich składników pikseli w przypadku
all_krycie. Używany tylko w połączeniu z trybami mieszania składników pikseli.

c0_wyr
c1_wyr
c2_wyr
c3_wyr
wszystkie_wyr
Ustaw wyrażenie mieszania dla określonego składnika piksela lub wszystkich składników pikseli w przypadku
wszystkie_wyr. Zwróć uwagę, że powiązane opcje trybu zostaną zignorowane, jeśli zostaną ustawione.

Wyrażenia mogą używać następujących zmiennych:

N Numer sekwencyjny przefiltrowanej ramki, zaczynając od 0.

X
Y współrzędne aktualnej próbki

W
H szerokość i wysokość aktualnie filtrowanej płaszczyzny

SW
SH Skala szerokości i wysokości w zależności od aktualnie filtrowanej płaszczyzny. To jest stosunek
między odpowiednią liczbą pikseli w płaszczyźnie luma a bieżącą liczbą pikseli.
Np. dla YUV4:2:0 wartości to "1,1" dla płaszczyzny luma i "0.5,0.5" dla
płaszczyzny barwy.

T Czas bieżącej klatki wyrażony w sekundach.

SZCZYT, A
Wartość składnika piksela w bieżącej lokalizacji dla pierwszej klatki wideo (górna warstwa).

SPÓD, B
Wartość składnika piksela w bieżącej lokalizacji dla drugiej klatki wideo (na dole
warstwa).

najkrótsza
Wymuś zakończenie po zakończeniu najkrótszego wejścia. Wartość domyślna to 0. Ta opcja to
zdefiniowany tylko dla filtra „mieszanka”.

powtarzać ostatni
Kontynuuj stosowanie ostatniej dolnej klatki po zakończeniu strumienia. Wartość 0
wyłącz filtr po osiągnięciu ostatniej klatki dolnej warstwy. Wartość domyślna to 1.
Ta opcja jest zdefiniowana tylko dla filtra „mieszania”.

Przykłady

· Zastosuj przejście od warstwy dolnej do warstwy górnej w ciągu pierwszych 10 sekund:

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

· Zastosuj efekt szachownicy 1x1:

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

· Zastosuj odkryj lewy efekt:

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

· Zastosuj efekt odkrywania:

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

· Zastosuj efekt odsłonięcia w lewo:

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

· Wyświetl różnice między bieżącą a poprzednią klatką:

tblend=all_mode=różnica128

polerozmycie
Zastosuj algorytm boxblur do wejściowego wideo.

Przyjmuje następujące parametry:

luma_promień, lr
luma_moc, lp
promień_koloru, cr
moc_koloru, cp
promień_alfa, ar
alfa_moc, ap

Poniżej znajduje się opis akceptowanych opcji.

luma_promień, lr
promień_koloru, cr
promień_alfa, ar
Ustaw wyrażenie dla promienia pudełka w pikselach używanego do rozmycia odpowiedniego
płaszczyzna wejściowa.

Wartość promienia musi być liczbą nieujemną i nie może być większa niż wartość
wyrażenia „min(w,h)/2” dla płaszczyzny luma i alfa oraz „min(cw,ch)/2”
dla płaszczyzn barwy.

Wartość domyślna dla luma_promień to „2”. Jeśli nie określono, promień_koloru i promień_alfa
domyślnie na odpowiednią wartość ustawioną dla luma_promień.

Wyrażenia mogą zawierać następujące stałe:

w
h Wejściowa szerokość i wysokość w pikselach.

cw
ch Wejściowa szerokość i wysokość obrazu chrominancji w pikselach.

hsub
vssub
Wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla piksela
format "yuv422p", hsub to 2 i vssub to 1.

luma_moc, lp
moc_koloru, cp
alfa_moc, ap
Określ, ile razy filtr boxblur zostanie zastosowany do odpowiedniej płaszczyzny.

Wartość domyślna dla luma_moc wynosi 2. Jeśli nie określono, moc_koloru i alfa_moc
domyślnie na odpowiednią wartość ustawioną dla luma_moc.

Wartość 0 wyłączy efekt.

Przykłady

· Zastosuj filtr boxblur z promieniami luma, chroma i alfa ustawionymi na 2:

boxblur=luma_promień=2:luma_power=1
rozmycie pudełka=2:1

· Ustaw promień luma na 2, a promień alfa i chroma na 0:

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

· Ustaw promienie luma i chroma na ułamek wymiaru wideo:

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

kodek-widok
Wizualizuj informacje eksportowane przez niektóre kodeki.

Niektóre kodeki mogą eksportować informacje za pośrednictwem ramek przy użyciu danych pobocznych lub w inny sposób. Do
na przykład, niektóre kodeki oparte na MPEG eksportują wektory ruchu przez eksport_mvs flaga w
kodek flagi2 opcja.

Filtr akceptuje następującą opcję:

mv Ustaw wektory ruchu do wizualizacji.

Dostępne flagi dla mv należą:

pf przewidywane w przód wartości MV ramek P

bf przewidywane w przód wartości MV ramek B

bb przewidywane wstecz wartości MV ramek B

Przykłady

· Wizualizuje wielokierunkowe MV z ramek P i B przy użyciu ffplay:

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

balans kolorów
Modyfikuj intensywność kolorów podstawowych (czerwony, zielony i niebieski) ramek wejściowych.

Filtr umożliwia dostosowanie klatki wejściowej w cieniach, półcieniach lub światłach
regiony dla równowagi czerwono-błękitnej, zielono-purpurowej lub niebiesko-żółtej.

Dodatnia wartość korekty przesuwa równowagę w kierunku koloru podstawowego, wartość ujemna
w kierunku koloru dopełniającego.

Filtr akceptuje następujące opcje:

rs
gs
bs Dostosuj czerwone, zielone i niebieskie cienie (najciemniejsze piksele).

rm
gm
bm Dostosuj czerwone, zielone i niebieskie półcienie (średnie piksele).

rh
gh
bh Dostosuj czerwone, zielone i niebieskie światła (najjaśniejsze piksele).

Dozwolone zakresy dla opcji to „[-1.0, 1.0]”. Wartości domyślne to 0.

Przykłady

· Dodaj czerwony kolor do cieni:

balans kolorów=rs=3

kolorowy klucz
Kluczowanie kolorów w przestrzeni kolorów RGB.

Filtr akceptuje następujące opcje:

kolor
Kolor, który zostanie zastąpiony przezroczystością.

podobieństwo
Procent podobieństwa z kolorem klucza.

0.01 pasuje tylko do dokładnego koloru klucza, a 1.0 pasuje do wszystkiego.

mieszanka
Procent mieszanki.

0.0 sprawia, że ​​piksele są albo w pełni przezroczyste, albo w ogóle nie są przezroczyste.

Wyższe wartości skutkują półprzezroczystymi pikselami, im większa przezroczystość, tym bardziej
kolor pikseli jest podobny do koloru kluczowego.

Przykłady

· Spraw, aby każdy zielony piksel w obrazie wejściowym był przezroczysty:

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

· Nałóż film z zielonego ekranu na statyczny obraz tła.

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]" wyjście.flv

poziomy kolorów
Dostosuj klatki wejściowe wideo za pomocą poziomów.

Filtr akceptuje następujące opcje:

obrzeżać
Gimin
bimin
celować
Ustaw czerwony, zielony, niebieski i alfa wejście punktu czerni. Dozwolone zakresy dla opcji to
„[-1.0, 1.0]”. Wartości domyślne to 0.

rymaks
gimax
bimaks
celaks
Ustaw czerwony, zielony, niebieski i alfa punkt bieli. Dozwolone zakresy dla opcji to
„[-1.0, 1.0]”. Wartości domyślne to 1.

Poziomy wejściowe służą do rozjaśniania świateł (jasnych tonów), przyciemniania cieni (ciemnych
tony), zmień równowagę jasnych i ciemnych tonów.

Romin
Gomin
bomin
Aomin
Regulacja czerwonego, zielonego, niebieskiego i punktu czerni wyjścia alfa. Dozwolone zakresy dla opcji to
„[0, 1.0]”. Wartości domyślne to 0.

Romax
gomaks
bomax
aomax
Ustaw czerwony, zielony, niebieski i alfa punkt bieli. Dozwolone zakresy dla opcji to
„[0, 1.0]”. Wartości domyślne to 1.

Poziomy wyjściowe umożliwiają ręczny wybór ograniczonego zakresu poziomów wyjściowych.

Przykłady

· Przyciemnij wyjście wideo:

poziomy kolorów=rimin=0.058:gimin=0.058:bimin=0.058

· Zwiększ kontrast:

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

· Spraw, aby wyjście wideo było lżejsze:

poziomy kolorów=rimax=0.902:gimax=0.902:bimax=0.902

· Zwiększ jasność:

poziomy kolorów=romin=0.5:gomin=0.5:bomin=0.5

mikser kolorów
Dostosuj klatki wejściowe wideo, ponownie mieszając kanały kolorów.

Ten filtr modyfikuje kanał koloru, dodając wartości powiązane z innymi kanałami
tych samych pikseli. Na przykład, jeśli wartość do zmodyfikowania jest czerwona, wartością wyjściową będzie:

= * + * + * + *

Filtr akceptuje następujące opcje:

rr
rg
rb
ra Dostosuj udział wejściowych kanałów czerwonego, zielonego, niebieskiego i alfa dla wyjścia czerwonego
kanał. Wartość domyślna to 1 dla rr, i 0 dla rg, rb i ra.

gr
gg
gb
ga Dostosuj udział wejściowych kanałów czerwonego, zielonego, niebieskiego i alfa dla zielonego wyjścia
kanał. Wartość domyślna to 1 dla gg, i 0 dla gr, gb i ga.

br
bg
bb
ba Dostosuj udział wejściowych kanałów czerwonego, zielonego, niebieskiego i alfa dla wyjścia niebieskiego
kanał. Wartość domyślna to 1 dla bb, i 0 dla br, bg i ba.

ar
ag
ab
aa Dostosuj udział wejściowych kanałów czerwonego, zielonego, niebieskiego i alfa dla wyjściowego kanału alfa
kanał. Wartość domyślna to 1 dla aa, i 0 dla ar, ag i ab.

Dozwolone zakresy dla opcji to „[-2.0, 2.0]”.

Przykłady

· Konwersja źródła do skali szarości:

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

· Symulacja tonów sepii:

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

matryca kolorów
Konwertuj macierz kolorów.

Filtr akceptuje następujące opcje:

src
dst Określ źródłową i docelową macierz kolorów. Należy określić obie wartości.

Akceptowane wartości to:

bt709
BT.709

bt601
BT.601

smte240m
SMPTE-240M

Fcc FCC

Na przykład do konwersji z BT.601 na SMPTE-240M użyj polecenia:

colormatrix=bt601:smpte240m

kopia
Skopiuj źródło wejściowe bez zmian do wyjścia. Jest to przydatne głównie do celów testowych.

wole
Przytnij wideo wejściowe do podanych wymiarów.

Przyjmuje następujące parametry:

w, out_w
Szerokość wyjściowego wideo. Domyślnie jest to „iw”. To wyrażenie jest oceniane tylko
raz podczas konfiguracji filtra lub gdy w or out_w polecenie jest wysyłane.

h, wyjście_h
Wysokość wyjściowego wideo. Domyślnie jest to „ih”. To wyrażenie jest oceniane
tylko raz podczas konfiguracji filtra lub gdy h or wyjście_h polecenie jest wysyłane.

x Pozycja pozioma, w wejściowym wideo, lewej krawędzi wyjściowego wideo. To
domyślnie „(in_w-out_w)/2”. To wyrażenie jest oceniane na klatkę.

y Pozycja pionowa, w wejściowym wideo, górnej krawędzi wyjściowego wideo. To
domyślnie "(in_h-out_h)/2". To wyrażenie jest oceniane na klatkę.

zachować_aspekt
Jeśli jest ustawiony na 1, wymusi proporcje obrazu wyjściowego, aby były takie same jak na wejściu, przez
zmiana proporcji wyjściowej próbki. Domyślnie jest to 0.

Połączenia out_w, wyjście_h, x, y parametry to wyrażenia zawierające następujące stałe:

x
y Obliczone wartości dla x i y. Są oceniane dla każdej nowej klatki.

w_w
w_h
Wejściowa szerokość i wysokość.

iw
ih Są takie same jak w_w i w_h.

out_w
wyjście_h
Wyjściowa (przycięta) szerokość i wysokość.

ow
oh Są takie same jak out_w i wyjście_h.

a sama, jak iw / ih

sar wejściowy współczynnik proporcji próbki

dar wejściowy współczynnik proporcji wyświetlacza, jest taki sam jak (iw / ih) * sar

hsub
vssub
wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

n Numer ramki wejściowej, zaczynając od 0.

pisać pozycja w pliku ramki wejściowej, NAN jeśli nieznana

t Znacznik czasu wyrażony w sekundach. Jest to NAN, jeśli wejściowy znacznik czasu jest nieznany.

Wyrażenie dla out_w może zależeć od wartości wyjście_hi wyrażenie dla wyjście_h
może zależeć od out_w, ale nie mogą na nich polegać x i y, tak jak x i y są oceniane po
out_w i wyjście_h.

Połączenia x i y parametry określają wyrażenia określające położenie lewego górnego rogu
obszar wyjściowy (nieprzycięty). Są oceniane dla każdej klatki. Jeśli oceniana wartość
jest nieważny, jest przybliżony do najbliższej prawidłowej wartości.

Wyrażenie dla x może zależeć od yi wyrażenie dla y może zależeć od x.

Przykłady

· Powierzchnia uprawy o rozmiarze 100x100 na pozycji (12,34).

uprawa=100:100:12:34

Używając nazwanych opcji, powyższy przykład staje się:

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

· Przytnij centralny obszar wejściowy o rozmiarze 100x100:

uprawa=100:100

· Przytnij centralny obszar wejściowy z rozmiarem 2/3 wejściowego wideo:

przycięcie=2/3*w_w:2/3*w_h

· Przytnij centralny kwadrat wejściowego wideo:

upraw=out_w=in_h
upraw=w_godz

· Ogranicz prostokąt lewym górnym rogiem umieszczonym w pozycji 100:100 i
prawy dolny róg odpowiadający prawemu dolnemu rogowi obrazu wejściowego.

crop=w_w-100:w_g-100:100:100

· Przytnij 10 pikseli z lewej i prawej krawędzi oraz 20 pikseli z góry i dołu
Granice

crop=w_w-2*10:w_h-2*20

· Zachowaj tylko dolną prawą ćwiartkę obrazu wejściowego:

crop=w_w/2:w_godz/2:w_w/2:w_godz/2

· Wysokość upraw dla uzyskania greckiej harmonii:

crop=w_w:1/PHI*w_w

· Zastosuj efekt drżenia:

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)

· Zastosuj nieregularny efekt kamery w zależności od sygnatury czasowej:

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

· Ustaw x w zależności od wartości y:

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

Polecenia

Ten filtr obsługuje następujące polecenia:

w, out_w
h, wyjście_h
x
y Ustaw szerokość/wysokość wyjściowego wideo i poziomą/pionową pozycję na wejściu
wideo. Polecenie akceptuje taką samą składnię jak w odpowiedniej opcji.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

wykryj przycięcie
Automatycznie wykryj rozmiar przycięcia.

Oblicza niezbędne parametry przycinania i drukuje zalecane parametry za pomocą
system logowania. Wykryte wymiary odpowiadają nieczarnemu obszarowi wejścia
filmiku.

Przyjmuje następujące parametry:

ograniczenie
Ustaw wyższy próg wartości czerni, który można opcjonalnie określić z niczego (0)
do wszystkiego (255 dla formatów 8-bitowych). Wartość intensywności większa od zestawu
wartość nie jest uważana za czarną. Domyślnie jest to 24. Możesz także określić wartość
od 0.0 do 1.0, które będą skalowane w zależności od głębi bitowej piksela
Format.

okrągły
Wartość, przez którą szerokość/wysokość powinna być podzielna. Domyślnie 16. Przesunięcie
jest automatycznie dostosowywany do wyśrodkowania wideo. Użyj 2, aby uzyskać tylko równe wymiary
(potrzebne do wideo 4:2:2). 16 jest najlepsze przy kodowaniu do większości kodeków wideo.

reset_count, zresetuj
Ustaw licznik, który określa, po ilu klatkach cropdect zresetuje
poprzednio wykryto największy obszar wideo i zacznij od nowa, aby wykryć obecny optymalny
obszar upraw. Wartość domyślna to 0.

Może to być przydatne, gdy logo kanału zniekształca obszar wideo. 0 oznacza „nigdy”
reset' i zwraca największy obszar napotkany podczas odtwarzania.

Krzywe
Zastosuj dopasowania kolorów za pomocą krzywych.

Ten filtr jest podobny do narzędzi krzywych Adobe Photoshop i GIMP. Każdy składnik (czerwony,
zielony i niebieski) ma swoje wartości określone przez N kluczowe punkty powiązane ze sobą za pomocą gładkiej
krzywa. Oś x reprezentuje wartości pikseli z klatki wejściowej, a oś y nowe
wartości pikseli do ustawienia dla ramki wyjściowej.

Domyślnie krzywa składowa jest definiowana przez dwa punkty (0;0) i (1;1). To tworzy
linia prosta, w której każda oryginalna wartość piksela jest „dopasowywana” do własnej wartości, co oznacza
bez zmian w obrazie.

Filtr pozwala przedefiniować te dwa punkty i dodać trochę więcej. Nowa krzywa (przy użyciu
naturalna interpolacja splajnu sześciennego) zostanie zdefiniowana, aby płynnie przechodzić przez wszystkie te nowe
współrzędne. Nowe zdefiniowane punkty muszą ściśle rosnąć na osi X, a
ich x i y wartości muszą być w [0;1] interwał. Gdyby obliczone krzywe zdarzyły się iść
poza przestrzeniami wektorowymi wartości zostaną odpowiednio przycięte.

Jeśli nie ma kluczowego punktu zdefiniowanego w „x=0”, filtr automatycznie wstawi a (0;0)
punkt. W ten sam sposób, jeśli nie ma kluczowego punktu zdefiniowanego w „x=1”, filtr:
automatycznie wstawia (1;1) punkt.

Filtr akceptuje następujące opcje:

presetu
Wybierz jedno z dostępnych ustawień wstępnych kolorów. Ta opcja może być używana dodatkowo do
r, g, b parametry; w tym przypadku późniejsze opcje mają pierwszeństwo w stosunku do ustawienia wstępnego
wartości. Dostępne ustawienia wstępne to:

Żaden
kolor_negatywny
proces_krzyżowy
ciemniejszy
Zwiększ kontrast
zapalniczka
liniowy_kontrast
średni_kontrast
ujemny
silny_kontrast
zabytkowe

Wartość domyślna to „brak”.

mistrz, m
Ustaw główne punkty klucza. Punkty te zdefiniują mapowanie drugiego przebiegu. To jest
czasami nazywane mapowaniem „luminancji” lub „wartości”. Może być używany z r, g, b or cała kolekcja
ponieważ działa jak LUT przetwarzania końcowego.

czerwony, r
Ustaw kluczowe punkty dla czerwonego komponentu.

zielony, g
Ustaw kluczowe punkty dla zielonego komponentu.

niebieski, b
Ustaw kluczowe punkty dla niebieskiego komponentu.

cała kolekcja Ustaw kluczowe punkty dla wszystkich komponentów (nie wliczając wzorca). Może być używany dodatkowo
do innych opcji komponentów kluczowych punktów. W takim przypadku nieuzbrojone komponenty będą:
wycofać się z tego cała kolekcja ustawienie.

plik ps
Określ plik krzywych programu Photoshop (.asv), z którego mają zostać zaimportowane ustawienia.

Aby uniknąć niektórych konfliktów składni wykresu filtra, każda lista kluczowych punktów musi być zdefiniowana za pomocą
następującą składnię: "x0/y0 x1/y1 x2/y2...".

Przykłady

· Zwiększ nieco środkowy poziom niebieskiego:

krzywe=niebieski='0.5/0.58'

· Efekt 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'

Tutaj otrzymujemy następujące współrzędne dla każdego składnika:

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

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

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

· Poprzedni przykład można również uzyskać z powiązanym wbudowanym ustawieniem wstępnym:

krzywe=preset=vintage

· Lub po prostu:

krzywe=vintage

· Użyj ustawienia wstępnego programu Photoshop i przedefiniuj punkty zielonego komponentu:

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

dctdnoiz
Odszumianie klatek przy użyciu 2D DCT (filtrowanie w domenie częstotliwości).

Ten filtr nie jest przeznaczony do pracy w czasie rzeczywistym.

Filtr akceptuje następujące opcje:

sigma, s
Ustaw stałą sigma szumu.

To zdjęcie sigma określa twardy próg „3 * sigma”; każdy współczynnik DCT (bezwzględny
wartość) poniżej tego progu, z możliwością odrzucenia.

Jeśli potrzebujesz bardziej zaawansowanego filtrowania, zobacz expr.

Wartość domyślna to 0.

zakładka
Ustaw liczbę nakładających się pikseli dla każdego bloku. Ponieważ filtr może działać wolno, możesz:
chcą zmniejszyć tę wartość kosztem mniej efektywnego filtra i ryzyka
różne artefakty.

Jeśli nakładająca się wartość nie pozwala na przetwarzanie całej wejściowej szerokości lub wysokości, a
zostanie wyświetlone ostrzeżenie i odpowiednie obramowania nie zostaną odszumione.

Wartość domyślna to rozmiar bloku-1, co jest najlepszym możliwym ustawieniem.

wyraż, e
Ustaw wyrażenie współczynnika współczynnika.

Dla każdego współczynnika bloku DCT to wyrażenie zostanie ocenione jako mnożnik
wartość współczynnika.

Jeśli ta opcja jest ustawiona, sigma opcja zostanie zignorowana.

Dostęp do wartości bezwzględnej współczynnika można uzyskać poprzez c zmienna.

n Ustaw rozmiar bloku używając liczby bitów. „1<n" definiuje rozmiar bloku, który jest
szerokość i wysokość obrabianych bloków.

Wartością domyślną jest 3 (8x8) i może zostać podniesiony do 4 dla rozmiar bloku z 16x16. Notatka
że zmiana tego ustawienia ma ogromne konsekwencje dla szybkości przetwarzania. Również
większy rozmiar bloku niekoniecznie oznacza lepsze usuwanie szumów.

Przykłady

Zastosuj odszumianie za pomocą sigma 4.5:

dctdnoiz=4.5

Tę samą operację można osiągnąć za pomocą systemu ekspresyjnego:

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

Gwałtowny odgłos przy użyciu bloku o rozmiarze „16x16”:

dctdnoiz=15:n=4

rozstać się
Usuń artefakty pasm z wejściowego wideo. Działa poprzez zastąpienie pikseli w paski
średnia wartość przywoływanych pikseli.

Filtr akceptuje następujące opcje:

1r
2r
3r
4r
Ustaw próg wykrywania pasm dla każdej płaszczyzny. Wartość domyślna to 0.02. Prawidłowy zakres to
0.00003 do 0.5. Jeśli różnica między bieżącym pikselem a pikselem odniesienia jest mniejsza niż
próg, będzie uważany za pasmowy.

Zakres, r
Zakres wykrywania prążków w pikselach. Wartość domyślna to 16. Jeśli dodatnia, liczba losowa w zakresie
Zostanie użyte 0 do ustawionej wartości. Jeśli jest ujemna, zostanie użyta dokładna wartość bezwzględna. ten
zakres określa kwadrat czterech pikseli wokół bieżącego piksela.

kierunek, d
Ustaw kierunek w radianach, z którego będą porównywane cztery piksele. Jeśli pozytywne, losowe
zostanie wybrany kierunek od 0 do ustawionego kierunku. Jeśli ujemna, dokładna o wartości bezwzględnej
zostanie wybrany. Na przykład kierunek 0, -PI lub -2*PI radiany będą wybierały tylko piksele włączone
ten sam wiersz i -PI/2 wybierze tylko piksele z tej samej kolumny.

plama
Jeśli włączone, bieżący piksel jest porównywany ze średnią wartością wszystkich czterech otoczenia
piksele. Domyślnie jest włączone. Jeśli wyłączone, bieżący piksel jest porównywany ze wszystkimi czterema
otaczające piksele. Piksel jest uważany za wstęgowy, jeśli tylko wszystkie cztery różnice z
otaczające piksele są mniejsze niż próg.

zdziesiątkować
Upuszczaj zduplikowane klatki w regularnych odstępach czasu.

Filtr akceptuje następujące opcje:

cykl
Ustaw liczbę klatek, z których jedna zostanie usunięta. Ustawiam to na N znaczy jeden
rama w każdej partii N ramki zostaną usunięte. Wartość domyślna to 5.

dupthresh
Ustaw próg wykrywania duplikatów. Jeśli metryka różnicy dla ramki wynosi
mniejsza lub równa tej wartości, jest deklarowana jako duplikat. Wartość domyślna to 1.1

scthresh
Ustaw próg zmiany sceny. Wartość domyślna to 15.

blokx
topornie
Ustaw rozmiar bloków osi X i Y używanych podczas obliczeń metrycznych. Większe
bloki dają lepsze tłumienie szumów, ale też dają gorsze wykrywanie małych
ruchy. Musi być potęgą dwójki. Wartość domyślna to 32.

ppsrc
Oznacz wejście główne jako wejście wstępnie przetworzone i aktywuj czysty strumień wejściowy. Ten
umożliwia wstępne przetwarzanie danych wejściowych za pomocą różnych filtrów, aby pomóc metrykom
obliczenia przy zachowaniu bezstratnego wyboru ramek. Po ustawieniu na 1, pierwszy
strumień jest dla wstępnie przetworzonego wejścia, a drugi strumień jest czystym źródłem z
gdzie są wybierane zachowane ramki. Wartość domyślna to 0.

chroma
Określ, czy w obliczeniach metrycznych uwzględniana jest barwa. Wartość domyślna to 1.

siadać
Zastosuj efekt deflacji do wideo.

Ten filtr zastępuje piksel przez miejscowy(3x3) średnia biorąc pod uwagę tylko
wartości niższe niż piksel.

Akceptuje następujące opcje:

próg 0
próg 1
próg 2
próg 3
Ogranicz maksymalną zmianę dla każdej płaszczyzny, domyślnie 65535. Jeśli 0, samolot pozostanie
bez zmian.

osądzać
Usuń drgania powodowane przez częściowo przeplatane treści telecine.

Judder może być wprowadzony na przykład przez: podciąganie filtr. Jeśli oryginalnym źródłem było
częściowo ztelecinowana treść, wtedy wyjście „pullup, dejudder” będzie miało zmienną
częstotliwość wyświetlania klatek. Może zmienić zarejestrowaną liczbę klatek na sekundę w kontenerze. Oprócz tej zmiany,
ten filtr nie wpłynie na wideo ze stałą liczbą klatek na sekundę.

Opcja dostępna w tym filtrze to:

cykl
Określ długość okna, nad którym powtarza się drganie.

Akceptuje dowolną liczbę całkowitą większą niż 1. Przydatnymi wartościami są:

4 Jeśli oryginał był telecine od 24 do 30 fps (Film do NTSC).

5 Jeśli oryginał był telecine od 25 do 30 fps (PAL do NTSC).

20 Jeśli mieszanka tych dwóch.

Wartość domyślna to 4.

Delog
Pomiń logo stacji telewizyjnej przez prostą interpolację otaczających pikseli. Po prostu ustaw
prostokąt zakrywający logo i patrz jak znika (a czasem coś jeszcze brzydszego)
pojawi się - Twój przebieg może się różnić).

Przyjmuje następujące parametry:

x
y Określ współrzędne lewego górnego rogu logo. Muszą być określone.

w
h Określ szerokość i wysokość logo do wyczyszczenia. Muszą być określone.

zespół muzyczny, t
Określ grubość rozmytej krawędzi prostokąta (dodana do w i h).
wartość domyślna to 4.

pokazać
Po ustawieniu na 1 na ekranie rysowany jest zielony prostokąt, aby ułatwić znalezienie właściwego
x, y, w, h parametry. Wartość domyślna to 0.

Prostokąt jest rysowany na skrajnych pikselach, które zostaną (częściowo) zastąpione przez
wartości interpolowane. Wartości kolejnych pikseli bezpośrednio poza tym prostokątem
w każdym kierunku zostaną użyte do obliczenia interpolowanych wartości pikseli wewnątrz
prostokąt.

Przykłady

· Ustaw prostokąt obejmujący obszar o współrzędnych lewego górnego rogu 0,0 i rozmiar
100x77 i opaska w rozmiarze 10:

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

strząsnąć
Spróbuj naprawić małe zmiany w przesunięciu w poziomie i/lub w pionie. Ten filtr pomaga usunąć
drgania aparatu spowodowane trzymaniem aparatu w dłoni, uderzaniem w statyw, poruszaniem się po pojeździe itp.

Filtr akceptuje następujące opcje:

x
y
w
h Określ prostokątny obszar, w którym można ograniczyć wyszukiwanie wektorów ruchu. W razie potrzeby
poszukiwanie wektorów ruchu można ograniczyć do prostokątnego obszaru kadru
zdefiniowany przez jego lewy górny róg, szerokość i wysokość. Te parametry mają takie same
co oznacza filtr szuflady, który można wykorzystać do wizualizacji pozycji
obwiednia.

Jest to przydatne, gdy jednoczesny ruch obiektów w kadrze może być
pomylony z ruchem kamery przez wyszukiwanie wektora ruchu.

Jeśli którykolwiek lub wszystkie z x, y, w i h są ustawione na -1, wtedy używana jest pełna klatka. To pozwala
późniejsze opcje do ustawienia bez określania ramki granicznej dla wektora ruchu
sprawdzić.

Domyślne - przeszukaj całą klatkę.

rx
ry Określ maksymalny zakres ruchu w kierunkach x i y w zakresie 0-64 pikseli.
Domyślnie 16.

krawędź
Określ sposób generowania pikseli w celu wypełnienia pustych miejsc na krawędzi ramki. Dostępny
wartości to:

pusty, 0
Wypełnij zera w pustych miejscach

Oryginalny, 1
Oryginalny obraz w pustych lokalizacjach

Zacisk, 2
Wyciągnięta wartość krawędzi w pustych miejscach

lustro, 3
Lustrzana krawędź w pustych miejscach

Wartość domyślna to lustro.

rozmiar bloku
Określ rozmiar bloku, który ma być używany do wyszukiwania ruchu. Zakres 4-128 pikseli, domyślnie 8.

kontrast
Określ próg kontrastu dla bloków. Tylko bloki z większą liczbą niż określono
Kontrast (różnica między najciemniejszymi i najjaśniejszymi pikselami) będzie brany pod uwagę. Zakres
1-255, domyślnie 125.

szukanie
Określ strategię wyszukiwania. Dostępne wartości to:

wyczerpujący, 0
Ustaw wyczerpujące wyszukiwanie

mniej, 1
Ustaw mniej wyczerpujące wyszukiwanie.

Wartość domyślna to wszechstronny.

filename
Jeśli ta opcja jest ustawiona, do określonego pliku zostanie zapisany szczegółowy dziennik wyszukiwania ruchu.

otwórzcl
Jeśli ustawiono na 1, określ za pomocą funkcji OpenCL, dostępne tylko wtedy, gdy FFmpeg był
skonfigurowany z "--enable-opencl". Wartość domyślna to 0.

detelecyna
Zastosuj dokładną odwrotność operacji telecine. Wymaga predefiniowanego wzoru
określone za pomocą opcji wzorca, która musi być taka sama jak przekazana do telecine
filtr.

Ten filtr akceptuje następujące opcje:

pierwsze_pole
Top, t
najpierw górne pole

dolny, b
najpierw dolne pole Wartość domyślna to „top”.

wzorzec
Ciąg liczb reprezentujący rozwijany wzór, który chcesz zastosować. Domyślny
wartość wynosi 23.

ramka_początkowa
Liczba reprezentująca pozycję pierwszej klatki względem telecine
wzorzec. Ma to być używane, jeśli strumień jest odcinany. Wartość domyślna to 0.

rozszerzanie się
Zastosuj efekt dylatacji do filmu.

Ten filtr zastępuje piksel przez miejscowy(3x3) maksymalnie.

Akceptuje następujące opcje:

próg 0
próg 1
próg 2
próg 3
Ogranicz maksymalną zmianę dla każdej płaszczyzny, domyślnie 65535. Jeśli 0, samolot pozostanie
bez zmian.

współrzędne
Flaga określająca piksel, do którego ma się odnosić. Wartość domyślna to 255, czyli wszystkie osiem pikseli to
używany.

Flagi do lokalnych map ze współrzędnymi 3x3 w następujący sposób:

1 2 3
4 5
6 7 8

szuflada
Narysuj kolorowe pole na obrazie wejściowym.

Przyjmuje następujące parametry:

x
y Wyrażenia określające współrzędne lewego górnego rogu pudełka. To domyślnie
do 0.

szerokość, w
wysokość, h
Wyrażenia określające szerokość i wysokość pudełka; jeśli 0 to są
interpretowane jako szerokość i wysokość wejściowa. Domyślnie jest to 0.

kolor, c
Określ kolor pola do pisania. Aby zapoznać się z ogólną składnią tej opcji, sprawdź
sekcja „Kolor” w podręczniku ffmpeg-utils. Jeśli użyto specjalnej wartości „odwróć”,
kolor krawędzi pudełka jest taki sam jak w przypadku wideo z odwróconą jasnością.

grubość, t
Wyrażenie określające grubość krawędzi pudełka. Wartość domyślna to 3.

Zobacz poniżej listę akceptowanych stałych.

Parametry dla x, y, w i h i t to wyrażenia zawierające następujące stałe:

dar Proporcje obrazu wejściowego są takie same jak (w / h) * sar.

hsub
vssub
wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

w_h, ih
w_w, iw
Wejściowa szerokość i wysokość.

sar Wejściowy współczynnik proporcji próbki.

x
y Współrzędne przesunięcia x i y, w którym narysowane jest pudełko.

w
h Szerokość i wysokość narysowanego pudełka.

t Grubość narysowanego pudełka.

Te stałe pozwalają x, y, w, h i t wyrażenia odnoszące się do siebie, więc ty
może na przykład określić „y=x/dar” lub „h=w/dar”.

Przykłady

· Narysuj czarną ramkę wokół krawędzi obrazu wejściowego:

szuflada

· Narysuj ramkę w kolorze czerwonym i nieprzezroczystości 50%:

szuflada=10:20:200:60:[email chroniony]

Poprzedni przykład można określić jako:

szuflada=x=10:y=20:w=200:h=60:kolor=[email chroniony]

· Wypełnij pudełko różowym kolorem:

szuflada=x=10:y=10:w=100:h=100:kolor=[email chroniony]:t=maks.

· Narysuj 2-pikselową czerwoną maskę 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

wykres rysunkowy, wykres graficzny
Narysuj wykres za pomocą wejściowych metadanych wideo lub audio.

Przyjmuje następujące parametry:

m1 Ustaw klucz metadanych pierwszej klatki, z którego wartości metadanych będą używane do rysowania wykresu.

fg1 Ustaw pierwsze wyrażenie koloru pierwszego planu.

m2 Ustaw klucz metadanych drugiej klatki, z którego wartości metadanych będą używane do rysowania wykresu.

fg2 Ustaw drugie wyrażenie koloru pierwszego planu.

m3 Ustaw klucz metadanych trzeciej klatki, z którego wartości metadanych będą używane do rysowania wykresu.

fg3 Ustaw trzecią ekspresję koloru pierwszego planu.

m4 Ustaw czwarty klucz metadanych ramki, z którego wartości metadanych będą używane do rysowania wykresu.

fg4 Ustaw czwarte wyrażenie koloru pierwszego planu.

min Ustaw minimalną wartość wartości metadanych.

max Ustaw maksymalną wartość wartości metadanych.

bg Ustaw kolor tła wykresu. Domyślnie jest biały.

tryb
Ustaw tryb wykresu.

Dostępne wartości dla trybu to:

bar
kropka
linia

Domyślnie jest to „linia”.

ślizgać się
Ustaw tryb slajdów.

Dostępne wartości dla slajdu to:

rama
Narysuj nową ramkę po osiągnięciu prawej granicy.

obsługi produkcji rolnej, która zastąpiła
Wymień stare kolumny na nowe.

przewijać
Przewiń od prawej do lewej.

rprzewiń
Przewiń od lewej do prawej.

Domyślnie jest to „ramka”.

rozmiar
Ustaw rozmiar wykresu wideo. Aby poznać składnię tej opcji, sprawdź "Wideo rozmiar" Sekcja
in dotychczasowy narzędzia ffmpeg podręcznik. Domyślna wartość to „900x256”.

Wyrażenia koloru pierwszego planu mogą używać następujących zmiennych:

MIN Minimalna wartość wartości metadanych.

MAX Maksymalna wartość wartości metadanych.

VAL Bieżąca wartość klucza metadanych.

Kolor jest zdefiniowany jako 0xAABBGGRR.

Przykład przy użyciu metadanych z statystyki sygnału filtr:

Signalstats,Drawgraph=lavfi.signalstats.YAVG:min=0:max=255

Przykład przy użyciu metadanych z ebur128 filtr:

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

siatka do rysowania
Narysuj siatkę na obrazie wejściowym.

Przyjmuje następujące parametry:

x
y Wyrażenia określające współrzędne pewnego punktu przecięcia siatki
(ma na celu skonfigurowanie offsetu). Oba domyślnie mają wartość 0.

szerokość, w
wysokość, h
Wyrażenia określające szerokość i wysokość komórki siatki, jeśli 0 to
interpretowane jako szerokość i wysokość wejściowa, odpowiednio, minus „grubość”, więc image
zostaje oprawiony. Domyślnie 0.

kolor, c
Określ kolor siatki. Aby zapoznać się z ogólną składnią tej opcji, sprawdź
Sekcja „Kolor” w podręczniku ffmpeg-utils. Jeśli używana jest wartość specjalna „odwróć”,
kolor siatki jest taki sam jak wideo z odwróconą jasnością.

grubość, t
Wyrażenie określające grubość linii siatki. Wartość domyślna to 1.

Zobacz poniżej listę akceptowanych stałych.

Parametry dla x, y, w i h i t to wyrażenia zawierające następujące stałe:

dar Proporcje obrazu wejściowego są takie same jak (w / h) * sar.

hsub
vssub
wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

w_h, ih
w_w, iw
Wejściowa szerokość i wysokość komórki siatki.

sar Wejściowy współczynnik proporcji próbki.

x
y Współrzędne x i y pewnego punktu przecięcia siatki (przeznaczone do konfiguracji)
zrównoważyć).

w
h Szerokość i wysokość narysowanej komórki.

t Grubość narysowanej komórki.

Te stałe pozwalają x, y, w, h i t wyrażenia odnoszące się do siebie, więc ty
może na przykład określić „y=x/dar” lub „h=w/dar”.

Przykłady

· Narysuj siatkę z komórką 100x100 pikseli, grubość 2 piksele, z kolorem czerwonym i an
krycie 50%:

drawgrid=szerokość=100:wysokość=100:grubość=2:kolor=[email chroniony]

· Narysuj białą siatkę 3x3 z kryciem 50%:

Drawgrid=w=iw/3:h=ih/3:t=2:c=[email chroniony]

tekst rysunkowy
Narysuj ciąg tekstowy lub tekst z określonego pliku na górze wideo, używając libfreetype
biblioteka.

Aby umożliwić kompilację tego filtra, musisz skonfigurować FFmpeg za pomocą
„--włącz-libfreetype”. Aby włączyć domyślną czcionkę zastępczą i chrzcielnica opcja, której potrzebujesz
skonfiguruj FFmpeg za pomocą "--enable-libfontconfig". Aby włączyć kształtowanie_tekstu opcja, ty
trzeba skonfigurować FFmpeg z "--enable-libfribidi".

Składnia

Przyjmuje następujące parametry:

pudełko Służy do rysowania ramki wokół tekstu przy użyciu koloru tła. Wartość musi wynosić 1
(włącz) lub 0 (wyłącz). Domyślna wartość pudełko to 0.

pudełkoborderw
Ustaw szerokość obramowania, które ma być narysowane wokół pudełka za pomocą kolor pudełka. Domyślny
wartość pudełkoborderw to 0.

kolor pudełka
Kolor, który ma być używany do rysowania ramki wokół tekstu. Aby sprawdzić składnię tej opcji, sprawdź
sekcja „Kolor” w podręczniku ffmpeg-utils.

Domyślna wartość kolor pudełka jest biały".

granica
Ustaw szerokość obramowania, które ma być narysowane wokół tekstu za pomocą kolor ramki,
domyślna wartość granica to 0.

kolor ramki
Ustaw kolor, który będzie używany do rysowania obramowania wokół tekstu. Dla składni tego
opcję, sprawdź sekcję „Kolor” w podręczniku ffmpeg-utils.

Domyślna wartość kolor ramki jest czarne".

ekspansja
Wybierz, w jaki sposób XNUMX jest rozwinięty. Może być „brak”, „strftime” (przestarzałe) lub
"normalny" (domyślny). Zobacz rysuj rozszerzenie_tekstu, Tekst ekspansja sekcja poniżej dla
detale.

granice_napraw
Jeśli tak, sprawdź i popraw współrzędne tekstu, aby uniknąć obcinania.

kolor czcionki
Kolor używany do rysowania czcionek. Aby poznać składnię tej opcji, sprawdź
Sekcja „Kolor” w podręczniku ffmpeg-utils.

Domyślna wartość kolor czcionki jest czarne".

wyrażenie_kolor_czcionki
Ciąg, który jest rozwijany w taki sam sposób jak XNUMX uzyskać dynamikę kolor czcionki wartość. Za pomocą
default ta opcja ma pustą wartość i nie jest przetwarzana. Gdy ta opcja jest ustawiona, to
nadpisuje kolor czcionki opcja.

chrzcielnica
Rodzina czcionek, która ma być używana do rysowania tekstu. Domyślnie Sans.

plik czcionek
Plik czcionki, który ma być używany do rysowania tekstu. Ścieżka musi być uwzględniona. Ten parametr
jest obowiązkowe, jeśli obsługa fontconfig jest wyłączona.

rysować
Ta opcja nie istnieje, zobacz system osi czasu

alfa
Narysuj tekst, stosując mieszanie alfa. Wartość może być liczbą od 0.0
i 1.0 Wyrażenie akceptuje te same zmienne x, y robić. Wartość domyślna to 1.
Proszę zobaczyć fontcolor_expr

rozmiar czcionki
Rozmiar czcionki używany do rysowania tekstu. Domyślna wartość rozmiar czcionki to 16.

kształtowanie_tekstu
Jeśli jest ustawiona na 1, spróbuj ukształtować tekst (na przykład odwróć kolejność od prawej do
lewy tekst i dołącz do znaków arabskich) przed jego narysowaniem. W przeciwnym razie po prostu narysuj
tekst dokładnie taki, jak podano. Domyślnie 1 (jeśli jest obsługiwane).

ft_load_flags
Flagi używane do ładowania czcionek.

Flagi mapują odpowiednie flagi obsługiwane przez libfreetype i są kombinacją
o następujących wartościach:

domyślnym
nie_skala
nie_podpowiedź
oddać
brak_mapy bitowej
układ_pionowy
siła_autowskazówka
upraw_bitmapy
pedantyczny
zignoruj_global_advance_width
brak_rekurencji
ignorować_transformację
monochromatyczny
projektowanie_liniowe
brak_automatycznej podpowiedzi

Wartość domyślna to „domyślna”.

Aby uzyskać więcej informacji, zapoznaj się z dokumentacją dotyczącą flag libfreetype FT_LOAD_*.

kolor cienia
Kolor używany do rysowania cienia za rysowanym tekstem. Dla składni
tę opcję, sprawdź sekcję „Kolor” w podręczniku ffmpeg-utils.

Domyślna wartość kolor cienia jest czarne".

cieńx
cienisty
Przesunięcia x i y dla pozycji cienia tekstu w stosunku do pozycji
tekst. Mogą to być wartości dodatnie lub ujemne. Domyślna wartość dla obu to
„0”.

numer_początkowy
Początkowy numer klatki dla zmiennej n/frame_num. Wartość domyślna to „0”.

rozmiar tabulacji
Rozmiar w liczbie spacji do wykorzystania do renderowania karty. Wartość domyślna to 4.

Timecode
Ustaw początkową reprezentację kodu czasowego w formacie „gg:mm:ss[:;.]ff”. To może być użyte
z parametrem tekstowym lub bez. stawka_kodu czasowego należy określić opcję.

stawka_kodu czasowego, oceniać, r
Ustaw szybkość klatek kodu czasowego (tylko kod czasowy).

XNUMX
Ciąg tekstowy do narysowania. Tekst musi być sekwencją znaków zakodowanych w UTF-8.
Ten parametr jest obowiązkowy, jeśli żaden plik nie jest określony z parametrem plik tekstowy.

plik tekstowy
Plik tekstowy zawierający tekst do narysowania. Tekst musi być sekwencją zakodowaną w UTF-8
postacie.

Ten parametr jest obowiązkowy, jeśli w parametrze nie określono żadnego ciągu tekstowego XNUMX.

Jeśli oba XNUMX i plik tekstowy są określone, zgłaszany jest błąd.

przeładować
Jeśli jest ustawiony na 1, plik tekstowy zostanie ponownie załadowany przed każdą ramką. Pamiętaj, aby go zaktualizować
atomowo lub może być odczytany częściowo, a nawet zawieść.

x
y Wyrażenia określające przesunięcia, w których tekst będzie rysowany w filmie
ramka. Odnoszą się do górnej/lewej krawędzi obrazu wyjściowego.

Domyślna wartość x i y wynosi „0”.

Zobacz poniżej listę akceptowanych stałych i funkcji.

Parametry dla x i y są wyrażeniami zawierającymi następujące stałe i
Funkcje:

dar wejściowy współczynnik proporcji wyświetlacza, jest taki sam jak (w / h) * sar

hsub
vssub
wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

linia_h, lh
wysokość każdej linii tekstu

główny_h, h, H
wysokość wejściowa

główny_w, w, W
szerokość wejściowa

max_glif_a, wzlot
maksymalna odległość od linii bazowej do najwyższej/górnej współrzędnej siatki używanej do
umieść punkt obrysu glifu dla wszystkich renderowanych glifów. Jest to wartość dodatnia, należna
do orientacji siatki z osią Y do góry.

max_glif_d, zejście
maksymalna odległość od linii bazowej do najniższej współrzędnej siatki użytej do umieszczenia a
punkt zarysu glifu dla wszystkich renderowanych glifów. Jest to wartość ujemna, ponieważ
orientację siatki, z osią Y do góry.

max_glif_h
maksymalna wysokość glifu, czyli maksymalna wysokość wszystkich glifów zawartych w
wyrenderowany tekst, jest to odpowiednik wzlot - zejście.

max_glyph_w
maksymalna szerokość glifu, czyli maksymalna szerokość wszystkich glifów zawartych w
renderowany tekst

n liczba klatek wejściowych, zaczynając od 0

rand (min, maks.)
zwróć losową liczbę zawartą między min i max

sar Wejściowy współczynnik proporcji próbki.

t znacznik czasu wyrażony w sekundach, NAN, jeśli wejściowy znacznik czasu jest nieznany

tekst_h, th
wysokość renderowanego tekstu

tekst_w, tw
szerokość renderowanego tekstu

x
y współrzędne przesunięcia x i y, w których rysowany jest tekst.

Te parametry pozwalają x i y wyrażenia odwołujące się do siebie, dzięki czemu możesz
przykład określ "y=x/dar".

Tekst ekspansja

If ekspansja jest ustawiony na "strftime", filtr rozpoznaje strftime() sekwencje w
podany tekst i odpowiednio je rozwija. Sprawdź dokumentację strftime(), To
funkcja jest przestarzała.

If ekspansja jest ustawione na "brak", tekst jest drukowany dosłownie.

If ekspansja jest ustawiony na "normalny" (co jest domyślnym), następujący mechanizm rozszerzania
Jest używane.

Znak odwrotnego ukośnika \, po którym następuje dowolny znak, zawsze rozwija się do drugiego
znaków.

Sekwencja formularza „%{...}” została rozwinięta. Tekst między nawiasami klamrowymi jest funkcją
nazwa, po której mogą występować argumenty oddzielone znakiem ':'. Jeśli argumenty zawierają specjalne
znaków lub ograniczników (':' lub '}'), należy je zmienić.

Zwróć uwagę, że prawdopodobnie muszą one również zostać zmienione jako wartość dla XNUMX opcja w
łańcuch argumentu filtru i jako argument filtru w opisie wykresu filtru oraz
być może również dla powłoki, która składa się na cztery poziomy ucieczki; za pomocą pliku tekstowego
pozwala uniknąć tych problemów.

Dostępne są następujące funkcje:

wyraż, e
Wynik oceny wyrażenia.

Musi przyjąć jeden argument określający wyrażenie do oceny, które akceptuje
te same stałe i funkcje jak x i y wartości. Zauważ, że nie wszystkie stałe powinny
być używane, na przykład rozmiar tekstu nie jest znany podczas oceny wyrażenia, więc
stały tekst_w i tekst_h będzie miał niezdefiniowaną wartość.

wyrażenie_int_format, eif
Oceń wartość i dane wyjściowe wyrażenia jako sformatowaną liczbę całkowitą.

Pierwszym argumentem jest wyrażenie do oceny, tak jak w przypadku expr funkcja.
Drugi argument określa format wyjściowy. Dozwolone wartości to x, X, d i u.
Traktowane są dokładnie tak, jak w funkcji „printf”. Trzeci parametr jest opcjonalny
i ustawia liczbę pozycji zajmowanych przez wyjście. Można go użyć do dodania wyściółki
z zerami od lewej.

gmtime
Czas działania filtra wyrażony w UTC. Może przyjąć argument:
a strftime() ciąg formatu.

czas lokalny
Czas działania filtra wyrażony w lokalnej strefie czasowej. To może
zaakceptuj argument: a strftime() ciąg formatu.

metadanych
Metadane ramki. Musi przyjąć jeden argument określający klucz metadanych.

n, numer_klatki
Numer klatki, zaczynając od 0.

typ_obrazu
1-znakowy opis bieżącego typu obrazu.

pkt Sygnatura czasowa bieżącej klatki. Może zająć do dwóch argumentów.

Pierwszym argumentem jest format znacznika czasu; domyślnie jest to "flt" przez sekundy, ponieważ
liczba dziesiętna z dokładnością do mikrosekundy; „hms” oznacza sformatowany
[-]GG:MM:SS.mmm znacznik czasu z dokładnością do milisekund.

Drugi argument to offset dodany do znacznika czasu.

Przykłady

· Narysuj "Test Testowy" czcionką FreeSerif, używając domyślnych wartości dla opcjonalnego
parametry.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Tekst testowy'"

· Narysuj 'Test Testowy' czcionką FreeSerif o rozmiarze 24 na pozycji x=100 i y=50 (licząc
od lewego górnego rogu ekranu), tekst jest żółty z czerwonym prostokątem wokół niego. Obydwa
tekst i ramka mają krycie 20%.

drawtext="fontfile=/usr/share/fonts/truetype/freefont/FreeSerif.ttf: text='Tekst testowy':\
x=100: y=50: rozmiar czcionki=24: kolor czcionki=[email chroniony]: pudełko=1: pudełkokolor=[email chroniony]"

Zwróć uwagę, że podwójne cudzysłowy nie są konieczne, jeśli spacje nie są używane w obrębie
lista parametrów.

· Pokaż tekst na środku klatki wideo:

drawtext="fontsize=30:fontfile=FreeSerif.ttf:text='hello world':x=(w-text_w)/2:y=(h-text_h)/2"

· Pokaż linię tekstu przesuwającą się od prawej do lewej w ostatnim rzędzie klatki wideo. ten
filet DŁUGA LINIA zakłada się, że zawiera pojedynczy wiersz bez nowych wierszy.

drawtext="fontsize=15:fontfile=FreeSerif.ttf:text=LONG_LINE:y=h-line_h:x=-50*t"

· Pokaż zawartość pliku KREDYTY od dołu ramki i przewiń w górę.

drawtext="fontsize=20:fontfile=FreeSerif.ttf:textfile=KREDYTY:y=h-20*t"

· Narysuj pojedynczą zieloną literę „g” w środku wejściowego wideo. Linia bazowa glifu
jest umieszczony na połowie wysokości ekranu.

drawtext="fontsize=60:fontfile=FreeSerif.ttf:fontcolor=green:text=g:x=(w-max_glyph_w)/2:y=h/2-ascent"

· Pokaż tekst przez 1 sekundę co 3 sekundy:

drawtext="fontfile=FreeSerif.ttf:fontcolor=white:x=100:y=x/dar:enable=lt(mod(t\,3)\,1):text='blink'"

· Użyj fontconfig, aby ustawić czcionkę. Zauważ, że dwukropki muszą być pominięte.

drawtext='fontfile=Linux Libertine O-40\:style=Semibold:text=FFmpeg'

· Wydrukuj datę kodowania w czasie rzeczywistym (patrz strftime.(3)):

drawtext='fontfile=FreeSans.ttf:text=%{localtime\:%a %b %d %Y}'

· Pokaż pojawianie się i zanikanie tekstu (pojawianie się/znikanie):

#!/ Bin / sh
DS=1.0 # początek wyświetlania
DE=10.0 # koniec wyświetlacza
FID=1.5 # zanikanie w czasie trwania
FOD=5 # czas zanikania
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)*pomiędzy(t\\, $DS\\, $DS + $FID) + (-(t - $DE) /$FOD)*między(t\\, $DE - $FOD\\, $DE) )\\, 0\\, 255) \\\\: x\\\\: 2 }"

Aby uzyskać więcej informacji o libfreetype, sprawdź:http://www.freetype.org/>.

Aby uzyskać więcej informacji o fontconfig, sprawdź:
<http://freedesktop.org/software/fontconfig/fontconfig-user.html>.

Aby uzyskać więcej informacji o libfribidi, sprawdź:http://fribidi.org/>.

wykrywanie krawędzi
Wykrywaj i rysuj krawędzie. Filtr wykorzystuje algorytm Canny Edge Detection.

Filtr akceptuje następujące opcje:

Niska
wysoka
Ustaw niskie i wysokie wartości progowe używane przez algorytm progowania Canny.

Wysoki próg wybiera „silne” piksele krawędzi, które są następnie łączone przez
8-łączność z „słabymi” pikselami krawędzi wybranymi przez niski próg.

Niska i wysoka wartości progowe należy wybrać z zakresu [0,1], a Niska powinno być
mniejsze lub równe wysoka.

Wartość domyślna dla Niska to „20/255”, a wartość domyślna dla wysoka to „50/255”.

tryb
Zdefiniuj tryb rysowania.

przewody
Narysuj biało-szare przewody na czarnym tle.

mieszanka kolorów
Wymieszaj kolory, aby uzyskać efekt farby/kreskówki.

Wartość domyślna to przewody.

Przykłady

· Standardowe wykrywanie krawędzi z niestandardowymi wartościami progu histerezy:

wykrywanie krawędzi=niski=0.1:wysoki=0.4

· Efekt malowania bez progowania:

edgedetect=tryb=mieszanka kolorów:wysoka=0

eq
Ustaw jasność, kontrast, nasycenie i przybliżoną regulację gamma.

Filtr akceptuje następujące opcje:

kontrast
Ustaw wyraz kontrastu. Wartość musi być wartością zmiennoprzecinkową z zakresu od „-2.0” do 2.0.
Wartość domyślna to „0”.

jasność
Ustaw wyraz jasności. Wartość musi być wartością zmiennoprzecinkową z zakresu od „-1.0” do 1.0.
Wartość domyślna to „0”.

nasycenie
Ustaw wyrażenie nasycenia. Wartość musi być zmiennoprzecinkowa w zakresie od 0.0 do 3.0. ten
wartość domyślna to „1”.

gamma
Ustaw wyrażenie gamma. Wartość musi być zmiennoprzecinkowa w zakresie od 0.1 do 10.0. Domyślny
wartość to „1”.

gamma_r
Ustaw wyrażenie gamma na kolor czerwony. Wartość musi być zmiennoprzecinkowa w zakresie od 0.1 do 10.0. ten
wartość domyślna to „1”.

gamma_g
Ustaw wyrażenie gamma na zielony. Wartość musi być zmiennoprzecinkowa w zakresie od 0.1 do 10.0.
Wartość domyślna to „1”.

gamma_b
Ustaw wyrażenie gamma dla koloru niebieskiego. Wartość musi być zmiennoprzecinkowa w zakresie od 0.1 do 10.0. ten
wartość domyślna to „1”.

gamma_waga
Ustaw wyrażenie wagi gamma. Może być stosowany do zmniejszenia efektu wysokiej gamma
wartość na jasnych obszarach obrazu, np. zapobiegaj nadmiernemu wzmocnieniu i po prostu
biały. Wartość musi być zmiennoprzecinkowa w zakresie od 0.0 do 1.0. Wartość 0.0 zmienia gamma
korekta w dół, podczas gdy 1.0 pozostawia ją z pełną mocą. Wartość domyślna to „1”.

eval
Ustaw, kiedy wyrażenia dla jasności, kontrastu, nasycenia i wyrażenia gamma
są oceniane.

Przyjmuje następujące wartości:

startowych
Oceniaj wyrażenia tylko raz podczas inicjalizacji filtra lub gdy polecenie
przetwarzane

rama
oceń wyrażenia dla każdej przychodzącej ramki

Wartość domyślna to startowych.

Wyrażenia przyjmują następujące parametry:

n liczba klatek klatki wejściowej od 0

pisać pozycja w bajtach odpowiedniego pakietu w pliku wejściowym, NAN, jeśli nie określono

r liczba klatek na sekundę wejściowego wideo, NAN, jeśli liczba klatek na sekundę wejściowa jest nieznana

t znacznik czasu wyrażony w sekundach, NAN, jeśli wejściowy znacznik czasu jest nieznany

Polecenia

Filtr obsługuje następujące polecenia:

kontrast
Ustaw wyraz kontrastu.

jasność
Ustaw wyraz jasności.

nasycenie
Ustaw wyrażenie nasycenia.

gamma
Ustaw wyrażenie gamma.

gamma_r
Ustaw wyrażenie gamma_r.

gamma_g
Ustaw wyrażenie gamma_g.

gamma_b
Ustaw wyrażenie gamma_b.

gamma_waga
Ustaw wyrażenie gamma_weight.

Polecenie akceptuje tę samą składnię odpowiedniej opcji.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

erozja
Zastosuj efekt erozji do filmu.

Ten filtr zastępuje piksel przez miejscowy(3x3) minimalnie.

Akceptuje następujące opcje:

próg 0
próg 1
próg 2
próg 3
Ogranicz maksymalną zmianę dla każdej płaszczyzny, domyślnie 65535. Jeśli 0, samolot pozostanie
bez zmian.

współrzędne
Flaga określająca piksel, do którego ma się odnosić. Wartość domyślna to 255, czyli wszystkie osiem pikseli to
używany.

Flagi do lokalnych map ze współrzędnymi 3x3 w następujący sposób:

1 2 3
4 5
6 7 8

samoloty wyciągowe
Wyodrębnij komponenty kanału kolorów z wejściowego strumienia wideo do oddzielnego wideo w skali szarości
strumieni.

Filtr akceptuje następującą opcję:

samoloty
Ustaw samolot(y) do wyodrębnienia.

Dostępne wartości dla samolotów to:

y
u
v
a
r
g
b

Wybranie płaszczyzn niedostępnych na wejściu spowoduje błąd. To znaczy ty
nie można wybrać jednocześnie płaszczyzn "r", "g", "b" z "y", "u", "v".

Przykłady

· Wyodrębnij komponent kanału koloru luma, u i v z wejściowej klatki wideo do 3 skali szarości
wyjścia:

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

elbl
Zastosuj efekt posteryzacji za pomocą algorytmu ELBG (Enhanced LBG).

Dla każdego obrazu wejściowego filtr obliczy optymalne mapowanie z wejściowego do
dane wyjściowe biorąc pod uwagę długość książki kodowej, czyli liczbę różnych kolorów wyjściowych.

Ten filtr akceptuje następujące opcje.

długość_książki kodów, l
Ustaw długość książki kodowej. Wartość musi być dodatnią liczbą całkowitą i reprezentuje liczbę
wyraźnych kolorów wyjściowych. Wartość domyślna to 256.

nb_kroki, n
Ustaw maksymalną liczbę iteracji do zastosowania w celu obliczenia optymalnego odwzorowania. ten
wyższa wartość, tym lepszy wynik i dłuższy czas obliczeń. Domyślna
wartość wynosi 1.

nasionko, s
Ustaw losowy ziarno, musi być liczbą całkowitą zawartą między 0 a UINT32_MAX. Jeśli nie
określony lub jeśli jest jawnie ustawiony na -1, filtr spróbuje użyć dobrego losowego ziarna
na zasadzie najlepszych starań.

pal8
Ustaw format piksela wyjściowego pal8. Ta opcja nie działa przy większej długości książki kodowej
niż 256.

blaknąć
Zastosuj efekt ściemniania/zanikania do wejściowego wideo.

Przyjmuje następujące parametry:

rodzaj, t
Typ efektu może być „in” dla efektu ściemniania lub „out” dla efektu ściemniania.
Wartość domyślna to „w”.

ramka_początkowa, s
Określ numer klatki, od której zaczniesz stosować efekt zanikania. Wartość domyślna to 0.

nb_ramki, n
Liczba klatek, przez które trwa efekt zanikania. Pod koniec efektu zanikania
wideo wyjściowe będzie miało taką samą intensywność jak wideo wejściowe. Pod koniec zanikania
wyjście, wideo wyjściowe zostanie wypełnione wybranym kolor. Domyślnie jest
25.

alfa
Jeśli jest ustawiony na 1, zanika tylko kanał alfa, jeśli taki istnieje na wejściu. Wartość domyślna to 0.

czas rozpoczęcia, st
Określ znacznik czasu (w sekundach) klatki, aby rozpocząć stosowanie efektu zanikania. Jeśli
określono zarówno ramkę startową, jak i czas_początkowy, zanikanie rozpocznie się w dowolnym momencie
ostatni, ubiegły, zeszły. Wartość domyślna to 0.

Trwanie, d
Liczba sekund, przez które musi trwać efekt zanikania. Pod koniec zanikania
efekt wideo wyjściowe będzie miało taką samą intensywność jak wideo wejściowe, pod koniec
przejście zanikania wyjściowe wideo zostanie wypełnione wybranym kolor. Jeśli
określono zarówno czas trwania, jak i nb_frames, używany jest czas trwania. Wartość domyślna to 0 (nb_frames
jest używany domyślnie).

kolor, c
Określ kolor zanikania. Domyślnie jest „czarny”.

Przykłady

· Zanikanie w pierwszych 30 klatkach wideo:

zanikanie=w:0:30

Powyższe polecenie jest równoważne z:

zanikanie=t=in:s=0:n=30

· Wygaszenie ostatnich 45 klatek 200-klatkowego wideo:

zanikanie=out:155:45
zanikanie=typ=out:start_frame=155:nb_frames=45

· Zanikanie pierwszych 25 klatek i zanikanie ostatnich 25 klatek 1000-klatkowego wideo:

zanikanie=in:0:25, zanikanie=out:975:25

· Zrób pierwsze 5 klatek na żółto, a następnie zniknij z klatek 5-24:

zanikanie=w:5:20:kolor=żółty

· Zanikanie w alfabecie na pierwszych 25 klatkach wideo:

zanikanie=w:0:25:alfa=1

· Ustaw pierwsze 5.5 sekundy na czarny, a następnie zanikaj przez 0.5 sekundy:

zanikanie=t=in:st=5.5:d=0.5

fftfilt
Zastosuj dowolne wyrażenia do próbek w domenie częstotliwości

dc_Y
Dostosuj wartość prądu stałego (wzmocnienie) płaszczyzny luma obrazu. Filtr akceptuje
wartość całkowita w zakresie od 0 do 1000. Wartość domyślna to 0.

dc_U
Dostosuj wartość prądu stałego (wzmocnienie) pierwszej płaszczyzny chromatycznej obrazu. Filtr akceptuje
wartość całkowita w zakresie od 0 do 1000. Wartość domyślna to 0.

dc_V
Dostosuj wartość prądu stałego (wzmocnienie) drugiej płaszczyzny chromatycznej obrazu. Filtr akceptuje
wartość całkowita w zakresie od 0 do 1000. Wartość domyślna to 0.

ciężki
Ustaw wyrażenie wagi domeny częstotliwości dla płaszczyzny luma.

waga_U
Ustaw wyrażenie wagi domeny częstotliwości dla 1. płaszczyzny chrominancji.

waga_V
Ustaw wyrażenie wagi domeny częstotliwości dla drugiej płaszczyzny chrominancji.

Filtr akceptuje następujące zmienne:

X
Y Współrzędne bieżącej próbki.

W
H Szerokość i wysokość obrazu.

Przykłady

· Górnoprzepustowy:

fftfilt=dc_Y=128:waga_Y='squish(1-(Y+X)/100)'

· Dolnoprzepustowy:

fftfilt=dc_Y=0:waga_Y='squish((Y+X)/100-1)'

· Wyostrzenie:

fftfilt=dc_Y=0:waga_Y='1+squish(1-(Y+X)/100)'

pole
Wyodrębnij pojedyncze pole z obrazu z przeplotem za pomocą arytmetyki kroków, aby uniknąć marnowania
Czas procesora. Ramki wyjściowe są oznaczone jako bez przeplotu.

Filtr akceptuje następujące opcje:

rodzaj
Określ, czy wyodrębnić górę (jeśli wartość wynosi 0 lub „góra”), czy dolne pole
(jeśli wartość wynosi 1 lub „dół”).

dopasowanie terenowe
Filtr dopasowania pola dla odwróconego telecine. Ma na celu zrekonstruowanie postępowych
ramki ze strumienia telecine. Filtr nie upuszcza zduplikowanych ramek, aby osiągnąć
po kompletnym odwrotnym telecine „fieldmatch” musi nastąpić filtr dziesiątkujący, taki jak
as zdziesiątkować na wykresie filtra.

Oddzielenie dopasowania pól i dziesiątkowania jest w szczególności motywowane przez
możliwość wstawienia między nimi filtra usuwającego przeplot. Jeśli źródło
ma mieszaną zawartość telecine i rzeczywistą z przeplotem, „fieldmatch” nie będzie mógł się dopasować
pola dla części z przeplotem. Ale te pozostałe czesane ramki zostaną oznaczone jako
z przeplotem, dzięki czemu można je usunąć przez późniejszy filtr, taki jak jadif zanim
dziesiątkowanie.

Oprócz różnych opcji konfiguracyjnych „fieldmatch” może zająć opcjonalną sekundę
strumień, aktywowany przez ppsrc opcja. Jeśli ta opcja jest włączona, rekonstrukcja ramek będzie
na podstawie pól i ramek z tego drugiego strumienia. Dzięki temu pierwsze wejście może być:
wstępnie przetworzone w celu wspomagania różnych algorytmów filtra, przy jednoczesnym zachowaniu
wyjście bezstratne (przy założeniu, że pola są odpowiednio dopasowane). Zazwyczaj świadomy w terenie
Pomóc może odszumianie lub regulacja jasności/kontrastu.

Zauważ, że ten filtr używa tych samych algorytmów co TIVTC/TFM (projekt AviSynth) i
VIVTC/VFM (projekt VapourSynth). Ten ostatni to lekki klon TFM, z którego „fieldmatch”
oparta jest na. Chociaż semantyka i użycie są bardzo zbliżone, niektóre nazwy zachowań i opcji
mogą się różnić.

Połączenia zdziesiątkować Filtr obecnie działa tylko dla danych wejściowych ze stałą szybkością klatek. Jeśli Twój wkład ma
mieszane treści z telecine (30 kl./s) i progresywne z niższą liczbą klatek na sekundę, np. 24 kl./s, użyj
następujący łańcuch filtrów w celu wytworzenia niezbędnego strumienia CFR:
"dejudder, fps=30000/1001, mecz w polu, dziesiątka".

Filtr akceptuje następujące opcje:

zamówienie
Określ założoną kolejność pól strumienia wejściowego. Dostępne wartości to:

samochód
Automatyczne wykrywanie parzystości (użyj wewnętrznej wartości parzystości FFmpeg).

bff Załóż najpierw dolne pole.

tff Załóż najpierw górne pole.

Pamiętaj, że czasami zaleca się, aby nie ufać parzystości ogłaszanej przez strumień.

Wartość domyślna to samochód.

tryb
Ustaw tryb lub strategię dopasowywania do użycia. pc tryb jest najbezpieczniejszy w tym sensie, że
nie będzie ryzykować szarpania z powodu powielania ramek, jeśli to możliwe, ale jeśli takowe są
złe edycje lub pola mieszane, w przypadku dobrego dopasowania zostaną wygenerowane ramki czesane
może faktycznie istnieć. Z drugiej strony, pcn_ub tryb jest najbardziej ryzykowny pod względem
tworzenie szarpnięć, ale prawie zawsze znajdzie dobrą oprawkę, jeśli taka istnieje. ten
wszystkie inne wartości są gdzieś pomiędzy pc i pcn_ub pod względem ryzyka szarpnięcia
i tworzenie zduplikowanych ramek vs znajdowanie dobrych dopasowań w sekcjach ze złą edycją,
pola osierocone, pola mieszane itp.

Więcej informacji na temat p/c/n/u/b można znaleźć w p/c/n/u/b znaczenie

Dostępne wartości to:

pc Dopasowanie dwukierunkowe (p/c)

szt_n
Dopasowywanie dwukierunkowe i próba trzeciego dopasowania, jeśli nadal jest czesana (p/c + n)

komputer_u
Dopasowywanie dwukierunkowe i próba dopasowania trzeciego (ta sama kolejność), jeśli nadal jest czesana (p/c + u)

szt_n_ub
Dopasowywanie dwukierunkowe, próba trzeciego dopasowania, jeśli nadal jest czesana, i próba dopasowania czwartego/2, jeśli
nadal czesane (p/c + n + u/b)

pcn Dopasowanie trójdrożne (p/c/n)

pcn_ub
Dopasowywanie trójstronne i próbowanie dopasowań 3/4, jeśli wszystkie 5 oryginalne dopasowania są
wykryte jako czesane (p/c/n + u/b)

Nawiasy na końcu wskazują dopasowania, które zostaną użyte w tym trybie
zarozumiały zamówienie=tff (I pole on samochód or Top).

Pod względem szybkości pc tryb jest zdecydowanie najszybszy i pcn_ub jest najwolniejszy.

Wartość domyślna to szt_n.

ppsrc
Oznacz główny strumień wejściowy jako wejście wstępnie przetworzone i włącz wejście drugorzędne
strumień jako czyste źródło do zbierania pól. Zobacz wprowadzenie do filtra dla
więcej szczegółów. Jest podobny do clip2 funkcja z VFM/TFM.

Wartość domyślna to 0 (wyłączone).

pole
Ustaw pole do dopasowania. Zaleca się ustawienie tej samej wartości, co zamówienie
chyba że wystąpią błędy dopasowania z tym ustawieniem. W pewnych okolicznościach
zmiana pola używanego do dopasowania może mieć duży wpływ na dopasowanie
wydajność. Dostępne wartości to:

samochód
Automatycznie (ta sama wartość co zamówienie).

dolny
Dopasuj z dolnego pola.

Top Dopasuj z górnego pola.

Wartość domyślna to samochód.

mchromatyczny
Określ, czy podczas porównywania dopasowań ma być uwzględniana barwa. W większości przypadków to
zaleca się pozostawienie tej opcji włączonej. Powinieneś ustawić to na 0 tylko wtedy, gdy Twój klip ma
złe problemy z kolorami, takie jak silne tęcze lub inne artefakty. Ustawiam to na 0
może być również użyty do przyspieszenia rzeczy kosztem pewnej dokładności.

Wartość domyślna to 1.

y0
y1 Definiują one pasmo wykluczenia, które wyklucza linie między y0 i y1 z bycia
zawarte w decyzji o dopasowaniu pola. Do zignorowania można użyć pasma wykluczenia
napisy, logo lub inne rzeczy, które mogą przeszkadzać w dopasowaniu. y0 ustawia
uruchamianie linii skanowania i y1 ustawia linię końcową; wszystkie linie pomiędzy y0 i y1
(W tym y0 i y1) zostaną zignorowane. Ustawienie y0 i y1 do tej samej wartości będzie
wyłączyć tę funkcję. y0 i y1 domyślnie 0.

scthresh
Ustaw próg wykrywania zmiany sceny jako procent maksymalnej zmiany luma
samolot. Dobre wartości mieszczą się w zakresie „[8.0, 14.0]”. Wykrywanie zmiany sceny jest tylko
istotne w przypadku Combmatch=sc. Zakres dla scthresh to „[0.0, 100.0]”.

Wartość domyślna to 12.0.

Combmatch
Kiedy walka nie jest Żaden, "fieldmatch" uwzględni czesane wyniki
mecze podczas decydowania, który mecz ma być użyty jako mecz finałowy. Dostępne wartości to:

Żaden
Brak ostatecznego dopasowania na podstawie czesanych wyników.

sc Wyniki czesane są używane tylko po wykryciu zmiany sceny.

pełny
Używaj czesanych wyników przez cały czas.

Domyślnie jest sc.

grzebień
Wymuś „fieldmatch”, aby obliczyć czesane dane dla niektórych dopasowań i wydrukować je.
To ustawienie jest znane jako miauczenie w słownictwie TFM/VFM. Dostępne wartości to:

Żaden
Bez wymuszonych obliczeń.

pcn Obliczenia siły p/c/n.

pcnub
Wymuś obliczenia p/c/n/u/b.

Wartość domyślna to Żaden.

ctresz
Jest to próg czesania obszarów używany do wykrywania przeczesanych ramek. To zasadniczo
kontroluje, jak "mocne" lub "widoczne" czesanie musi być wykryte. Większe wartości oznaczają
czesanie musi być bardziej widoczne, a mniejsze wartości oznaczają, że czesanie może być mniej widoczne lub
silny i nadal być wykrywany. Prawidłowe ustawienia to „-1” (każdy piksel będzie
wykryte jako czesane) do 255 (żaden piksel nie zostanie wykryty jako czesany). To jest w zasadzie
wartość różnicy pikseli. Dobry zasięg to „[8, 12]”.

Wartość domyślna to 9.

chroma
Ustawia, czy chroma jest brana pod uwagę w decyzji o przeczesywaniu ramki. Wyłącz tylko
dzieje się tak, jeśli twoje źródło ma problemy z kolorem (tęczowe itp.), które powodują problemy
do wykrywania czesanych ramek z włączoną funkcją chroma. Właściwie, używając chroma=0 is
zwykle bardziej niezawodny, z wyjątkiem przypadku, gdy w
źródło.

Wartość domyślna to 0.

blokx
topornie
Odpowiednio ustaw oś x i oś y okna używanego podczas czesania ramki
wykrycie. Ma to związek z wielkością obszaru, na którym grzebień piksele są
wymagane do wykrycia jako czesane, aby ramka została zadeklarowana jako czesana. Zobacz grzebień
opis parametrów, aby uzyskać więcej informacji. Możliwe wartości to dowolna liczba będąca potęgą
z 2 od 4 do 512.

Wartość domyślna to 16.

grzebień
Liczba przeczesanych pikseli w dowolnym z topornie by blokx bloki rozmiaru na
ramka, aby ramka została wykryta jako czesana. Dopóki ctresz kontroluje jak "widoczny" jest
czesanie musi być, to ustawienie kontroluje „ile” musi być czesania
zlokalizowany obszar (okno zdefiniowane przez blokx i topornie ustawienia) na ramie.
Minimalna wartość to 0, a maksymalna to „blocky x blockx” (w tym momencie żadne ramki nie będą
zostanie wykryty jako czesany). To ustawienie jest znane jako MI w słownictwie TFM/VFM.

Wartość domyślna to 80.

p/c/n/u/b znaczenie

p/c/n

Zakładamy następujący strumień telecine:

Pola górne: 1 2 2 3 4
Dolne pola: 1 2 3 4 4

Liczby odpowiadają ramce progresywnej, której dotyczą pola. Tutaj pierwsze dwa
klatki są progresywne, trzecia i czwarta są czesane i tak dalej.

Gdy "fieldmatch" jest skonfigurowany do uruchamiania dopasowywania od dołu (pole=dolny) Oto jak
ten strumień wejściowy zostaje przekształcony:

Strumień wejściowy:
T 1 2 2 3 4
B 1 2 3 4 4 <-- pasujące odniesienie

Mecze: ccnnc

Strumień wyjściowy:
T 1 2 3 4 4
B 1 2 3 4 4

W wyniku dopasowania pól widzimy, że niektóre ramki ulegają zduplikowaniu. Występować
kompletne odwrócone telecine, po tej operacji musisz polegać na filtrze dziesiątkującym.
Zobacz na przykład zdziesiątkować filtr.

Ta sama operacja jest teraz dopasowana z górnych pól (pole=Top) wygląda tak:

Strumień wejściowy:
T 1 2 2 3 4 <-- dopasowanie odniesienia
B 1 2 3 4 4

Dopasowania: ccppc

Strumień wyjściowy:
T 1 2 2 3 4
B 1 2 2 3 4

W tych przykładach możemy zobaczyć, co p, c i n oznaczać; zasadniczo odnoszą się do ramy i
pole o przeciwnej parzystości:

*<p pasuje do pola o przeciwnej parzystości w poprzedniej klatce>
*<c dopasowuje pole o przeciwnej parzystości w bieżącej ramce>
*<n dopasowuje pole o przeciwnej parzystości w następnej klatce>

ty/b

Połączenia u i b dopasowanie są nieco wyjątkowe w tym sensie, że pasują do siebie z przeciwnego punktu widzenia
flaga parzystości. W poniższych przykładach zakładamy, że aktualnie dopasowujemy 2.
rama (Góra:2, dół:2). Zgodnie z dopasowaniem, „x” jest umieszczany nad i pod każdym
dopasowane pola.

Z dopasowaniem dolnym (pole=dolny):

Dopasuj: cpnbu

xxxxx
Góra 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Dolny 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Ramki wyjściowe:
+2 (1) 2 2 2
+2 (2) 2 1 3

Z najlepszym dopasowaniem (pole=Top):

Dopasuj: cpnbu

xxxxx
Góra 1 2 2 1 2 2 1 2 2 1 2 2 1 2 2
Dolny 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
xxxxx

Ramki wyjściowe:
+2 (2) 2 1 2
+2 (1) 3 2 2

Przykłady

Prosty IVTC pierwszego strumienia telecine z górnego pola:

fieldmatch=order=tff:combmatch=brak, dziesiątkować

Zaawansowane IVTC z opcją awaryjną jadif dla ramek wciąż czesanych:

fieldmatch=order=tff:combmatch=pełny, yadif=deint=z przeplotem, dziesiątkować

polowe zamówienie
Przekształć kolejność pól wejściowego wideo.

Przyjmuje następujące parametry:

zamówienie
Kolejność pól wyjściowych. Prawidłowe wartości to tff najpierw dla górnego pola lub bff na dole
pierwsze pole.

Wartością domyślną jest tff.

Transformacja odbywa się poprzez przesunięcie zawartości obrazu w górę lub w dół o jedną linię, oraz
wypełnienie pozostałej linii odpowiednią treścią obrazu. Ta metoda jest spójna
z większością konwerterów kolejności transmisji w terenie.

Jeśli wejściowy sygnał wideo nie jest oznaczony jako z przeplotem lub jest już oznaczony jako
wymaganej kolejności pól wyjściowych, to ten filtr nie zmienia przychodzącego wideo.

Jest to bardzo przydatne podczas konwersji do lub z materiału PAL DV, który jest najpierw dolny.

Na przykład:

ffmpeg -i in.vob -vf "fieldorder=bff" out.dv

FIFO
Buforuj obrazy wejściowe i wysyłaj je na żądanie.

Jest to przydatne głównie podczas automatycznego wstawiania przez framework libavfilter.

Nie przyjmuje parametrów.

znajdź_prostowanie
Znajdź prostokątny obiekt

Akceptuje następujące opcje:

przedmiot
Ścieżka do pliku obrazu obiektu musi być w kolorze gray8.

próg
Próg wykrywania, domyślnie 0.5.

mipmapy
Liczba mipmap, domyślnie 3.

xmin, Ymin, xmaks., ymaks
Określa prostokąt, w którym należy szukać.

Przykłady

· Wygeneruj reprezentatywną paletę danego filmu za pomocą ffmpeg:

ffmpeg -i plik.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

okładka_rect
Zakryj prostokątny obiekt

Akceptuje następujące opcje:

pokrywa
Ścieżka pliku opcjonalnego obrazu okładki musi być w yuv420.

tryb
Ustaw tryb krycia.

Przyjmuje następujące wartości:

pokrywa
przykryj go dostarczonym obrazem!

plama
przykryj to przez interpolację otaczających pikseli

Wartość domyślna to plama.

Przykłady

· Wygeneruj reprezentatywną paletę danego filmu za pomocą ffmpeg:

ffmpeg -i plik.ts -vf find_rect=newref.pgm,cover_rect=cover.jpg:mode=cover new.mkv

format
Konwertuj wideo wejściowe na jeden z określonych formatów pikseli. Libavfilter spróbuje
wybierz taki, który jest odpowiedni jako dane wejściowe do następnego filtra.

Przyjmuje następujące parametry:

pix_fmts
Lista nazw formatów pikseli rozdzielonych znakiem „|”, np. „pix_fmts=yuv420p|monow|rgb24”.

Przykłady

· Konwertuj wideo wejściowe do yuv420p format

format=pix_fmts=yuv420p

Konwertuj wideo wejściowe na dowolny format z listy

format=pix_fmts=yuv420p|yuv444p|yuv410p

fps
Konwertuj wideo do określonej stałej szybkości klatek, duplikując lub upuszczając klatki jako
niezbędny.

Przyjmuje następujące parametry:

fps Żądana szybkość klatek wyjściowych. Wartość domyślna to 25.

okrągły
Metoda zaokrąglania.

Możliwe wartości to:

zero
zero zaokrąglone w kierunku 0

inf zaokrąglić od 0

na dół
okrągły w kierunku -nieskończoności

up okrągły w kierunku +nieskończoności

Blisko
zaokrąglić do najbliższego

Wartość domyślna to „blisko”.

czas rozpoczęcia
Załóżmy, że pierwszy PTS powinien mieć podaną wartość w sekundach. Pozwala to na
dopełnienie/przycinanie na początku strumienia. Domyślnie nie przyjmuje się żadnych założeń dotyczących
oczekiwany PTS pierwszej klatki, więc nie jest wykonywane żadne dopełnienie ani przycinanie. Na przykład to
można ustawić na 0, aby uzupełnić początek duplikatami pierwszej klatki, jeśli wideo
strumień rozpoczyna się po strumieniu audio lub przycina dowolne klatki z ujemnym PTS.

Alternatywnie opcje można określić jako płaski ciąg: fps[:okrągły].

Zobacz też ustawienia filtr.

Przykłady

· Typowe użycie w celu ustawienia fps na 25:

fps=fps=25

· Ustawia fps na 24, używając skrótu i ​​metody zaokrąglania, aby zaokrąglić do najbliższej:

fps=fps=film:okrągły=blisko

pakiet ramek
Spakuj dwa różne strumienie wideo w stereoskopowe wideo, włączając odpowiednie metadane
obsługiwane kodeki. Oba widoki powinny mieć ten sam rozmiar, liczbę klatek na sekundę i przetwarzanie
zatrzyma się, gdy skończy się krótszy film. Pamiętaj, że możesz wygodnie dostosować widok
właściwości z skala i fps filtry.

Przyjmuje następujące parametry:

format
Pożądany format pakowania. Obsługiwane wartości to:

Sbs Widoki są obok siebie (domyślnie).

Zakładka Widoki są jeden na drugim.

linie
Widoki są upakowane liniami.

kolumny
Widoki są upakowane po kolumnach.

sekwencja klatek
Widoki są czasowo przeplatane.

Kilka przykładów:

# Konwertuj lewy i prawy widok na wideo sekwencyjne
ffmpeg -i LEWO -i PRAWO -filter_complex framepack=frameseq WYJŚCIE

# Konwertuj widoki na wideo obok siebie z taką samą rozdzielczością wyjściową jak wejście
ffmpeg -i LEWO -i PRAWO -filter_complex [0:v]scale=w=iw/2[po lewej],[1:v]scale=w=iw/2[po prawej],[po lewej][po prawej]framepack=sbs WYJŚCIE

framerate
Zmień szybkość klatek, interpolując nowe klatki wyjściowe wideo z klatek źródłowych.

Ten filtr nie jest przeznaczony do prawidłowego działania z mediami z przeplotem. Jeśli sobie życzysz
zmienić liczbę klatek na sekundę mediów z przeplotem, przed tym musisz usunąć przeplot
filtruj i ponownie przeplataj po tym filtrze.

Poniżej znajduje się opis akceptowanych opcji.

fps Określ wyjściowe klatki na sekundę. Ta opcja może być również określona jako wartość
sam. Wartość domyślna to 50.

interp_start
Określ początek zakresu, w którym ramka wyjściowa zostanie utworzona jako liniowa
interpolacja dwóch klatek. Zakres to [0-255], domyślnie 15.

interp_end
Określ koniec zakresu, w którym ramka wyjściowa zostanie utworzona jako liniowa
interpolacja dwóch klatek. Zakres to [0-255], domyślnie 240.

scena
Określ poziom, na którym zmiana sceny jest wykrywana jako wartość od 0 do 100 do
wskazać nową scenę; niska wartość odzwierciedla małe prawdopodobieństwo, że bieżąca klatka będzie
wprowadzić nową scenę, a wyższa wartość oznacza, że ​​aktualna klatka jest bardziej prawdopodobna
być jednością. Wartość domyślna to 7.

Flagi
Określ flagi wpływające na proces filtrowania.

Dostępna wartość dla Flagi jest:

scena_zmiana_wykrywania, scd
Włącz wykrywanie zmiany sceny za pomocą wartości opcji scena. Ta flaga to
domyślnie włączone.

krok ramki
Wybierz jedną klatkę co N-tą klatkę.

Ten filtr akceptuje następującą opcję:

krok
Wybierz klatkę po każdym "kroku" klatek. Dozwolone wartości to dodatnie liczby całkowite wyższe
niż 0. Wartość domyślna to 1.

frei0r
Zastosuj efekt frei0r do wejściowego wideo.

Aby umożliwić kompilację tego filtra, musisz zainstalować nagłówek frei0r i
skonfiguruj FFmpeg z "--enable-frei0r".

Przyjmuje następujące parametry:

nazwa_filtra
Nazwa efektu frei0r do załadowania. Jeśli zmienna środowiskowa FREI0R_PATH is
zdefiniowany, efekt frei0r jest poszukiwany w każdym z katalogów określonych przez
lista rozdzielana dwukropkami w FREIOR_PATH. W przeciwnym razie standardowe ścieżki frei0r to
przeszukiwane, w tej kolejności: STRONA GŁÓWNA/.frei0r-1/lib/, /usr/local/lib/frei0r-1/,
/usr/lib/frei0r-1/.

parametry_filtra
Oddzielona '|' lista parametrów do przekazania do efektu frei0r.

Parametr efektu frei0r może być wartością logiczną (jego wartością jest „y” lub „n”), double,
kolor (określony jako R/G/B, Gdzie R, G, B to liczby zmiennoprzecinkowe z zakresu od 0.0 do
1.0 włącznie) lub przez opis koloru określony w sekcji „Kolor” w ffmpeg-
utils manual), stanowisko (określone jako X/Y, Gdzie X i Y są liczbami zmiennoprzecinkowymi)
i/lub ciąg.

Liczba i rodzaje parametrów zależą od załadowanego efektu. Jeśli parametr efektu to
nie określono, ustawiona jest wartość domyślna.

Przykłady

· Zastosuj efekt distortion0r, ustawiając dwa pierwsze podwójne parametry:

frei0r=nazwa_filtra=zniekształcenie0r:parametry_filtra=0.5|0.01

· Zastosuj efekt odległości kolorów, przyjmując kolor jako pierwszy parametr:

Frei0r = odległość koloru: 0.2/0.3/0.4
frei0r=odległość koloru:fiolet
frei0r = odległość koloru: 0x112233

· Zastosuj efekt perspektywy, określając górną lewą i górną prawą pozycję obrazu:

frei0r=perspective:0.2/0.2|0.8/0.2

Aby uzyskać więcej informacji, zobaczhttp://frei0r.dyne.org>

fspp
Zastosuj szybkie i proste przetwarzanie końcowe. Jest to szybsza wersja spp.

Dzieli (I)DCT na przejścia poziome/pionowe. W przeciwieństwie do prostego przetwarzania końcowego
filtr, jeden z nich jest wykonywany raz na blok, a nie na piksel. To pozwala na wiele
wyższa prędkość.

Filtr akceptuje następujące opcje:

jakość
Ustaw jakość. Ta opcja określa liczbę poziomów do uśredniania. Akceptuje i
liczba całkowita z zakresu 4-5. Wartość domyślna to 4.

qp Wymuś stały parametr kwantyzacji. Przyjmuje liczbę całkowitą z zakresu 0-63. Jeśli nie
ustawiony, filtr użyje QP ze strumienia wideo (jeśli jest dostępny).

jest determinacja.
Ustaw siłę filtra. Przyjmuje liczbę całkowitą z zakresu od -15 do 32. Niższe wartości oznaczają więcej
szczegóły, ale także więcej artefaktów, a wyższe wartości sprawiają, że obraz jest gładszy, ale także
bardziej rozmyte. Wartość domyślna to optymalna wartość 0 X PSNR.

użyj_bframe_qp
Włącz korzystanie z QP z ramek B, jeśli jest ustawione na 1. Użycie tej opcji może spowodować:
migotanie, ponieważ ramki B mają często większe QP. Wartość domyślna to 0 (nie włączone).

geq
Filtr akceptuje następujące opcje:

wyraż_lumn, lum
Ustaw wyrażenie luminancji.

cb_wyr, cb
Ustaw ekspresję chrominance blue.

cr_wyr, cr
Ustaw wyraz czerwieni chrominancji.

alfa_expr, a
Ustaw wyrażenie alfa.

wyrażenie_czerwone, r
Ustaw czerwony wyraz.

zielone_wyrażenie, g
Ustaw zielone wyrażenie.

niebieskie_wyrażenie, b
Ustaw niebieski wyraz.

Przestrzeń kolorów jest wybierana zgodnie z określonymi opcjami. Jeśli jeden z wyraż_lumn,
cb_wyrlub cr_wyr określono opcje, filtr automatycznie wybierze YCbCr
przestrzeń kolorów. Jeśli jeden z wyrażenie_czerwone, zielone_wyrażenielub niebieski_wyr opcje są określone, to będzie
wybierz przestrzeń kolorów RGB.

Jeśli jedno z wyrażeń chrominancji nie jest zdefiniowane, wraca do drugiego. Jeśli nie
określone wyrażenie alfa zostanie ocenione jako nieprzezroczysta wartość. Jeśli żaden z chrominancji
wyrażenia są określone, będą one oceniane do wyrażenia luminancji.

Wyrażenia mogą wykorzystywać następujące zmienne i funkcje:

N Numer sekwencyjny przefiltrowanej ramki, zaczynając od 0.

X
Y Współrzędne bieżącej próbki.

W
H Szerokość i wysokość obrazu.

SW
SH Skala szerokości i wysokości w zależności od aktualnie filtrowanej płaszczyzny. To jest stosunek
między odpowiednią liczbą pikseli w płaszczyźnie luma a bieżącą liczbą pikseli. Np
dla YUV4:2:0 wartości to "1,1" dla płaszczyzny luma i "0.5,0.5" dla płaszczyzn chroma.

T Czas bieżącej klatki wyrażony w sekundach.

p(x, y)
Zwróć wartość piksela w lokalizacji (x,y) aktualnej płaszczyzny.

lum(x, y)
Zwróć wartość piksela w lokalizacji (x,y) płaszczyzny luminancji.

cb(x, y)
Zwróć wartość piksela w lokalizacji (x,y) płaszczyzny barwy niebieskiej różnicy.
Zwróć 0, jeśli nie ma takiego samolotu.

kr(x, y)
Zwróć wartość piksela w lokalizacji (x,y) płaszczyzny chromatycznej różnicy czerwieni.
Zwróć 0, jeśli nie ma takiego samolotu.

r(x, y)
g(x, y)
b(x, y)
Zwróć wartość piksela w lokalizacji (x,y) składnika czerwonego/zielonego/niebieskiego.
Zwróć 0, jeśli nie ma takiego składnika.

alfa(x, y)
Zwróć wartość piksela w lokalizacji (x,y) samolotu alfa. Zwróć 0, jeśli istnieje
nie ma takiego samolotu.

Dla funkcji, jeśli x i y znajdują się poza obszarem, wartość zostanie automatycznie przycięta do
bliższa krawędź.

Przykłady

· Odwróć obraz w poziomie:

geq=p(WX\,Y)

· Generowanie dwuwymiarowej fali sinusoidalnej o kącie „PI/3” i długości fali 100 pikseli:

geq=128 + 100*sin(2*(PI/100)*(cos(PI/3)*(X-50*T) + sin(PI/3)*Y)):128:128

· Wygeneruj fantazyjne, enigmatyczne ruchome światło:

nullsrc=s=256x256,geq=przypadkowy(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

· Generowanie szybkiego efektu wytłoczenia:

format=szary,geq=lum_expr='(p(X,Y)+(256-p(X-4,Y-4)))/2'

· Modyfikuj komponenty RGB w zależności od pozycji piksela:

geq=r='X/W*r(X,Y)':g='(1-X/W)*g(X,Y)':b='(HY)/H*b(X,Y )”

· Utwórz gradient promieniowy o takim samym rozmiarze jak dane wejściowe (zobacz także winieta
filtr):

geq=lum=255*gauss((X/W-0.5)*3)*gauss((Y/H-0.5)*3)/gaus(0) /gaus(0), format=szary

· Utwórz gradient liniowy, który będzie używany jako maska ​​dla innego filtra, a następnie skomponuj za pomocą
narzuta. W tym przykładzie wideo będzie stopniowo stawało się coraz bardziej rozmyte od góry do
dół osi y zdefiniowany przez gradient liniowy:

ffmpeg -i input.mp4 -filter_complex "geq=lum=255*(Y/H),format=gray[grad];[0:v]boxblur=4[blur];[blur][grad]alphamerge[alpha] ;[0:v][alpha]overlay" wyjście.mp4

Gradfun
Napraw artefakty pasków, które czasami są wprowadzane w prawie płaskie regiony przez:
obcięcie do 8-bitowej głębi kolorów. Interpoluj gradienty, które powinny iść tam, gdzie wstęgi
są i roztrząsaj je.

Jest przeznaczony wyłącznie do odtwarzania. Nie używaj go przed kompresją stratną, ponieważ
kompresja ma tendencję do utraty rozterek i przywracania pasm.

Przyjmuje następujące parametry:

jest determinacja.
Maksymalna wartość, o jaką filtr zmieni jeden piksel. To jest również
próg wykrywania prawie płaskich obszarów. Dopuszczalne wartości wahają się od 51 do 64;
domyślna wartość to 1.2. Wartości spoza zakresu zostaną przycięte do prawidłowego zakresu.

promień
Okolica, do której należy dopasować nachylenie. Większy promień zapewnia płynniejsze gradienty,
ale także zapobiega modyfikowaniu przez filtr pikseli w pobliżu szczegółowych regionów.
Dopuszczalne wartości to 8-32; domyślna wartość to 16. Wartości spoza zakresu będą
przycięte do prawidłowego zakresu.

Alternatywnie opcje można określić jako płaski ciąg: jest determinacja.[:promień]

Przykłady

· Zastosuj filtr o sile 3.5 i promieniu 8:

gradfun=3.5:8

· Określ promień, pomijając siłę (która powróci do wartości domyślnej):

gradfun=promień=8

halucynacja
Zastosuj Hald CLUT do strumienia wideo.

Pierwsze wejście to strumień wideo do przetworzenia, a drugie to Hald CLUT. Hald
Wejście CLUT może być prostym obrazem lub pełnym strumieniem wideo.

Filtr akceptuje następujące opcje:

najkrótsza
Wymuś zakończenie po zakończeniu najkrótszego wejścia. Wartość domyślna to 0.

powtarzać ostatni
Kontynuuj stosowanie ostatniej CLUT po zakończeniu strumienia. Wartość 0 wyłącza
filtr po osiągnięciu ostatniej ramki CLUT. Wartość domyślna to 1.

"haldclut" ma również te same opcje interpolacji co lut3d (oba filtry mają to samo
wewnętrzne).

Więcej informacji na temat Hald CLUT można znaleźć na stronie internetowej Eskila Steenberga (Hald CLUT
autor) whttp://www.quelsolaar.com/technology/clut.html>.

Workflow przykłady

Zatrzymaj strumień wideo CLUT

Wygeneruj strumień tożsamości Hald CLUT zmieniony z różnymi efektami:

ffmpeg -f lavfi -i B =8 -vf "odcień=H=2*PI*t:s=sin(2*PI*t)+1, krzywe=cross_process" -t 10 -c:v ffv1 clut.nut

Uwaga: upewnij się, że używasz bezstratnego kodeka.

Następnie użyj go z "haldclut", aby zastosować go w jakimś losowym strumieniu:

ffmpeg -f lavfi -i mandelbrot -i clut.nut -filter_complex '[0][1] haldclut' -t 20 mandelclut.mkv

Hald CLUT zostanie zastosowany do pierwszych 10 sekund (czas trwania clut.nakrętka), a później
najnowszy obraz tego strumienia CLUT zostanie zastosowany do pozostałych klatek
strumień „mandelbrota”.

Hald CLUT z podglądem

Hald CLUT ma być kwadratowym obrazem „Level*Level*Level” autorstwa
Piksele „Poziom*Poziom*Poziom”. Dla danego Hald CLUT, FFmpeg wybierze największą możliwą
kwadrat zaczynający się w lewym górnym rogu obrazu. Pozostałe piksele wypełniające (dolne lub
prawo) zostaną zignorowane. Ten obszar może być użyty do dodania podglądu Hald CLUT.

Zazwyczaj następujące wygenerowane Hald CLUT będą obsługiwane przez filtr „haldclut”:

ffmpeg -f lavfi -i B =8 -vf "
pad=iw+320 [wypełniony_clut];
smptebars=s=320x256, podziel [a][b];
[padded_clut][a] overlay=W-320:h, curves=color_negative [main];
[main][b] overlay=W-320" -frames:v 1 clut.png

Zawiera oryginał i podgląd efektu CLUT: paski kolorów SMPTE są
wyświetlane w prawym górnym rogu i poniżej tych samych pasków kolorów przetworzonych przez zmiany kolorów.

Następnie efekt tego Hald CLUT można zwizualizować za pomocą:

ffplay input.mkv -vf "movie=clut.png, [w] haldclut"

hflip
Odwróć wejście wideo w poziomie.

Na przykład, aby odwrócić wideo w poziomie za pomocą ffmpeg:

ffmpeg -i in.avi -vf "hflip" out.avi

histeq
Ten filtr stosuje globalne wyrównanie histogramu kolorów na klatkę.

Może być używany do poprawiania wideo, które ma skompresowany zakres intensywności pikseli. ten
filtr redystrybuuje intensywność pikseli, aby wyrównać ich rozkład w całym
zakres intensywności. Może być postrzegany jako „automatycznie dostosowujący się filtr kontrastu”. Ten
Filtr jest przydatny tylko do korygowania zdegradowanego lub słabo przechwyconego źródła wideo.

Filtr akceptuje następujące opcje:

jest determinacja.
Określ ilość wyrównania do zastosowania. Gdy siła jest zmniejszona,
rozkład intensywności pikseli coraz bardziej zbliża się do klatki wejściowej.
Wartość musi być liczbą zmiennoprzecinkową z zakresu [0,1] i domyślnie wynosi 0.200.

intensywność
Ustaw maksymalną intensywność, która może generować i skalować wartości wyjściowe
odpowiednio. Siła powinna być ustawiona zgodnie z potrzebami, a następnie intensywność może być
ograniczone w razie potrzeby, aby uniknąć wymywania. Wartość musi być liczbą zmiennoprzecinkową z zakresu
[0,1] i domyślnie 0.210.

przeciwdziałanie opaskowaniu
Ustaw poziom pasmowania. Jeśli jest włączony, filtr będzie losowo zmieniać luminancję
piksele wyjściowe o niewielką ilość, aby uniknąć prążkowania histogramu. Możliwe wartości to
„brak”, „słaby” lub „silny”. Domyślnie jest to „brak”.

histogram
Oblicz i narysuj histogram rozkładu kolorów dla wejściowego wideo.

Obliczony histogram jest reprezentacją rozkładu składowej koloru w
obraz.

Filtr akceptuje następujące opcje:

tryb
Ustaw tryb histogramu.

Przyjmuje następujące wartości:

poziomy
Standardowy histogram przedstawiający rozkład składników koloru na obrazie.
Wyświetla wykres kolorów dla każdego składnika koloru. Pokazuje rozkład Y, U, V,
Składowe A lub R, G, B, w zależności od formatu wejściowego, w bieżącej ramce. Poniżej
każdy wykres pokazuje miernik skali składowej koloru.

kolor
Wyświetla wartości chrominancji (rozmieszczenie kolorów U/V) na dwuwymiarowym wykresie (czyli
nazywany wektoroskopem). Im jaśniejszy piksel w wektoroskopie, tym więcej pikseli
ramka wejściowa odpowiada temu pikselowi (tj. więcej pikseli ma tę barwę
wartość). Składnik V jest wyświetlany na osi poziomej (X), po lewej stronie
bok to V = 0, a skrajna prawa strona to V = 255. Składnik U to
wyświetlane na osi pionowej (Y), przy czym góra reprezentuje U = 0, a dół
reprezentujący U = 255.

Pozycja białego piksela na wykresie odpowiada wartości chrominancji a
piksel klipu wejściowego. Wykres można zatem wykorzystać do odczytania odcienia (kolor
smak) i nasycenie (przewaga barwy w kolorze). Jak odcień
zmienia kolor, porusza się po kwadracie. Na środku placu
nasycenie wynosi zero, co oznacza, że ​​odpowiedni piksel nie ma koloru. Jeśli
zwiększa się ilość określonego koloru (pozostawiając pozostałe kolory bez zmian)
nasycenie wzrasta, a wskaźnik przesuwa się w kierunku krawędzi kwadratu.

color2
Wartości chrominancji w wektoroskopie, podobne do „koloru”, ale rzeczywiste wartości chrominancji to
wystawiany.

kształt fali
Wykres składowych kolorów na wiersz/kolumnę. W trybie wiersza wykres po lewej stronie
reprezentuje wartość składową koloru 0, a prawa strona reprezentuje wartość = 255. In
w trybie kolumny, górna strona reprezentuje wartość składowej koloru = 0, a dolna strona
reprezentuje wartość = 255.

Wartość domyślna to „poziomy”.

poziom_wysokość
Ustaw wysokość poziomu w "poziomach". Wartość domyślna to 200. Dozwolony zakres to [50, 2048].

skala_wysokość
Ustaw wysokość skali kolorów w "poziomach". Wartość domyślna to 12. Dozwolony zakres to [0, 40].

krok
Ustaw krok dla trybu "przebiegu". Mniejsze wartości są przydatne, aby dowiedzieć się, ile wartości
ta sama luminancja jest rozłożona na wejściowe wiersze/kolumny. Wartość domyślna to 10.
Dozwolony zasięg to [1, 255].

tryb_falowy
Ustaw tryb dla "przebiegu". Może być „wierszem” lub „kolumną”. Wartość domyślna to „wiersz”.

lustro_fali
Ustaw tryb dublowania dla "przebiegu". 0 oznacza bez dublowania, 1 oznacza dublowanie. W lustrzanym odbiciu
tryb, wyższe wartości będą reprezentowane po lewej stronie dla trybu „wiersz” i na górze
dla trybu „kolumny”. Wartość domyślna to 0 (bez dublowania).

Tryb wyświetlania
Ustaw tryb wyświetlania dla "przebiegu" i "poziomów". Przyjmuje następujące wartości:

parada
Wyświetl osobny wykres dla składowych kolorów obok siebie w przebiegu „wierszowym”
lub jeden pod drugim w trybie „kolumnowym” przebiegu dla histogramu „przebiegu”
tryb. W trybie histogramu „poziomy”, wykresy składowe dla poszczególnych kolorów znajdują się poniżej
wzajemnie.

Korzystanie z tego trybu wyświetlania w trybie histogramu „przebiegu” ułatwia dostrzeżenie koloru
rzuca światła i cienie obrazu, porównując kontury
górny i dolny wykres każdego przebiegu. Ponieważ biele, szarości i czernie są
charakteryzujący się dokładnie równymi ilościami czerwonych, zielonych i niebieskich, neutralnych obszarów
obraz powinien pokazywać trzy przebiegi o mniej więcej równej szerokości/wysokości. Jeśli nie,
korekta jest łatwa do wykonania dzięki regulacji poziomu trzech przebiegów.

narzuta
Przedstawia informacje identyczne jak w „paradzie”, z tym wyjątkiem, że wykresy
reprezentujące składniki kolorów nakładają się bezpośrednio na siebie.

Ten tryb wyświetlania w trybie histogramu „przebiegu” ułatwia dostrzeżenie względne
różnice lub podobieństwa w nakładających się obszarach składowych koloru, które są
powinny być identyczne, jak neutralne biele, szarości lub czernie.

Domyślnie jest to „parada”.

tryb_poziomów
Ustaw tryb dla „poziomów”. Może być „liniowy” lub „logarytmiczny”. Wartość domyślna to „liniowa”.

składniki
Ustaw, jakie składniki kolorów mają być wyświetlane dla „poziomów” trybu. Wartość domyślna to 7.

Przykłady

· Oblicz i narysuj histogram:

ffplay -i wejście -vf histogram

hqdn3d
Jest to filtr odszumiający 3D o wysokiej precyzji/jakości. Ma na celu redukcję szumów obrazu,
tworzenie płynnych obrazów i robienie naprawdę nieruchomych obrazów. Powinien wzmocnić
ściśliwość.

Akceptuje następujące parametry opcjonalne:

luma_przestrzenna
Nieujemna liczba zmiennoprzecinkowa określająca przestrzenną siłę światła. To
domyślnie 4.0.

chroma_przestrzenny
Nieujemna liczba zmiennoprzecinkowa, która określa przestrzenną siłę nasycenia barw. To
domyślnie 3.0*luma_przestrzenna/ 4.0.

luma_tmp
Liczba zmiennoprzecinkowa określająca czasową siłę luma. Domyślnie:
6.0 *luma_przestrzenna/ 4.0.

chroma_tmp
Liczba zmiennoprzecinkowa, która określa czasową siłę barwy. Domyślnie:
luma_tmp*chroma_przestrzenny/luma_przestrzenna.

hqx
Zastosuj wysokiej jakości filtr powiększenia przeznaczony do grafiki pikselowej. Ten filtr był
pierwotnie stworzony przez Maxima Stepina.

Akceptuje następującą opcję:

n Ustaw wymiar skalowania: 2 dla „hq2x”, 3 dla „hq3x” i 4 dla „hq4x”. Wartość domyślna to 3.

stos
Ułóż wideo wejściowe w poziomie.

Wszystkie strumienie muszą mieć ten sam format pikseli i tę samą wysokość.

Pamiętaj, że ten filtr jest szybszy niż używanie narzuta i ścieżka filtr, aby utworzyć ten sam wynik.

Filtr akceptuje następującą opcję:

nb_wejść
Ustaw liczbę strumieni wejściowych. Wartość domyślna to 2.

odcień
Zmodyfikuj odcień i/lub nasycenie wejścia.

Przyjmuje następujące parametry:

h Określ kąt barwy jako liczbę stopni. Przyjmuje wyrażenie i domyślnie
na „0”.

s Określ nasycenie w zakresie [-10,10]. Akceptuje wyrażenie i domyślnie
„1”.

H Określ kąt barwy jako liczbę radianów. Przyjmuje wyrażenie i domyślnie
na „0”.

b Określ jasność w zakresie [-10,10]. Akceptuje wyrażenie i domyślnie
„0”.

h i H wykluczają się wzajemnie i nie można ich określić w tym samym czasie.

Połączenia b, h, H i s wartości opcji to wyrażenia zawierające następujące stałe:

n liczba klatek klatki wejściowej od 0

pkt znacznik czasu prezentacji ramki wejściowej wyrażony w jednostkach podstawy czasu

r liczba klatek na sekundę wejściowego wideo, NAN, jeśli liczba klatek na sekundę wejściowa jest nieznana

t znacznik czasu wyrażony w sekundach, NAN, jeśli wejściowy znacznik czasu jest nieznany

tb podstawa czasu wejściowego wideo

Przykłady

· Ustaw odcień na 90 stopni, a nasycenie na 1.0:

barwa=h=90:s=1

· To samo polecenie, ale wyrażające odcień w radianach:

barwa=H=PI/2:s=1

· Obróć odcień i spraw, aby nasycenie zmieniało się między 0 a 2 w ciągu 1 sekundy:

hue="H=2*PI*t: s=sin(2*PI*t)+1"

· Zastosuj 3-sekundowy efekt zanikania nasycenia, zaczynając od 0:

hue="s=min(t/3\,1)"

Ogólne wyrażenie zanikania można zapisać jako:

hue="s=min(0\, max((t-START)/CZAS TRWANIA\, 1))"

· Zastosuj 3-sekundowy efekt zanikania nasycenia, zaczynając od 5 sekund:

hue="s=max(0\, min(1\, (8-t)/3))"

Ogólne wyrażenie zanikania można zapisać jako:

hue="s=max(0\, min(1\, (POCZĄTEK+CZAS-t)/CZAS TRWANIA))"

Polecenia

Ten filtr obsługuje następujące polecenia:

b
s
h
H Zmodyfikuj odcień i/lub nasycenie i/lub jasność wejściowego wideo. ten
polecenie akceptuje tę samą składnię odpowiedniej opcji.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

ideta
Wykryj typ przeplotu wideo.

Ten filtr próbuje wykryć, czy klatki wejściowe są z przeplotem, progresywne, górne czy dolne
pierwsze pole. Będzie również próbował wykryć pola, które powtarzają się między sąsiednimi ramkami
(znak telecine).

Wykrywanie pojedynczej ramki uwzględnia tylko bezpośrednio przylegające ramki podczas klasyfikowania każdej z nich
ramka. Wykrywanie wielu ramek obejmuje historię klasyfikacji poprzednich
ramki.

Filtr zarejestruje te wartości metadanych:

pojedyncza.bieżąca_ramka
Wykryty typ bieżącej ramki przy użyciu wykrywania pojedynczej ramki. Jedno z: ``tff'' (na górze
najpierw pole), „bff” (najpierw dolne pole), „progresywne” lub „nieokreślone”

singiel.tff
Skumulowana liczba ramek wykrytych jako pierwsze w górnym polu przy użyciu wykrywania pojedynczej ramki.

wiele.tff
Skumulowana liczba ramek wykrytych jako pierwsze w górnym polu przy użyciu wielu ramek
wykrycie.

singiel.bff
Skumulowana liczba ramek wykrytych jako dolne pole jako pierwsze przy użyciu pojedynczej ramki
wykrycie.

wiele.bieżąca_ramka
Wykryty typ bieżącej ramki przy użyciu wykrywania wielu ramek. Jedno z: ``tff'' (na górze
najpierw pole), „bff” (najpierw dolne pole), „progresywne” lub „nieokreślone”

wiele.bff
Łączna liczba ramek wykrytych jako dolne pole jako pierwsze przy użyciu wielu ramek
wykrycie.

pojedynczy.postępowy
Skumulowana liczba ramek wykrytych jako progresywne przy użyciu wykrywania pojedynczej ramki.

wielokrotny.postępowy
Skumulowana liczba ramek wykrytych jako progresywne przy użyciu wykrywania wielu ramek.

pojedynczy.nieokreślony
Skumulowana liczba ramek, których nie można było sklasyfikować za pomocą wykrywania pojedynczych ramek.

wiele.nieokreślone
Łączna liczba ramek, których nie można było sklasyfikować za pomocą wielu ramek
wykrycie.

powtórzona.bieżąca_klatka
Które pole w bieżącej ramce jest powtarzane od ostatniego. Jedno z „żadnych”,
„góra” lub „dół”.

powtórzony.ani
Łączna liczba ramek bez powtarzającego się pola.

powtarzane.do góry
Skumulowana liczba klatek z górnym polem powtórzonym od góry poprzedniej klatki
pole.

powtórzony.dolny
Łączna liczba ramek z dolnym polem powtórzonym z poprzedniej ramki
dolne pole.

Filtr akceptuje następujące opcje:

intl_thres
Ustaw próg przeplotu.

prog_thres
Ustaw progresywny próg.

powtórzeń
Próg dla wielokrotnego wykrywania pola.

pół życia
Liczba klatek, po których udział danej klatki w statystykach zmniejsza się o połowę
(tj. wnosi tylko 0.5 do swojej klasyfikacji). Domyślna wartość 0 oznacza, że
wszystkie widoczne klatki otrzymują pełną wagę 1.0 na zawsze.

analizuj_flagę_przeplataną
Jeśli to nie jest 0, idet użyje określonej liczby ramek, aby określić, czy
flaga z przeplotem jest dokładna, nie zlicza nieokreślonych klatek. Jeśli flaga
okaże się, że jest dokładny, zostanie użyty bez dalszych obliczeń, jeśli jest
okaże się, że jest niedokładny, zostanie usunięty bez dalszych obliczeń. Ten
umożliwia wstawienie filtra idet jako niskiej metody obliczeniowej do czyszczenia
flaga z przeplotem

il
Pola Usuń przeplot lub przeplot.

Filtr ten umożliwia przetwarzanie pól obrazów z przeplotem bez ich usuwania.
Deinterleaving dzieli klatkę wejściową na 2 pola (tzw. półobrazy). Nieparzyste linie
są przenoszone do górnej połowy obrazu wyjściowego, równe linie do dolnej połowy. Możesz
przetwarzać (filtrować) je niezależnie, a następnie ponownie je przeplatać.

Filtr akceptuje następujące opcje:

tryb luma, l
tryb_koloru, c
tryb_alfa, a
Dostępne wartości dla tryb luminancji, tryb_koloru i tryb_alfa należą:

Żaden
Nic nie robić.

rozplatać, d
Rozwiąż pola, umieszczając jedno nad drugim.

przekładać, i
Pola przeplotu. Odwróć efekt rozplatania.

Wartość domyślna to „brak”.

luma_swap, ls
zamiana_kolorów, cs
zamiana_alfa, as
Zamień pola luma/chroma/alpha. Wymieniaj linie parzyste i nieparzyste. Wartość domyślna to 0.

nadmuchać
Zastosuj efekt nadmuchania do filmu.

Ten filtr zastępuje piksel przez miejscowy(3x3) średnia biorąc pod uwagę tylko
wartości wyższe niż piksel.

Akceptuje następujące opcje:

próg 0
próg 1
próg 2
próg 3
Ogranicz maksymalną zmianę dla każdej płaszczyzny, domyślnie 65535. Jeśli 0, samolot pozostanie
bez zmian.

przeplatać
Prosty filtr z przeplotem z zawartości progresywnej. To przeplata górną (lub dolną)
linie z nieparzystych klatek z dolnymi (lub górnymi) liniami z parzystych klatek, zmniejszające o połowę szybkość odtwarzania
i zachowanie wysokości obrazu.

Oryginalna oryginalna nowa ramka
Ramka „j” Ramka „j+1” (tff)
===================== ===================
Linia 0 --------------------> Ramka 'j' Linia 0
Wiersz 1 Wiersz 1 ----> Ramka 'j+1' Wiersz 1
Wiersz 2 ------------------> Ramka 'j' Wiersz 2
Wiersz 3 Wiersz 3 ----> Ramka 'j+1' Wiersz 3
... ... ...
Nowa ramka + 1 zostanie wygenerowana przez ramkę „j+2” i ramkę „j+3” i tak dalej

Akceptuje następujące parametry opcjonalne:

skanować
Określa, czy klatka z przeplotem jest pobierana z parzystego (tff - domyślnie) czy
nieparzyste (bff) linie ramki progresywnej.

dolnoprzepustowy
Włącz (domyślnie) lub wyłącz pionowy filtr dolnoprzepustowy, aby uniknąć przeplotu Twittera
i zredukować wzory mory.

Kerndeint
Usuń przeplot wideo wejściowego, stosując adaptacyjne usuwanie przeplotu jądra Donalda Grafta. Pracować nad
przeplatane części wideo w celu utworzenia klatek progresywnych.

Poniżej znajduje się opis akceptowanych parametrów.

namłócić
Ustaw próg, który wpływa na tolerancję filtra podczas określania, czy piksel
wiersz musi zostać przetworzony. Musi to być liczba całkowita z zakresu [0,255] i domyślnie 10.
Wartość 0 spowoduje zastosowanie procesu na każdym pikselu.

mapa Pomaluj piksele przekraczające wartość progową na kolor biały, jeśli jest ustawiony na 1. Wartość domyślna to 0.

zamówienie
Ustaw kolejność pól. Zamień pola, jeśli jest ustawione na 1, pozostaw pola bez zmian, jeśli 0. Wartość domyślna to 0.

ostry
Włącz dodatkowe wyostrzanie, jeśli jest ustawione na 1. Wartość domyślna to 0.

dwukierunkowy
Włącz wyostrzanie dwukierunkowe, jeśli jest ustawione na 1. Wartość domyślna to 0.

Przykłady

· Zastosuj wartości domyślne:

kerndeint=thresh=10:map=0:order=0:sharp=0:twoway=0

· Włącz dodatkowe ostrzenie:

kerndeint=ostry=1

· Maluj przetworzone piksele na biało:

kerndeint=mapa=1

korekcja soczewki
Prawidłowe zniekształcenie soczewki promieniowej

Filtr ten może być używany do korekcji zniekształceń promieniowych, które mogą wynikać z użycia
obiektywy szerokokątne, a tym samym ponownie korygują obraz. Aby znaleźć odpowiednie parametry można:
korzystaj z narzędzi dostępnych np. w ramach opencv lub po prostu metodą prób i błędów. Używać
opencv użyj próbki kalibracyjnej (pod sample/cpp) ze źródeł opencv i wyodrębnij
współczynniki k1 i k2 z otrzymanej macierzy.

Zwróć uwagę, że faktycznie ten sam filtr jest dostępny w narzędziach open-source Krita i
Digikam z projektu KDE.

W przeciwieństwie do winieta filtr, który może być również używany do kompensacji błędów obiektywu, to
filtr koryguje zniekształcenia obrazu, natomiast winieta koryguje jasność
dystrybucji, więc w niektórych przypadkach możesz chcieć używać obu filtrów razem, chociaż
będzie musiał zadbać o zamówienie, czyli czy winietowanie należy zastosować przed, czy
po korekcji obiektywu.

Opcje

Filtr akceptuje następujące opcje:

cx Względna współrzędna x ogniska obrazu, a tym samym środka
zniekształcenie. Wartość ta ma zakres [0,1] i jest wyrażona jako ułamki obrazu
szerokość.

cy Względna współrzędna y ogniska obrazu, a tym samym środka
zniekształcenie. Wartość ta ma zakres [0,1] i jest wyrażona jako ułamki obrazu
wysokość.

k1 Współczynnik kwadratowego członu korekcyjnego. 0.5 oznacza brak korekty.

k2 Współczynnik podwójnej kwadratowej składowej korekcji. 0.5 oznacza brak korekty.

Formuła generująca korektę to:

r_źr = r_tgt * (1 + k1 * (r_tgt / r_0)^2 + k2 * (r_tgt / r_0)^4)

gdzie r_0 jest połową przekątnej obrazu i r_źr i r_tgt są odległości od
punkt centralny odpowiednio w obrazie źródłowym i docelowym.

lut3d
Zastosuj tablicę 3D LUT do wejściowego wideo.

Filtr akceptuje następujące opcje:

filet
Ustaw nazwę pliku 3D LUT.

Obecnie obsługiwane formaty:

3dl Po efektach

kostka
Irydy

DAT DaVinci

m3d Pandora

interp
Wybierz tryb interpolacji.

Dostępne wartości to:

najbliższy
Użyj wartości z najbliższego zdefiniowanego punktu.

trójliniowy
Interpoluj wartości używając 8 punktów definiujących sześcian.

czworościenny
Interpoluj wartości za pomocą czworościanu.

lut, lutrgb, lutyuv
Oblicz tabelę przeglądową w celu powiązania wartości wejściowej każdego składnika piksela z wartością wyjściową,
i zastosuj go do wejściowego wideo.

lutyuv stosuje tabelę przeglądową do wejściowego wideo YUV, lutrgb do wejścia wideo RGB.

Filtry te akceptują następujące parametry:

c0 ustaw wyrażenie pierwszego składnika piksela

c1 ustaw wyrażenie drugiego składnika piksela

c2 ustaw wyrażenie składowe trzeciego piksela

c3 ustaw wyrażenie czwartego składnika piksela, odpowiada składnikowi alfa

r ustaw czerwone wyrażenie składowe

g ustaw zielone wyrażenie składowe

b ustaw niebieskie wyrażenie składowe

a wyrażenie składnika alfa

y ustaw Y/wyrażenie składowej luminancji

u ustaw wyrażenie składowe U/Cb

v ustaw wyrażenie składowe V/Cr

Każdy z nich określa wyrażenie używane do obliczania tabeli przeglądowej dla
odpowiednie wartości składowych pikseli.

Dokładny składnik powiązany z każdym z c* opcje zależą od formatu na wejściu.

Połączenia LUT filtr wymaga wejścia w formacie YUV lub RGB, lutrgb wymaga RGB
formaty pikseli na wejściu i lutyuv wymaga YUV.

Wyrażenia mogą zawierać następujące stałe i funkcje:

w
h Wejściowa szerokość i wysokość.

val Wartość wejściowa składnika pikselowego.

klipwal
Wartość wejściowa przycięta do minwal-wartość maksymalna zakres.

wartość maksymalna
Maksymalna wartość składnika pikselowego.

minwal
Minimalna wartość składnika pikselowego.

negatywna
Zanegowana wartość dla wartości składnika piksela, przycięta do minwal-wartość maksymalna zasięg;
odpowiada wyrażeniu „maxval-clipval+minval”.

klip (val)
Obliczona wartość w val, przypięty do minwal-wartość maksymalna zakres.

gamma (gamma)
Obliczona wartość korekcji gamma wartości składnika piksela, przycięta do
minwal-wartość maksymalna zakres. Odpowiada wyrażeniu
"pow((clipval-minval)/(maxval-minval)\,gamma)*(maks.-min.)+min."

Wszystkie wyrażenia domyślnie mają wartość „val”.

Przykłady

· Negacja wejścia wideo:

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"

Powyższe jest takie samo jak:

lutrgb="r=wartość ujemna:g=wartość ujemna:b=wartość ujemna"
lutyuv="y=negval:u=negval:v=negval"

· Ujemna luminancja:

lutyuv=y=ujemne

· Usuń komponenty chrominancji, zmieniając wideo w obraz w odcieniach szarości:

lutyuv="u=128:v=128"

· Zastosuj efekt wypalania lumy:

lutyuv="y=2*wartość"

· Usuń zielone i niebieskie komponenty:

lutrgb="g=0:b=0"

· Ustaw stałą wartość kanału alfa na wejściu:

format=rgba,lutrgb=a="maxval-minval/2"

· Prawidłowe gamma luminancji o współczynnik 0.5:

lutyuv=y=gammaval(0.5)

· Odrzuć najmniej znaczące fragmenty lumy:

lutyuv=y='biti(val, 128+64+32)'

samoloty scalone
Scal komponenty kanału kolorów z kilku strumieni wideo.

Filtr akceptuje do 4 strumieni wejściowych i łączy wybrane płaszczyzny wejściowe z wyjściem
filmiku.

Ten filtr akceptuje następujące opcje:

mapowanie
Ustaw wejście na mapowanie płaszczyzny wyjściowej. Wartość domyślna to 0.

Mapowania są określone jako bitmapa. Powinna być określona jako liczba szesnastkowa
w postaci 0xAa[Bb[Cc[Dd]]]. „Aa” opisuje odwzorowanie pierwszej płaszczyzny
strumień wyjściowy. „A” ustawia numer używanego strumienia wejściowego (od 0 do 3), a „a”
numer płaszczyzny odpowiedniego wejścia do użycia (od 0 do 3). Reszta
mapowania są podobne, „Bb” opisuje mapowanie dla drugiej płaszczyzny strumienia wyjściowego,
„Cc” opisuje mapowanie dla trzeciej płaszczyzny strumienia wyjściowego, a „Dd” opisuje
mapowanie dla czwartej płaszczyzny strumienia wyjściowego.

format
Ustaw format wyjściowy w pikselach. Domyślnie jest to „yuva444p”.

Przykłady

· Połącz trzy szare strumienie wideo o tej samej szerokości i wysokości w jeden strumień wideo:

[a0][a1][a2]mergeplanes=0x001020:yuv444p

· Scal pierwszy strumień yuv1p i drugi szary strumień wideo w strumień wideo yuva444p:

[a0][a1]mergeplanes=0x00010210:yuva444p

· Zamień samolot Y i A w strumieniu yuva444p:

format=yuva444p,scalanie=0x03010200:yuva444p

· Zamień samoloty U i V w strumieniu yuv420p:

format=yuv420p,scalanie=0x000201:yuv420p

· Przesyłaj klip rgb24 do yuv444p:

format=rgb24,scalanie=0x000102:yuv444p

mcdeint
Zastosuj usuwanie przeplotu z kompensacją ruchu.

Potrzebuje jednego pola na ramkę jako danych wejściowych i dlatego musi być używane razem z yadif = 1/3 lub
odpowiednik.

Ten filtr akceptuje następujące opcje:

tryb
Ustaw tryb usuwania przeplotu.

Przyjmuje jedną z następujących wartości:

szybki
średni
powolny
użyj iteracyjnego szacowania ruchu

bardzo_wolny
lubić powolny, ale używaj wielu ramek odniesienia.

Wartość domyślna to szybki.

parytet
Ustaw parzystość pola obrazu zakładaną dla wejściowego wideo. To musi być jeden z
następujące wartości:

0, tff
załóż najpierw górne pole

1, bff
załóż najpierw dolne pole

Wartość domyślna to bff.

qp Ustaw parametr kwantyzacji na blok (QP) używany przez wewnętrzny koder.

Wyższe wartości powinny skutkować gładszym polem wektorowym ruchu, ale mniej optymalnym
poszczególne wektory. Wartość domyślna to 1.

mpzdziesiec
Odrzuć klatki, które nie różnią się zbytnio od poprzedniej klatki, aby zredukować klatkę
oceniać.

Głównym zastosowaniem tego filtra jest kodowanie z bardzo niską szybkością transmisji bitów (np. przesyłanie strumieniowe przez połączenie telefoniczne)
modem), ale teoretycznie można go użyć do naprawy filmów, które zostały poddane odwrotnemu telecinie
nieprawidłowo.

Poniżej znajduje się opis akceptowanych opcji.

max Ustaw maksymalną liczbę kolejnych klatek, które można pominąć (jeśli są dodatnie), lub
minimalny odstęp między pominiętymi klatkami (jeśli jest ujemny). Jeśli wartość wynosi 0,
ramka jest usuwana niezależnie od liczby poprzednich sekwencyjnie usuwanych ramek.

Wartość domyślna to 0.

hi
lo
frak
Ustaw wartości progowe spadku.

Wartości dla hi i lo są przeznaczone dla bloków 8x8 pikseli i reprezentują rzeczywistą wartość w pikselach
różnice, więc próg 64 odpowiada 1 jednostce różnicy dla każdego piksela,
lub to samo rozłożyło się inaczej w całym bloku.

Ramka jest kandydatem do porzucenia, jeśli żaden blok 8x8 nie różni się o więcej niż próg
of hi, a jeśli nie więcej niż frak bloki (1 oznacza cały obraz) różnią się o więcej niż
próg lo.

Wartość domyślna dla hi to 64*12, domyślna wartość dla lo to 64*5, a domyślna wartość
frak to 0.33.

negować
Neguj wejście wideo.

Przyjmuje liczbę całkowitą na wejściu; jeśli niezerowe, neguje składnik alfa (jeśli jest dostępny).
Domyślna wartość na wejściu to 0.

bez formatu
Wymuś libavfilter, aby nie używał żadnego z określonych formatów pikseli dla danych wejściowych do następnego
filtr.

Przyjmuje następujące parametry:

pix_fmts
Lista rozdzielonych znakami '|' nazw formatów pikseli, na przykład apix_fmts=yuv420p|monow|rgb24”.

Przykłady

· Zmuś libavfilter do używania formatu innego niż yuv420p dla wejścia do vflip
filtr:

noformat=pix_fmts=yuv420p,vflip

· Konwertuj wideo wejściowe na dowolny z formatów nieuwzględnionych na liście:

noformat=yuv420p|yuv444p|yuv410p

hałas
Dodaj szum do klatki wejściowej wideo.

Filtr akceptuje następujące opcje:

rdest ptasi
c0_ziarno
c1_ziarno
c2_ziarno
c3_ziarno
Ustaw ziarno szumu dla określonego składnika piksela lub wszystkich składników piksela w przypadku
rdest ptasi. Wartość domyślna to 123457.

cała_siła, wszystko
c0_siła, c0s
c1_siła, c1s
c2_siła, c2s
c3_siła, c3s
Ustaw siłę szumu dla określonego składnika piksela lub wszystkich składników piksela w przypadku
all_siła. Wartość domyślna to 0. Dozwolony zakres to [0, 100].

wszystkie_flagi, wszystko
c0_flagi, C0f
c1_flagi, C1f
c2_flagi, C2f
c3_flagi, C3f
Ustaw flagi komponentów pikselowych lub ustaw flagi dla wszystkich komponentów, jeśli wszystkie_flagi. Dostępny
wartości dla flag komponentów to:

a uśredniony szum czasowy (gładszy)

p mieszaj losowy szum z (pół)regularnym wzorem

t szum czasowy (zmiana wzorca szumu między klatkami)

u jednolity szum (w przeciwnym razie gaussowski)

Przykłady

Dodaj czasowy i jednolity szum do wejściowego wideo:

szum=wszystko=20:wszystko=t+u

zero
Przekaż niezmienione źródło wideo do wyjścia.

ok
Zastosuj transformację wideo za pomocą libopencv.

Aby włączyć ten filtr, zainstaluj bibliotekę i nagłówki libopencv i skonfiguruj FFmpeg za pomocą
„--włącz-libopencv”.

Przyjmuje następujące parametry:

nazwa_filtra
Nazwa filtru libopencv do zastosowania.

parametry_filtra
Parametry do przekazania do filtra libopencv. Jeśli nie określono, wartości domyślne
są zakładane.

Zapoznaj się z oficjalną dokumentacją libopencv, aby uzyskać dokładniejsze informacje:
<http://docs.opencv.org/master/modules/imgproc/doc/filtering.html>

Obsługiwanych jest kilka filtrów libopencv; patrz następujące podrozdziały.

rozszerza się

Poszerzyć obraz, używając określonego elementu strukturyzującego. Odpowiada libopencv
funkcja "cvDilate".

Akceptuje parametry: struktura_el|nb_iteracje.

struktura_el reprezentuje element strukturyzujący i ma składnię:
colsxwydziwianie+kotwica_xxkotwica_y/kształt

cols i wydziwianie reprezentują liczbę kolumn i wierszy elementu strukturyzującego,
kotwica_x i kotwica_y punkt zakotwiczenia i kształt kształt elementu strukturyzującego.
kształt musi być „prosty”, „krzyż”, „elipsa” lub „niestandardowy”.

Jeśli wartość dla kształt jest „niestandardowy”, musi po nim następować ciąg postaci
"=filename". Plik o nazwie filename przyjmuje się, że reprezentuje obraz binarny, z każdym
drukowalny znak odpowiadający jasnemu pikselowi. Kiedy zwyczaj kształt jest używany, cols i
wydziwianie są ignorowane, zamiast tego przyjmowana jest liczba lub kolumny i wiersze odczytywanego pliku.

Wartość domyślna dla struktura_el to „3x3+0x0/prost”.

nb_iteracje określa, ile razy transformacja jest stosowana do obrazu, oraz
domyślnie 1.

Kilka przykładów:

# Użyj wartości domyślnych
ocv=rozszerzenie

# Rozszerz za pomocą elementu strukturyzującego z krzyżem 5x5, powtarzając dwa razy
ocv=filter_name=dilate:filter_params=5x5+2x2/cross|2

# Odczytaj kształt z pliku diamond.shape, powtarzając dwa razy.
# Plik diamond.shape może zawierać taki wzór znaków
# *
#***
#*****
#***
# *
# Określone kolumny i wiersze są ignorowane
# ale współrzędne punktu zakotwiczenia nie są
ocv=dilate:0x0+2x2/custom=diamond.shape|2

erodować

Erozji obrazu za pomocą określonego elementu strukturyzującego. Odpowiada libopencv
funkcja "cvErode".

Akceptuje parametry: struktura_el:nb_iteracje, z tą samą składnią i semantyką co
dotychczasowy rozszerza się filtr.

gładki

Wygładź wideo wejściowe.

Filtr przyjmuje następujące parametry: rodzaj|param1|param2|param3|param4.

rodzaj jest typem filtru gładkiego do zastosowania i musi być jedną z następujących wartości:
„blur”, „blur_no_scale”, „mediana”, „gaussowska” lub „dwustronna”. Domyślna wartość to
„gaussowski”.

Znaczenie param1, param2, param3, param4 zależą od rodzaju gładkiego. param1 i
param2 zaakceptuj dodatnie wartości całkowite lub 0. param3 i param4 zaakceptuj liczbę zmiennoprzecinkową
wartości.

Wartość domyślna dla param1 wynosi 3. Domyślna wartość pozostałych parametrów to 0.

Te parametry odpowiadają parametrom przypisanym do funkcji libopencv
"cvSmooth".

narzuta
Nakładaj jeden film na drugi.

Zajmuje dwa wejścia i ma jedno wyjście. Pierwsze wejście to „główne” wideo, na którym
drugie wejście jest nakładane.

Przyjmuje następujące parametry:

Poniżej znajduje się opis akceptowanych opcji.

x
y Ustaw wyrażenie dla współrzędnych x i y nałożonego wideo na głównym
wideo. Wartość domyślna to „0” dla obu wyrażeń. W przypadku, gdy wyrażenie jest nieprawidłowe,
jest ustawiona na dużą wartość (co oznacza, że ​​nakładka nie będzie wyświetlana w obrębie
wyprowadzanie widocznego obszaru).

eof_akcja
Akcja do wykonania w przypadku napotkania EOF na wejściu pomocniczym; akceptuje jeden z
następujące wartości:

powtarzać
Powtórz ostatnią klatkę (domyślnie).

skończ wszystko
Zakończ oba strumienie.

przechodzić
Przepuścić główne wejście.

eval
Ustaw, kiedy wyrażenia dla x, y są oceniane.

Przyjmuje następujące wartości:

startowych
Oceniaj wyrażenia tylko raz podczas inicjalizacji filtra lub gdy polecenie
przetwarzane

rama
oceń wyrażenia dla każdej przychodzącej ramki

Wartość domyślna to rama.

najkrótsza
Jeśli jest ustawiony na 1, wymusza zakończenie wyjścia po zakończeniu najkrótszego wejścia. Domyślna
wartość wynosi 0.

format
Ustaw format wyjściowego wideo.

Przyjmuje następujące wartości:

juv420
wymuszenie wyjścia YUV420

juv422
wymuszenie wyjścia YUV422

juv444
wymuszenie wyjścia YUV444

rgb wymuś wyjście RGB

Wartość domyślna to juv420.

rgb (przestarzałe)
Jeśli jest ustawiony na 1, wymusza na filtrze akceptację danych wejściowych w przestrzeni kolorów RGB. Domyślna wartość
wynosi 0. Ta opcja jest przestarzała, użyj format zamiast.

powtarzać ostatni
Jeśli jest ustawiony na 1, wymuś na filtrze narysowanie ostatniej ramki nakładki na głównym wejściu, aż
koniec strumienia. Wartość 0 wyłącza to zachowanie. Wartość domyślna to 1.

Połączenia x, y wyrażenia mogą zawierać następujące parametry.

główny_w, W
główny_h, H
Główna szerokość i wysokość danych wejściowych.

nakładka_w, w
nakładka_h, h
Szerokość i wysokość danych wejściowych nakładki.

x
y Obliczone wartości dla x i y. Są oceniane dla każdej nowej klatki.

hsub
vssub
Podpróbki wartości chrominancji poziomej i pionowej formatu wyjściowego. Na przykład dla
format pikseli „yuv422p” hsub to 2 i vssub to 1.

n liczba klatek wejściowych, zaczynając od 0

pisać pozycja w pliku ramki wejściowej, NAN jeśli nieznana

t Znacznik czasu wyrażony w sekundach. Jest to NAN, jeśli wejściowy znacznik czasu jest nieznany.

Zauważ, że n, pisać, t zmienne są dostępne tylko po wykonaniu oceny dla rama,
i oceni do NAN, kiedy eval jest ustawione na startowych.

Należy pamiętać, że klatki są pobierane z każdego wejściowego wideo w kolejności sygnatury czasowej, dlatego jeśli ich
początkowe znaczniki czasu różnią się, dobrym pomysłem jest przekazanie dwóch danych wejściowych przez a
setpts=PTS-STARTPTS filtruj, aby zaczynały się od tego samego zerowego znacznika czasu, jak w przykładzie
dla film filtr.

Możesz połączyć ze sobą więcej nakładek, ale powinieneś przetestować skuteczność takiego podejścia.

Polecenia

Ten filtr obsługuje następujące polecenia:

x
y Zmodyfikuj x i y danych wejściowych nakładki. Polecenie akceptuje tę samą składnię polecenia
odpowiednią opcję.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

Przykłady

· Narysuj nakładkę w 10 pikselach od prawego dolnego rogu głównego wideo:

nakładka=główna_w-nakładka_w-10:główna_h-nakładka_h-10

Używając nazwanych opcji, powyższy przykład staje się:

nakładka=x=główna_w-nakładka_w-10:y=główna_h-nakładka_h-10

· Wstaw przezroczyste logo PNG w lewym dolnym rogu danych wejściowych, używając ffmpeg
narzędzie z opcją "-filter_complex":

ffmpeg -i wejście -i logo -filter_complex 'overlay=10:main_h-overlay_h-10' wyjście

· Wstaw 2 różne przezroczyste logo PNG (drugie logo w prawym dolnym rogu) za pomocą
dotychczasowy ffmpeg Narzędzie:

ffmpeg -i input -i logo1 -i logo2 -filter_complex 'overlay=x=10:y=Hh-10,overlay=x=Ww-10:y=Hh-10' wyjście

· Dodaj przezroczystą warstwę kolorów na górze głównego wideo; „WxH” musi określać rozmiar
główne wejście do filtra nakładkowego:

[email chroniony]:rozmiar=szer. x wys. [ponad]; [w] [nad] nakładka [na zewnątrz]

· Odtwórz obok siebie oryginalny film i wersję przefiltrowaną (tu z filtrem deshake)
strona używająca ffplay Narzędzie:

ffplay input.avi -vf 'split[a][b]; [a]pad=iw*2:ih[źródło]; [b]odstrząsnąć[filt]; [źródło][filt]nakładka=w'

Powyższe polecenie jest takie samo jak:

ffplay input.avi -vf 'split[b], pad=iw*2[źródło], [b]deshake, [źródło]nakładka=w'

· Stwórz przesuwaną nakładkę pojawiającą się od lewej do prawej górnej części ekranu
od godziny 2:

overlay=x='if(gte(t,2), -w+(t-2)*20, NAN)':y=0

· Skomponuj dane wyjściowe, umieszczając dwa wideo wejściowe obok siebie:

ffmpeg -i lewy.avi -i prawy.avi -filter_kompleks "
nullsrc=rozmiar=200x100 [tło];
[0:v] setpts=PTS-STARTPTS, skala=100x100 [po lewej];
[1:v] setpts=PTS-STARTPTS, skala=100x100 [prawo];
[tło][po lewej] nakładka=shortest=1 [tło+po lewej];
[tło+lewo][prawo] nakładka=shortest=1:x=100 [lewo+prawo]
"

· Maskuj 10-20 sekund filmu, stosując filtr delogo do sekcji

ffmpeg -i test.avi -kodek: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]'
zamaskowany.avi

· Połącz kilka nakładek kaskadowo:

nullsrc=s=200x200 [bg];
testsrc=s=100x100, split=4 [in0][in1][in2][in3];
[in0] lutrgb=r=0, [bg] nakładka=0:0 [mid0];
[w1] lutrgb=g=0, [mid0] overlay=100:0 [mid1];
[in2] lutrgb=b=0, [mid1] nakładka=0:100 [mid2];
[in3] null, [mid2] nakładka=100:100 [out0]

głupkowaty
Zastosuj odszumiacz Overcomplete Wavelet.

Filtr akceptuje następujące opcje:

głębokość
Ustaw głębokość.

Większe wartości głębokości będą bardziej odszumiać komponenty o niższej częstotliwości, ale spowalniają
filtracja.

Musi być int z zakresu 8-16, domyślnie 8.

luma_siła, ls
Ustaw siłę lumy.

Musi być podwójną wartością z zakresu 0-1000, domyślnie 1.0.

siła_koloru, cs
Ustaw siłę barwy.

Musi być podwójną wartością z zakresu 0-1000, domyślnie 1.0.

ścieżka
Dodaj dopełnienie do obrazu wejściowego i umieść oryginalne wejście w dostarczonym x, y
współrzędne

Przyjmuje następujące parametry:

szerokość, w
wysokość, h
Określ wyrażenie określające rozmiar obrazu wyjściowego z dodanymi dopełnieniami. Jeśli
wartość dla szerokość or wysokość wynosi 0, odpowiedni rozmiar wejściowy jest używany do wyjścia.

Połączenia szerokość wyrażenie może odwoływać się do wartości ustawionej przez wysokość ekspresja i występek
odwrotnie.

Domyślna wartość szerokość i wysokość to 0.

x
y Określ przesunięcia, w których obraz wejściowy ma zostać umieszczony w obszarze z wypełnieniem, z szacunkiem
do górnej/lewej krawędzi obrazu wyjściowego.

Połączenia x wyrażenie może odwoływać się do wartości ustawionej przez y ekspresja i na odwrót.

Domyślna wartość x i y to 0.

kolor
Określ kolor wyściełanego obszaru. Aby sprawdzić składnię tej opcji, sprawdź „Kolor”
w podręczniku ffmpeg-utils.

Domyślna wartość kolor jest czarne".

Wartość dla szerokość, wysokość, x, y opcje to wyrażenia zawierające:
stałe:

w_w
w_h
Wejściowa szerokość i wysokość wideo.

iw
ih Są takie same jak w_w i w_h.

out_w
wyjście_h
Szerokość i wysokość wyjściowa (rozmiar obszaru wyściełanego), określone przez szerokość
i wysokość wyrażenia.

ow
oh Są takie same jak out_w i wyjście_h.

x
y Przesunięcia x i y określone przez x i y wyrażenia lub NAN, jeśli jeszcze nie
określony.

a sama, jak iw / ih

sar wejściowy współczynnik proporcji próbki

dar wejściowy współczynnik proporcji wyświetlacza, jest taki sam jak (iw / ih) * sar

hsub
vssub
Wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

Przykłady

· Dodaj wyściółki z kolorem „fioletowym” do wejściowego wideo. Wyjściowy rozmiar wideo to
640x480, a lewy górny róg wejściowego wideo jest umieszczony w kolumnie 0, wierszu 40

pad=640:480:0:40:fiolet

Powyższy przykład jest odpowiednikiem następującego polecenia:

pad=szerokość=640:wysokość=480:x=0:y=40:kolor=fiolet

· Wypełnij wejście, aby uzyskać wyjście o wymiarach zwiększonych o 3/2 i umieść wejście
wideo na środku wyściełanego obszaru:

pad="3/2*iw:3/2*ih:(ow-iw)/2:(oh-ih)/2"

· Wypełnij dane wejściowe, aby uzyskać kwadratowy wynik o rozmiarze równym maksymalnej wartości między
szerokość i wysokość wejściową i umieść wideo wejściowe na środku obszaru wyściełanego:

pad="max(iw\,ih):ow:(ow-iw)/2:(oh-ih)/2"

· Wypełnij dane wejściowe, aby uzyskać ostateczny stosunek w/h 16:9:

pad="ih*16/9:ih:(i-ih)/2:(oh-ih)/2"

· W przypadku wideo anamorficznego, w celu prawidłowego ustawienia wyjściowego aspektu wyświetlania, należy
jest konieczne do użycia sar w wyrażeniu, zgodnie z zależnością:

(ih * X / ih) * sar = dar_wyjściowy
X = wynik_dar / sar

Dlatego poprzedni przykład należy zmodyfikować do:

pad="ih*16/9/sar:ih:(ow-iw)/2:(oh-ih)/2"

· Podwój rozmiar wyjściowy i umieść wideo wejściowe w prawym dolnym rogu
wyściełany obszar wyjściowy:

pad="2*iw:2*ih:ow-iw:oh-ih"

palety
Generuj jedną paletę dla całego strumienia wideo.

Akceptuje następujące opcje:

max_kolory
Ustaw maksymalną liczbę kolorów do kwantyzacji w palecie. Uwaga: paleta będzie
nadal zawiera 256 kolorów; niewykorzystane wpisy palety będą czarne.

rezerwa_przezroczysta
Utwórz paletę maksymalnie 255 kolorów i zarezerwuj ostatnią na przezroczystość.
Zarezerwowanie koloru przezroczystości jest przydatne do optymalizacji GIF. Jeśli nie jest ustawiony,
maksymalna ilość kolorów w palecie to 256. Prawdopodobnie chcesz wyłączyć tę opcję
dla samodzielnego obrazu. Ustaw domyślnie.

tryb_stats
Ustaw tryb statystyki.

Przyjmuje następujące wartości:

pełny
Oblicz histogramy pełnoklatkowe.

diff
Oblicz histogramy tylko dla części, która różni się od poprzedniej klatki. To może
być istotne, aby nadać większą wagę ruchomej części danych wejściowych, jeśli
tło jest statyczne.

Wartość domyślna to pełny.

Filtr eksportuje również metadane ramki „lavfi.color_quant_ratio” („nb_color_in /
nb_color_out"), którego można użyć do oceny stopnia kwantyzacji kolorów
paleta. Ta informacja jest również widoczna na Informacje poziom rejestrowania.

Przykłady

· Wygeneruj reprezentatywną paletę danego filmu za pomocą ffmpeg:

ffmpeg -i input.mkv -vf paletagen paleta.png

używanie palet
Użyj palety do downsamplingu wejściowego strumienia wideo.

Filtr przyjmuje dwa wejścia: jeden strumień wideo i paletę. Paleta musi mieć 256
obraz pikseli.

Akceptuje następujące opcje:

dither
Wybierz tryb ditheringu. Dostępne algorytmy to:

Bayer
Zamówiony dithering bayer 8x8 (deterministyczny)

Heckbert
Dithering zdefiniowany przez Paula Heckberta w 1982 r. (proste rozpraszanie błędów). Notatka:
to roztrząsanie jest czasami uważane za „niewłaściwe” i jest włączone jako odniesienie.

floyd_steinberg
Dithering Floyda i Steingberga (dyfuzja błędów)

sierra2
Frankie Sierra dithering v2 (dyfuzja błędów)

siera2_4a
Frankie Sierra dithering v2 „Lite” (dyfuzja błędów)

Domyślnie jest siera2_4a.

skala_bajera
Kiedy Bayer wybrane jest dithering, ta opcja określa skalę wzoru (jak
widoczny jest wzór kreskowania). Niska wartość oznacza bardziej widoczny wzór dla
mniej prążków, a wyższa wartość oznacza mniej widoczny wzór kosztem większej ilości prążków.

Opcja musi być liczbą całkowitą z zakresu [0,5]. Wartość domyślna to 2.

tryb_różnicy
Jeśli ustawione, zdefiniuj strefę do przetworzenia

prostokąt
Tylko zmieniający się prostokąt zostanie ponownie przetworzony. To jest podobne do GIF
przycinanie/przesuwanie mechanizmu kompresji. Ta opcja może być przydatna dla szybkości, jeśli
zmienia się tylko część obrazu i ma przypadki użycia, takie jak ograniczenie zakresu
błędu dyfuzyjnego dither do prostokąta, który ogranicza ruchomą scenę (to
prowadzi do bardziej deterministycznych wyników, jeśli scena nie zmienia się zbytnio, a jako
skutkuje mniejszym szumem ruchu i lepszą kompresją GIF).

Domyślnie jest Żaden.

Przykłady

· Użyj palety (generowanej na przykład za pomocą palety) do kodowania GIF-a za pomocą ffmpeg:

ffmpeg -i input.mkv -i palette.png -lavfipaletause output.gif

perspektywa
Prawidłowa perspektywa wideo nie jest nagrana prostopadle do ekranu.

Poniżej znajduje się opis akceptowanych parametrów.

x0
y0
x1
y1
x2
y2
x3
y3 Ustaw wyrażenie współrzędnych dla górnego lewego, górnego prawego, dolnego lewego i dolnego prawego
rogi. Domyślne wartości to „0:0:W:0:0:H:W:H”, z którymi perspektywa pozostanie
bez zmian. Jeśli opcja „sens” jest ustawiona na „źródło”, określone punkty będą
być wysyłane do rogów miejsca docelowego. Jeśli opcja „sens” jest ustawiona na
„miejsce docelowe”, wówczas rogi źródła zostaną wysłane do określonego
współrzędne

Wyrażenia mogą używać następujących zmiennych:

W
H szerokość i wysokość klatki wideo.

interpolacja
Ustaw interpolację do korekcji perspektywy.

Przyjmuje następujące wartości:

liniowy
sześcienny

Wartość domyślna to liniowy.

rozsądek
Ustaw interpretację opcji współrzędnych.

Przyjmuje następujące wartości:

0, źródło
Wyślij punkt w źródle określonym przez podane współrzędne do rogów
Miejsce docelowe.

1, miejsce przeznaczenia
Wyślij rogi źródła do punktu w miejscu docelowym określonym przez
podane współrzędne.

Wartość domyślna to źródło.

faza
Opóźnij wideo z przeplotem o jeden czas pola, aby zmienić kolejność pól.

Zamierzonym zastosowaniem jest naprawa filmów PAL, które zostały przechwycone z przeciwnym polem
zlecenie do transferu filmu na wideo.

Poniżej znajduje się opis akceptowanych parametrów.

tryb
Ustaw tryb fazy.

Przyjmuje następujące wartości:

t Przechwytuj kolejność w polu od góry do góry, przenieś od dołu do góry. Filtr opóźni działanie
dolne pole.

b Przechwyć kolejność w polu od dołu do pierwszego, przenieś najpierw na górę. Filtr opóźni górę
pole.

p Przechwytywanie i przesyłanie z tą samą kolejnością w terenie. Ten tryb istnieje tylko dla
dokumentację innych opcji, do których należy się odnieść, ale jeśli faktycznie ją wybierzesz,
filtr wiernie nic nie zrobi.

a Przechwytuj kolejność pól określoną automatycznie przez flagi pól, przenieś odwrotnie.
Filtruj wybrane spośród t i b tryby ramka po ramce przy użyciu flag pola. Jeśli
żadne informacje dotyczące pola nie są dostępne, to działa tak samo u.

u Uchwyć nieznane lub zmienne, przenieś odwrotnie. Filtruj wybrane spośród t i b na
klatka po klatce, analizując obrazy i wybierając alternatywę, która
daje najlepsze dopasowanie między polami.

T Uchwyć pierwszeństwo, przenieś nieznane lub zmienne. Filtruj wybrane spośród t i p
za pomocą analizy obrazu.

B Przechwytuj najpierw od dołu, przenieś nieznane lub zmienne. Filtruj wybrane spośród b i p
za pomocą analizy obrazu.

A Przechwytywanie określone przez flagi pola, transfer nieznany lub zmienny. Filtruj wybory
wśród t, b i p za pomocą flag terenowych i analizy obrazu. Jeśli żadne informacje w polu nie są
dostępne, to działa tak jak U. To jest tryb domyślny.

U Zarówno przechwytywanie, jak i przesyłanie nieznane lub różne. Filtruj wybrane spośród t, b i p
przy użyciu wyłącznie analizy obrazu.

test pikselowy
Filtr testowy deskryptora formatu pikseli, przydatny głównie do testów wewnętrznych. Wyjście wideo
powinna być równa wejściowemu wideo.

Na przykład:

format=monow, pixdesctest

może służyć do testowania definicji deskryptora formatu monobiałych pikseli.

pp
Włącz określony łańcuch podfiltrów przetwarzania końcowego za pomocą libpostproc. Ta biblioteka
powinny być automatycznie wybierane przy kompilacji GPL ("--enable-gpl"). Filtry podrzędne muszą być
oddzielone znakiem „/” i można je wyłączyć, dodając „-”. Każdy podfiltr i niektóre opcje
mają krótką i długą nazwę, których można używać zamiennie, np. dr/dering to
podobnie.

Filtry akceptują następujące opcje:

podfiltry
Ustaw ciąg podfiltrów przetwarzania końcowego.

Wszystkie podfiltry mają wspólne opcje określania ich zakresu:

a/autoq
Przestrzegaj poleceń dotyczących jakości tego podfiltra.

c/chrom
Wykonaj również filtrowanie chrominancji (domyślne).

y/nochrom
Czy tylko filtrowanie luminancji (bez chrominancji).

n/numer
Czy tylko filtrowanie chrominancji (bez luminancji).

Opcje te można dołączyć po nazwie podfiltra, oddzielone znakiem „|”.

Dostępne podfiltry to:

hb/hdeblock[|różnica[|płaskość]]
Poziomy filtr odblokowujący

różnica
Współczynnik różnicy, gdzie wyższe wartości oznaczają większe odblokowanie (domyślnie: 32).

płaskość
Próg płaskości, gdzie niższe wartości oznaczają większe usuwanie bloków (domyślnie: 39).

vb/vdeblock[|różnica[|płaskość]]
Pionowy filtr odblokowujący

różnica
Współczynnik różnicy, gdzie wyższe wartości oznaczają większe odblokowanie (domyślnie: 32).

płaskość
Próg płaskości, gdzie niższe wartości oznaczają większe usuwanie bloków (domyślnie: 39).

ha/hadeblock[|różnica[|płaskość]]
Dokładny poziomy filtr odblokowujący

różnica
Współczynnik różnicy, gdzie wyższe wartości oznaczają większe odblokowanie (domyślnie: 32).

płaskość
Próg płaskości, gdzie niższe wartości oznaczają większe usuwanie bloków (domyślnie: 39).

va/vadeblock[|różnica[|płaskość]]
Dokładny pionowy filtr odblokowujący

różnica
Współczynnik różnicy, gdzie wyższe wartości oznaczają większe odblokowanie (domyślnie: 32).

płaskość
Próg płaskości, gdzie niższe wartości oznaczają większe usuwanie bloków (domyślnie: 39).

Poziome i pionowe filtry odblokowujące mają wspólne wartości różnicy i płaskości, więc
nie można ustawić różnych progów poziomych i pionowych.

h1/x1hdeblok
Eksperymentalny poziomy filtr odblokowujący

v1/x1vdeblokuj
Eksperymentalny pionowy filtr odblokowujący

dr/dering
Filtr Deringa

tn/tmpnoise[|próg1[|próg2[|próg3]]], czasowy hałas reduktor
próg 1
większe -> silniejsze filtrowanie

próg 2
większe -> silniejsze filtrowanie

próg 3
większe -> silniejsze filtrowanie

al/autopoziomy[:f/pełny zakres], automatyczny jasność / kontrast korekta
f/pełny zakres
Rozciągnij luminancję do „0-255”.

funt/linblenddeint
Filtr usuwania przeplotu mieszania liniowego, który usuwa przeplot z danego bloku, filtrując wszystko
wiersze z filtrem „(1 2 1)”.

li/linipoldeint
Liniowy filtr usuwający przeplot z interpolacją, który usuwa przeplot z danego bloku o
liniowo interpoluje co drugą linię.

ci/cubicipoldeint
Sześcienny filtr usuwający przeplot z interpolacją usuwa przeplot z danego bloku sześciennie
interpolacja co drugą linię.

md/mediandeint
Filtr usuwania przeplotu Mediana, który usuwa przeplot z danego bloku poprzez zastosowanie mediany
filtruj do co drugiej linii.

fd/ffmpegdeint
Filtr usuwania przeplotu FFmpeg, który usuwa przeplot z danego bloku, filtrując co
drugi wiersz z filtrem „(-1 4 2 4 -1)”.

l5/dolnoprzepustowy5
Pionowo zastosowany filtr dolnoprzepustowy FIR, który usuwa przeplot z danego bloku
filtrując wszystkie wiersze za pomocą filtra „(-1 2 6 2 -1)”.

fq/forceQuant[|kwantyzator]
Zastępuje tabelę kwantyzatora z danych wejściowych stałym kwantyzatorem, który określisz.

kwantyzator
Kwantyzator do użycia

de/domyślny
Domyślna kombinacja filtrów pp ("hb|a,vb|a,dr|a")

fa/szybko
Szybka kombinacja filtrów pp ("h1|a,v1|a,dr|a")

ac Wysokiej jakości kombinacja filtrów pp ("ha|a|128|7,va|a,dr|a")

Przykłady

· Zastosuj usuwanie blokad w poziomie i pionie, usuwanie rogów oraz automatyczną jasność/kontrast:

pp=hb/vb/dr/al

· Zastosuj filtry domyślne bez korekcji jasności/kontrastu:

pp=de/-al

· Zastosuj filtry domyślne i odszumiacz czasowy:

pp=domyślnie/tmpnoise|1|2|3

· Zastosuj odblokowywanie tylko przy luminancji i włącz lub wyłącz odblokowywanie pionowe
automatycznie w zależności od dostępnego czasu procesora:

pp=hb|y/vb|a

pp7
Apply Przetwarzanie końcowe filtr 7. Jest to wariant spp filtr, podobny do spp = 6 z 7
punkt DCT, gdzie po IDCT używana jest tylko próbka środkowa.

Filtr akceptuje następujące opcje:

qp Wymuś stały parametr kwantyzacji. Przyjmuje liczbę całkowitą z zakresu od 0 do 63. Jeśli
nie ustawiono, filtr użyje QP ze strumienia wideo (jeśli jest dostępny).

tryb
Ustaw tryb progowania. Dostępne tryby to:

ciężko
Ustaw twardy próg.

miękki
Ustaw miękkie progi (lepszy efekt wygładzania, ale prawdopodobnie bardziej rozmyty).

średni
Ustaw średni próg (dobre wyniki, domyślnie).

psnr
Uzyskaj średni, maksymalny i minimalny współczynnik PSNR (współczynnik szczytowego sygnału do szumu) między dwoma
wideo wejściowe.

Ten filtr pobiera dwa wejściowe filmy wideo, pierwsze wejście jest uważane za „główne”
source i jest przekazywany bez zmian do wyjścia. Drugie wejście jest używane jako „odniesienie”
wideo do obliczania PSNR.

Aby ten filtr działał, oba wejścia wideo muszą mieć tę samą rozdzielczość i format pikseli
prawidłowo. Zakłada również, że oba wejścia mają tę samą liczbę ramek, które są
porównywane jeden po drugim.

Uzyskany średni PSNR jest drukowany przez system rejestrowania.

Filtr przechowuje skumulowany MSE (błąd średniokwadratowy) każdej ramki, a na końcu
przetwarzania jest uśredniany we wszystkich klatkach jednakowo, a następujący wzór to
wniosek o uzyskanie PSNR:

PSNR = 10*log10(MAX^2/MSE)

Gdzie MAX to średnia z maksymalnych wartości każdego składnika obrazu.

Poniżej znajduje się opis akceptowanych parametrów.

plik_statystycznych, f
Jeśli zostanie określony, filtr użyje nazwanego pliku do zapisania PSNR każdej osoby
rama.

Plik wydrukowany, jeśli plik_statystycznych jest zaznaczone, zawiera sekwencję par klucz/wartość
Nasz formularz klucz:wartość dla każdej porównywanej pary klatek.

Poniżej znajduje się opis każdego pokazanego parametru:

n kolejny numer ramki wejściowej, zaczynając od 1

mse_śr
Błąd średniej kwadratowej średnia różnica piksel po pikselu porównywanych klatek, uśredniona
nad wszystkimi składnikami obrazu.

mse_y, mse_u, mse_v, mse_r, mse_g, mse_g, mse_a
Błąd średniokwadratowy średnia różnica piksel po pikselu porównywanych klatek dla
składnik określony przyrostkiem.

psnr_y, psnr_u, psnr_v, psnr_r, psnr_g, psnr_b, psnr_a
Szczytowy stosunek sygnału do szumu porównywanych klatek dla składnika określonego przez
przyrostek.

Na przykład:

film=ref_movie.mpg, setpts=PTS-STARTPTS [główne];
[main][ref] psnr="stats_file=stats.log" [out]

W tym przykładzie przetwarzany plik wejściowy jest porównywany z plikiem referencyjnym
ref_film.mpg. PSNR każdej pojedynczej ramki jest przechowywany w statystyki.log.

podciąganie
Filtr odwracania pulldown (odwrócone telecine), zdolny do obsługi mieszanego twardego telecine,
Progresywna zawartość 24000/1001 kl./s i progresywna 30000/1001 kl./s.

Filtr pullup został zaprojektowany, aby wykorzystać przyszły kontekst przy podejmowaniu decyzji.
Ten filtr jest bezstanowy w tym sensie, że nie blokuje się na wzorcu do naśladowania, ale
zamiast tego oczekuje na następujące pola w celu zidentyfikowania dopasowań i przebudowy
progresywne ramki.

Aby tworzyć treści z równomierną liczbą klatek na sekundę, wstaw filtr fps po podciągnięciu, użyj
„fps=24000/1001”, jeśli szybkość klatek wejściowych wynosi 29.97 kl./s, „fps=24” dla 30 kl./s, a (rzadko)
wejście telecine 25fps.

Filtr akceptuje następujące opcje:

jl
jr
jt
jb Te opcje określają ilość „śmieci” do zignorowania po lewej, prawej stronie, na górze i na dole
odpowiednio obrazu. Lewy i prawy są w jednostkach 8 pikseli, natomiast góra i
dół w jednostkach po 2 linie. Wartość domyślna to 8 pikseli z każdej strony.

sb Ustaw ścisłe przerwy. Ustawienie tej opcji na 1 zmniejszy szanse filtrowania
generowanie od czasu do czasu niedopasowanej ramki, ale może to również powodować nadmierną liczbę
klatek, które mają zostać porzucone podczas sekwencji o dużym natężeniu ruchu. I odwrotnie, ustawiając go na -1
ułatwi filtrowanie pól dopasowania. Może to pomóc w przetwarzaniu wideo, w którym
między polami jest niewielkie rozmycie, ale może również powodować przeplot
ramki w danych wyjściowych. Wartość domyślna to 0.

mp Ustaw płaszczyznę metryczną do użycia. Przyjmuje następujące wartości:

l Użyj płaszczyzny luma.

u Użyj płaszczyzny chroma blue.

v Użyj płaszczyzny chroma red.

Ta opcja może być ustawiona tak, aby używać płaszczyzny barwy zamiast domyślnej płaszczyzny luma do robienia
obliczenia filtra. Może to poprawić dokładność na bardzo czystym materiale źródłowym, ale
bardziej prawdopodobne, że zmniejszy celność, zwłaszcza jeśli występuje szum chroma (tęcza
efekt) lub dowolny film w skali szarości. Głównym celem ustawienia mp do płaszczyzny barwy jest
aby zmniejszyć obciążenie procesora i uczynić pullup użytecznym w czasie rzeczywistym na wolnych maszynach.

Aby uzyskać najlepsze wyniki (bez zduplikowanych klatek w pliku wyjściowym) konieczna jest zmiana
wyjściowa liczba klatek na sekundę. Na przykład, aby odwrócić wejście telecine NTSC:

ffmpeg -i wejście -vf pullup -r 24000/1001...

qp
Zmień parametry kwantyzacji wideo (QP).

Filtr akceptuje następującą opcję:

qp Ustaw wyrażenie dla parametru kwantyzacji.

Wyrażenie jest oceniane przez eval API i może zawierać m.in
następujące stałe:

znany
1 jeśli indeksem nie jest 129, 0 w przeciwnym wypadku.

qp Indeks sekwencyjny od -129 do 128.

Przykłady

· Niektóre równania, takie jak:

qp=2+2*sin(PI*qp)

przypadkowy
Opróżnij klatki wideo z wewnętrznej pamięci podręcznej klatek w losowej kolejności. Brak ramki
odrzucone. Zainspirowany przez frei0r filtr nerwowy.

Ramy
Ustaw rozmiar w ilości ramek wewnętrznej pamięci podręcznej, w zakresie od 2 do 512. Domyślnie 30.

nasienie
Ustaw ziarno dla generatora liczb losowych, musi być liczbą całkowitą zawartą między 0 a
„UINT32_MAX”. Jeśli nie zostanie określony lub zostanie jawnie ustawiony na mniej niż 0, filtr będzie:
spróbuj użyć dobrego losowego materiału siewnego na zasadzie najlepszych starań.

usuń ziarno
Filtr removegrain to odszumiacz przestrzenny dla progresywnego wideo.

m0 Ustaw tryb dla pierwszego samolotu.

m1 Ustaw tryb dla drugiego samolotu.

m2 Ustaw tryb dla trzeciej płaszczyzny.

m3 Ustaw tryb dla czwartej płaszczyzny.

Zakres trybu wynosi od 0 do 24. Opis każdego trybu jest następujący:

0 Pozostaw płaszczyznę wejściową niezmienioną. Domyślna.

1 Przycina piksel z minimum i maksimum z 8 sąsiednich pikseli.

2 Przycina piksel z drugim minimum i maksimum z 8 sąsiednich pikseli.

3 Przycina piksel z trzecim minimum i maksimum z 8 sąsiednich pikseli.

4 Przycina piksel z czwartym minimum i maksimum z 8 sąsiednich pikseli. Ten
jest odpowiednikiem filtru mediany.

5 Przycinanie wrażliwe na linie dające minimalną zmianę.

6 Przycinanie wrażliwe na żyłkę, pośrednie.

7 Przycinanie wrażliwe na żyłkę, pośrednie.

8 Przycinanie wrażliwe na żyłkę, pośrednie.

9 Przycinanie zależne od linii na linii, w której sąsiednie piksele są najbliżej.

10 Zastępuje piksel docelowy najbliższym sąsiadem.

11 [1 2 1] poziome i pionowe rozmycie jądra.

12 Tak samo jak w trybie 11.

13 Tryb Boba, interpoluje górne pole od linii, w której sąsiednie piksele są
najbliższy.

14 Tryb Boba, interpoluje dolne pole od linii, w której sąsiednie piksele są
najbliższy.

15 Tryb Boba, interpoluje górne pole. To samo co 13, ale z bardziej skomplikowaną interpolacją
formuła.

16 Tryb Boba, interpoluje dolne pole. Taki sam jak 14, ale z bardziej skomplikowanym
formuła interpolacji.

17 Przycina piksel z minimum i maksimum odpowiednio maksimum i minimum
każdej pary przeciwległych sąsiednich pikseli.

18 Przycinanie zależne od linii przy użyciu przeciwległych sąsiadów, których największa odległość od
bieżący piksel jest minimalny.

19 Zastępuje piksel średnią z jego 8 sąsiadów.

20 Uśrednia 9 pikseli ([1 1 1] rozmycie w poziomie iw pionie).

21 Przycina piksele przy użyciu średnich z przeciwnego sąsiada.

22 Taki sam jak tryb 21, ale prostszy i szybszy.

23 Małe usuwanie krawędzi i aureoli, ale podobno bezużyteczne.

24 Podobnie jak 23.

usuńlogo
Pomiń logo stacji telewizyjnej, używając pliku obrazu, aby określić, które piksele składają się na
logo. Działa poprzez wypełnienie pikseli, które składają się na logo, sąsiednimi pikselami.

Filtr akceptuje następujące opcje:

Nazwa pliku, f
Ustaw plik bitmapy filtra, który może być dowolnym formatem obrazu obsługiwanym przez libavformat.
Szerokość i wysokość pliku obrazu muszą odpowiadać tym ze strumienia wideo, który jest
obrobiony.

Piksele w dostarczonym obrazie bitmapowym o wartości zero nie są uważane za część
logo, niezerowe piksele są uważane za część logo. Jeśli używasz białego (255) jako logo
i czarny (0) dla reszty, będziesz bezpieczny. Do tworzenia bitmapy filtra jest
zaleca się wykonanie zrzutu ekranu czarnej ramki z widocznym logo, a następnie
użycie filtra progowego, a następnie filtra erozyjnego raz lub dwa razy.

W razie potrzeby małe plamy można naprawić ręcznie. Pamiętaj, że jeśli piksele logo nie są
objętych, jakość filtra będzie znacznie obniżona. Zaznaczanie zbyt wielu pikseli w ramach
logo nie boli tak bardzo, ale zwiększy ilość rozmycia potrzebną do pokrycia
nad obrazem i zniszczy więcej informacji niż to konieczne, a dodatkowe piksele będą
zwolnij tempo na dużym logo.

pola powtarzalne
Ten filtr używa flagi repeat_field z nagłówków Video ES i pól twardych powtórzeń
w oparciu o jego wartość.

odwrócić, są odwrotne
Odwróć klip.

Ostrzeżenie: ten filtr wymaga pamięci do buforowania całego klipu, dlatego sugeruje się przycinanie.

Przykłady

· Weź pierwsze 5 sekund klipu i odwróć go.

przycięcie=koniec=5,odwrotny

obracać
Obróć wideo o dowolny kąt wyrażony w radianach.

Filtr akceptuje następujące opcje:

Poniżej znajduje się opis parametrów opcjonalnych.

kąt, a
Ustaw wyrażenie określające kąt, o jaki ma zostać obrócony sygnał wideo zgodnie z ruchem wskazówek zegara,
wyrażona jako liczba radianów. Wartość ujemna spowoduje przeciwnie do ruchu wskazówek zegara
obrót. Domyślnie jest ustawiony na „0”.

To wyrażenie jest oceniane dla każdej klatki.

out_w, ow
Ustaw wyrażenie szerokości wyjściowej, domyślną wartością jest "iw". To wyrażenie jest oceniane
tylko raz podczas konfiguracji.

poza_h, oh
Ustaw wyrażenie wysokości wyjściowej, domyślną wartością jest "ih". To wyrażenie jest oceniane
tylko raz podczas konfiguracji.

dwuliniowy
Włącz interpolację dwuliniową, jeśli jest ustawiona na 1, wartość 0 wyłącza ją. Wartość domyślna to
1.

kolor wypełnienia, c
Ustaw kolor używany do wypełnienia obszaru wyjściowego, którego nie obejmuje obrócony obraz. Dla
ogólną składnię tej opcji, sprawdź sekcję „Kolor” w podręczniku ffmpeg-utils.
Jeśli wybrana jest specjalna wartość "none", tło nie jest drukowane (przydatne dla
przykład, jeśli tło nigdy nie jest pokazywane).

Wartość domyślna to „czarny”.

Wyrażenia określające kąt i rozmiar wyjściowy mogą zawierać następujące stałe i
Funkcje:

n kolejny numer ramki wejściowej, zaczynając od 0. Zawsze jest to NAN przed
pierwsza klatka jest filtrowana.

t czas w sekundach ramki wejściowej, jest ustawiony na 0, gdy filtr jest skonfigurowany. To
jest zawsze NAN przed filtrowaniem pierwszej klatki.

hsub
vssub
wartości podpróbki chrominancji poziomej i pionowej. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

w_w, iw
w_h, ih
szerokość i wysokość wejściowego wideo

out_w, ow
poza_h, oh
szerokość i wysokość wyjściową, czyli rozmiar obszaru dopełnionego określony przez
szerokość i wysokość wyrażeń

rotw(a)
roth(a)
minimalna szerokość/wysokość wymagana do całkowitego zamieszczenia wejściowego wideo obróconego o
a radiany.

Są one dostępne tylko podczas obliczania out_w i wyjście_h wyrażenia.

Przykłady

· Obróć wejście o PI/6 radianów zgodnie z ruchem wskazówek zegara:

obróć=PI/6

· Obróć wejście o PI/6 radianów w kierunku przeciwnym do ruchu wskazówek zegara:

obróć=-PI/6

· Obróć wejście o 45 stopni w prawo:

obrót=45*PI/180

· Zastosuj stały obrót z okresem T, zaczynając od kąta PI/3:

obrót=PI/3+2*PI*t/T

· Spraw, aby rotacja sygnału wejściowego wideo oscylowała z okresem T sekund i amplitudą
radianów A:

obrót=A*sin(2*PI/T*t)

· Obróć wideo, rozmiar wyjściowy jest tak dobrany, że całe obracające się wideo wejściowe jest
zawsze całkowicie zawarte w danych wyjściowych:

rotate='2*PI*t:ow=hypot(iw,ih):oh=ow'

· Obróć wideo, zmniejsz rozmiar wyjściowy, aby nigdy nie było wyświetlane żadne tło:

obrót=2*PI*t:ow='min(iw,ih)/kwadrat(2)':oh=ow:c=brak

Polecenia

Filtr obsługuje następujące polecenia:

a, kąt
Ustaw wyrażenie kąta. Polecenie akceptuje tę samą składnię odpowiedniego
opcja.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

sab
Zastosuj rozmycie adaptacyjne do kształtu.

Filtr akceptuje następujące opcje:

luma_promień, lr
Ustaw siłę filtra rozmycia luma, musi mieścić się w zakresie 0.1-4.0, domyślna wartość to 1.0.
Większa wartość spowoduje bardziej rozmyty obraz i wolniejsze przetwarzanie.

luma_pre_filter_radius, lpfr
Ustaw promień luma filtra wstępnego, musi być wartością z zakresu 0.1-2.0, wartość domyślna to
1.0.

luma_siła, ls
Ustaw maksymalną różnicę luma między pikselami, która ma być uwzględniona, musi być wartością w
w zakresie 0.1-100.0, domyślna wartość to 1.0.

promień_koloru, cr
Ustaw siłę filtra rozmycia chrominancji, musi mieścić się w zakresie 0.1-4.0. Większa wartość
spowoduje bardziej rozmyty obraz i wolniejsze przetwarzanie.

chroma_pre_filter_radius, kpfr
Ustaw promień wstępnego filtru chrominancji, musi być wartością z zakresu 0.1-2.0.

siła_koloru, cs
Ustaw maksymalną różnicę chrominancji między pikselami, która ma być uwzględniona, musi być wartością
w przedziale 0.1-100.0.

Każda wartość opcji chroma, jeśli nie została wyraźnie określona, ​​jest ustawiana na odpowiednią wartość luma
Wartość opcji.

skala
Skaluj (zmień rozmiar) wejściowego wideo za pomocą biblioteki libswscale.

Filtr skali wymusza, aby wyjściowe proporcje wyświetlania były takie same jak wejściowe, o
zmiana proporcji wyjściowej próbki.

Jeśli format obrazu wejściowego różni się od formatu wymaganego przez następny filtr,
filtr skali przekonwertuje dane wejściowe do żądanego formatu.

Opcje

Filtr akceptuje następujące opcje lub dowolne opcje obsługiwane przez
skaler libswscale.

See dotychczasowy ffmpeg-skaler podręcznik aby zapoznać się z pełną listą opcji skalera.

szerokość, w
wysokość, h
Ustaw wyrażenie wyjściowego wymiaru wideo. Wartość domyślna to wymiar wejściowy.

Jeśli wartość wynosi 0, dla danych wyjściowych jest używana szerokość wejściowa.

Jeśli jedna z wartości wynosi -1, filtr skali użyje wartości, która utrzyma
proporcje obrazu wejściowego, obliczone z innego określonego wymiaru. Jeśli
oba mają wartość -1, używany jest rozmiar wejściowy

Jeśli jedną z wartości jest -n z n > 1, filtr skali użyje również wartości, która
zachowuje proporcje obrazu wejściowego, obliczone na podstawie innych określonych
wymiar. Po tym jednak upewni się, że obliczony wymiar jest
podzielne przez n i w razie potrzeby dostosuj wartość.

Zobacz poniżej listę stałych akceptowanych do użycia w wyrażeniu wymiaru.

interweniować
Ustaw tryb przeplotu. Przyjmuje następujące wartości:

1 Wymuś świadome skalowanie z przeplotem.

0 Nie stosować skalingu z przeplotem.

-1 Wybierz świadome skalowanie z przeplotem w zależności od tego, czy ramki źródłowe są oflagowane
z przeplotem czy nie.

Wartość domyślna to 0.

Flagi
Ustaw flagi skalowania libswscale. Widzieć dotychczasowy ffmpeg-skaler podręcznik aby zobaczyć pełną listę
wartości. Jeśli nie określono wyraźnie, filtr stosuje domyślne flagi.

rozmiar, s
Ustaw rozmiar wideo. Aby poznać składnię tej opcji, sprawdź "Wideo rozmiar" Sekcja in
dotychczasowy narzędzia ffmpeg podręcznik.

w_macierzy_kolorów
out_color_matrix
Ustaw typ przestrzeni kolorów wejścia/wyjścia YCbCr.

Pozwala to na nadpisanie wartości wykrytej automatycznie, a także umożliwia wymuszenie
określona wartość używana dla wyjścia i enkodera.

Jeśli nie zostanie określony, typ przestrzeni kolorów zależy od formatu pikseli.

Możliwa wartość:

samochód
Wybierz automatycznie.

bt709
Format zgodny z zaleceniem Międzynarodowego Związku Telekomunikacyjnego (ITU)
BT.709.

Fcc Ustaw przestrzeń kolorów zgodnie z Federalną Komisją Łączności Stanów Zjednoczonych
(FCC) Kodeks Przepisów Federalnych (CFR) Tytuł 47 (2003) 73.682 (a).

bt601
Ustaw przestrzeń kolorów zgodnie z:

· Zalecenie Sektora Radiokomunikacji ITU (ITU-R) BT.601

· Zalecenia ITU-R BT.470-6 (1998) Systemy B, B1 i G

· Stowarzyszenie Inżynierów Filmowych i Telewizyjnych (SMPTE) ST 170:2004

smte240m
Ustaw przestrzeń kolorów zgodnie z SMPTE ST 240:1999.

w zakresie
poza zasięgiem
Ustaw zakres próbkowania wejścia/wyjścia YCbCr.

Pozwala to na nadpisanie wartości wykrytej automatycznie, a także umożliwia wymuszenie
określona wartość używana dla wyjścia i enkodera. Jeśli nie określono, zakres zależy od
format pikseli. Możliwa wartość:

samochód
Wybierz automatycznie.

jpeg/pełny/szt
Ustaw pełny zakres (0-255 w przypadku 8-bitowej lumy).

mpeg/telewizja
Ustaw zakres „MPEG” (16-235 w przypadku 8-bitowej lumy).

force_original_aspect_ratio
W razie potrzeby włącz zmniejszanie lub zwiększanie szerokości lub wysokości wyjściowego wideo, aby zachować
oryginalne proporcje. Możliwa wartość:

wyłączyć
Skaluj wideo zgodnie z opisem i wyłącz tę funkcję.

spadek
W razie potrzeby wymiary wyjściowego wideo zostaną automatycznie zmniejszone.

zwiększać
W razie potrzeby wymiary wyjściowego wideo zostaną automatycznie zwiększone.

Jednym z przydatnych przykładów tej opcji jest to, że gdy znasz maksimum konkretnego urządzenia
dozwoloną rozdzielczość, możesz użyć tej opcji, aby ograniczyć wyjściowe wideo do tej, podczas gdy
zachowując proporcje. Na przykład urządzenie A umożliwia odtwarzanie w rozdzielczości 1280x720, a Twój
wideo ma rozdzielczość 1920x800. Używając tej opcji (ustaw ją na zmniejszenie) i określając 1280x720 na
wiersz poleceń daje wynik 1280x533.

Pamiętaj, że jest to coś innego niż określenie -1 dla w or h, ty wciąż
Aby ta opcja działała, należy określić rozdzielczość wyjściową.

Wartości w i h opcje to wyrażenia zawierające następujące stałe:

w_w
w_h
Szerokość i wysokość wejściowa

iw
ih Są takie same jak w_w i w_h.

out_w
wyjście_h
Wyjściowa (skalowana) szerokość i wysokość

ow
oh Są takie same jak out_w i wyjście_h

a Taki sam jak iw / ih

sar wejściowy współczynnik proporcji próbki

dar Format obrazu wejściowego. Oblicza się z „(iw / ih) * sar”.

hsub
vssub
poziome i pionowe wejściowe wartości podpróbki chrominancji. Na przykład dla piksela
format „yuv422p” hsub to 2 i vssub to 1.

osub
owsub
wartości podpróbki poziomej i pionowej barwy wyjściowej. Na przykład dla piksela
format „yuv422p” hsub to 2 i vssub to 1.

Przykłady

· Skalowanie wejściowego wideo do rozmiaru 200x100

skala=sz=200:h=100

Odpowiada to:

skala=200:100

lub:

skala=200x100

· Określ skrót rozmiaru dla rozmiaru wyjściowego:

skala=qcif

który można również zapisać jako:

skala=rozmiar=qcif

· Skaluj wejście do 2x:

skala=w=2*iw:h=2*ih

· Powyższe jest takie samo jak:

skala=2*w_w:2*w_h

· Skalowanie wejścia do 2x z wymuszonym skalowaniem z przeplotem:

skala=2*iw:2*ih:interl=1

· Skaluj dane wejściowe do połowy rozmiaru:

skala=w=iw/2:h=ih/2

· Zwiększ szerokość i ustaw wysokość na ten sam rozmiar:

skala=3/2*iw:ow

· Szukaj greckiej harmonii:

skala=iw:1/PHI*iw
skala=ih*PHI:ih

· Zwiększ wysokość i ustaw szerokość na 3/2 wysokości:

skala=w=3/2*oh:h=3/5*ih

· Zwiększ rozmiar, czyniąc go wielokrotnością wartości podpróbki chroma:

scale="trunc(3/2*iw/hsub)*hsub:trunc(3/2*ih/vsub)*vsub"

· Zwiększ szerokość do maksymalnie 500 pikseli, zachowując ten sam współczynnik proporcji, co
wkład:

scale=w='min(500\, iw*3/2):h=-1'

Polecenia

Ten filtr obsługuje następujące polecenia:

szerokość, w
wysokość, h
Ustaw wyrażenie wyjściowego wymiaru wideo. Polecenie akceptuje tę samą składnię co
odpowiednią opcję.

Jeśli podane wyrażenie jest niepoprawne, jest zachowywane z bieżącą wartością.

skala2ref
Skaluj (zmień rozmiar) wejściowego wideo na podstawie referencyjnego wideo.

Zobacz filtr skali dla dostępnych opcji, scale2ref obsługuje to samo, ale używa
jako podstawę wideo referencyjne zamiast głównego wejścia.

Przykłady

· Skalowanie strumienia napisów, aby dopasować rozmiar głównego wideo przed nałożeniem

'scale2ref[b][a];[a][b]nakładka'

oddzielne pola
„Separatefields” pobiera dane wejściowe wideo oparte na klatkach i dzieli każdą klatkę na jej
pola komponentów, tworząc nowy klip o połowie wysokości z dwukrotnie większą liczbą klatek na sekundę i dwukrotnie
liczba klatek.

Ten filtr wykorzystuje informacje o dominacji pola w ramce, aby zdecydować, która z każdej pary
pola do umieszczenia jako pierwsze w danych wyjściowych. Jeśli zrobi to źle, użyj ustawione pole filtruj przed
filtr „oddzielne pola”.

setar, setar
Filtr „setdar” ustawia współczynnik kształtu obrazu dla wyjściowego wideo filtra.

Odbywa się to poprzez zmianę określonego współczynnika proporcji próbki (aka piksela), zgodnie z
następujące równanie:

= / *

Pamiętaj, że filtr „setdar” nie modyfikuje wymiarów wideo w pikselach
ramka. Również proporcje wyświetlania ustawione przez ten filtr mogą zostać zmienione przez późniejsze filtry
w łańcuchu filtrów, np. w przypadku skalowania lub jeśli inny filtr „setdar” lub „setsar” jest
stosowany.

Filtr „setsar” ustawia współczynnik proporcji próbki (aka Pixel) dla wyjściowego wideo filtra.

Zauważ, że w wyniku zastosowania tego filtra, aspekt wyświetlania danych wyjściowych
stosunek zmieni się zgodnie z powyższym równaniem.

Należy pamiętać, że przykładowe proporcje ustawione przez filtr „setsar” mogą zostać zmienione przez
późniejsze filtry w łańcuchu filtrów, np. jeśli inny filtr „setsar” lub „setdar” jest
stosowany.

Przyjmuje następujące parametry:

r, stosunek, dar ("setdar" tylko), sar ("setsar" tylko)
Ustaw proporcje używane przez filtr.

Parametr może być ciągiem liczb zmiennoprzecinkowych, wyrażeniem lub ciągiem znaków
Nasz formularz num:dzień, Gdzie num i dzień są licznikiem i mianownikiem proporcji.
Jeżeli parametr nie jest określony, przyjmuje się wartość „0”. W przypadku formularza
"num:dzieńużywane jest ", znak ":" powinien zostać zmieniony.

max Ustaw maksymalną wartość całkowitą, która będzie używana do wyrażenia licznika i mianownika, gdy
zmniejszenie wyrażonych proporcji do racjonalnych. Wartość domyślna to 100.

Parametr sar to wyrażenie zawierające następujące stałe:

E, LICZBA PI, PHI
Są to przybliżone wartości stałych matematycznych e (liczba Eulera), pi
(greckie pi) i phi (złoty podział).

w, h
Wejściowa szerokość i wysokość.

a Są takie same jak w / h.

sar Wejściowy współczynnik proporcji próbki.

dar Format obrazu wejściowego. To to samo co (w / h) * sar.

hsub, vssub
Poziome i pionowe wartości podpróbki chrominancji. Na przykład dla formatu pikseli
"yuv422p" hsub to 2 i vssub to 1.

Przykłady

· Aby zmieni proporcje wywietlacza na 16:9, naley okreli jedno z nastpujcych:

setdar=dar=1.77777
setdar=dar=16/9
setdar=dar=1.77777

· Aby zmienić proporcje próbki na 10:11, określ:

ustawiasar=sar=10/11

· Aby ustawić współczynnik proporcji ekranu 16:9 i określić maksymalną wartość całkowitą 1000 cali
zmniejszenie proporcji, użyj polecenia:

setdar=stosunek=16/9:max=1000

ustawione pole
Pole siłowe dla wyjściowej klatki wideo.

Filtr "setfield" oznacza pole typu przeplotu dla klatek wyjściowych. To nie
zmienić ramkę wejściową, ale ustawia tylko odpowiednią właściwość, która wpływa na to, jak
Ramka jest traktowana przez następujące filtry (np. "fieldorder" lub "yadif").

Filtr akceptuje następujące opcje:

tryb
Dostępne wartości to:

samochód
Zachowaj tę samą właściwość pola.

bff Oznacz ramkę jako najpierw dolne pole.

tff Oznacz ramkę jako pierwszą w górnym polu.

żarcie
Oznacz ramkę jako progresywną.

showinfo
Pokaż linię zawierającą różne informacje dla każdej wejściowej klatki wideo. Wejście wideo jest
niezmodyfikowany.

Pokazany wiersz zawiera sekwencję par klucz/wartość formularza klucz:wartość.

Na wyjściu pokazane są następujące wartości:

n Numer (sekwencyjny) ramki wejściowej, zaczynając od 0.

pkt Znacznik czasu prezentacji ramki wejściowej, wyrażony jako liczba podstaw czasu
jednostki. Podstawa czasu zależy od wkładki wejściowej filtra.

pts_czas
Znacznik czasu prezentacji ramki wejściowej wyrażony jako liczba sekund.

pisać Pozycja ramki w strumieniu wejściowym lub -1, jeśli ta informacja jest
niedostępne i/lub bez znaczenia (na przykład w przypadku wideo syntetycznego).

fmt Nazwa formatu pikseli.

sar Przykładowe proporcje klatki wejściowej wyrażone w postaci num/dzień.

s Rozmiar ramki wejściowej. Aby poznać składnię tej opcji, sprawdź "Wideo rozmiar"
Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

i Rodzaj trybu z przeplotem („P” dla „progresywnego”, „T” dla pierwszego pola, „B” dla
najpierw dolne pole).

to klucz
To jest 1, jeśli ramka jest klatką kluczową, 0 w przeciwnym razie.

rodzaj
Typ obrazu ramki wejściowej („I” dla I-ramki, „P” dla P-ramki, „B” dla
Ramka B lub „?” dla nieznanego typu). Zapoznaj się również z dokumentacją
Wyliczenie „AVPictureType” i funkcja „av_get_picture_type_char” zdefiniowana w
libavutil/avutil.h.

suma kontrolna
Suma kontrolna Adlera-32 (wydrukowana szesnastkowo) wszystkich płaszczyzn ramki wejściowej.

samolot_suma kontrolna
Suma kontrolna Adler-32 (wydrukowana w systemie szesnastkowym) każdej płaszczyzny ramki wejściowej,
wyrażone w postaci „[c0 c1 c2 c3]".

paleta pokazowa
Wyświetla paletę 256 kolorów każdej klatki. Ten filtr dotyczy tylko pal8 piksel
ramki formatu.

Akceptuje następującą opcję:

s Ustaw rozmiar pola używanego do reprezentowania jednego wpisu koloru palety. Wartość domyślna to 30 (dla
pudełko „30x30” pikseli).

samoloty tasowe
Zmień kolejność i/lub zduplikuj samoloty wideo.

Przyjmuje następujące parametry:

map0
Indeks płaszczyzny wejściowej, która ma być używana jako pierwsza płaszczyzna wyjściowa.

map1
Indeks płaszczyzny wejściowej, która ma być używana jako druga płaszczyzna wyjściowa.

map2
Indeks płaszczyzny wejściowej, która ma być używana jako trzecia płaszczyzna wyjściowa.

map3
Indeks płaszczyzny wejściowej, która ma być używana jako czwarta płaszczyzna wyjściowa.

Pierwsza płaszczyzna ma indeks 0. Domyślnie dane wejściowe pozostają niezmienione.

Zamień drugą i trzecią płaszczyznę wejścia:

ffmpeg -i WEJŚCIE -vf shuffleplanes=0:2:1:3 WYJŚCIE

statystyki sygnału
Oceń różne wskaźniki wizualne, które pomagają w określeniu problemów związanych z
digitalizacja analogowych mediów wideo.

Domyślnie filtr rejestruje te wartości metadanych:

YMIN
Wyświetla minimalną wartość Y zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

ŻÓŁTY
Wyświetl wartość Y na poziomie 10% w ramce wejściowej. Wyrażony w zakresie
z [0-255].

YAVG
Wyświetl średnią wartość Y w ramce wejściowej. Wyrażony w zakresie [0-255].

WYSOKI
Wyświetl wartość Y na poziomie 90% w ramce wejściowej. Wyrażony w zakresie
z [0-255].

YMAX
Wyświetla maksymalną wartość Y zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

UMIN
Wyświetla minimalną wartość U zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

UŁÓW
Wyświetl wartość U na poziomie 10% w ramce wejściowej. Wyrażony w zakresie
z [0-255].

UAVG
Wyświetl średnią wartość U w ramce wejściowej. Wyrażony w zakresie [0-255].

WYSOKI
Wyświetl wartość U na poziomie 90% w ramce wejściowej. Wyrażony w zakresie
z [0-255].

UMAX
Wyświetla maksymalną wartość U zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

VMIN
Wyświetla minimalną wartość V zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

VLOW
Wyświetl wartość V na 10% percentylu w ramce wejściowej. Wyrażony w zakresie
z [0-255].

VAVG
Wyświetl średnią wartość V w ramce wejściowej. Wyrażony w zakresie [0-255].

WYSOKI
Wyświetl wartość V na 90% percentylu w ramce wejściowej. Wyrażony w zakresie
z [0-255].

Rozszerzenie VMAX
Wyświetla maksymalną wartość V zawartą w ramce wejściowej. Wyrażony w zakresie
[0-255].

SATMINA
Wyświetla minimalną wartość nasycenia zawartą w ramce wejściowej. Wyrażone w
zakres [0-~181.02].

SABIE
Wyświetl wartość nasycenia na poziomie 10% w ramce wejściowej. Wyrażone
w zakresie [0-~181.02].

SATAVG
Wyświetla średnią wartość nasycenia w ramce wejściowej. Wyrażony w zakresie
[0-~181.02].

SATIGH
Wyświetl wartość nasycenia na poziomie 90% w ramce wejściowej. Wyrażone
w zakresie [0-~181.02].

SATMAX
Wyświetla maksymalną wartość nasycenia zawartą w ramce wejściowej. Wyrażone w
zakres [0-~181.02].

HUEMED
Wyświetl medianę barwy w ramce wejściowej. Wyrażony w zakresie
[0-360].

HUAVG
Wyświetl średnią wartość odcienia w ramce wejściowej. Wyrażony w zakresie
[0-360].

YDIF
Wyświetl średnią różnicę wartości próbki między wszystkimi wartościami płaszczyzny Y w
bieżąca ramka i odpowiadające jej wartości poprzedniej ramki wejściowej. Wyrażone w
zakres [0-255].

UDIF
Wyświetl średnią różnicy wartości próbki między wszystkimi wartościami płaszczyzny U w
bieżąca ramka i odpowiadające jej wartości poprzedniej ramki wejściowej. Wyrażone w
zakres [0-255].

VDIF
Wyświetl średnią różnicę wartości próbki między wszystkimi wartościami płaszczyzny V w
bieżąca ramka i odpowiadające jej wartości poprzedniej ramki wejściowej. Wyrażone w
zakres [0-255].

Filtr akceptuje następujące opcje:

stan
na zewnątrz stan określić dodatkową formę analizy obrazu. na zewnątrz wyprowadź wideo za pomocą
określony typ podświetlonego piksela.

Obie opcje akceptują następujące wartości:

wszystko
Zidentyfikować czasowy wartości odstające piksele. A czasowy odstające jest pikselem w przeciwieństwie do
sąsiednie piksele tego samego pola. Przykłady czasowych wartości odstających obejmują
wyniki przerw w odtwarzaniu wideo, zatkania głowy lub problemów ze śledzeniem taśmy.

wrz
Zidentyfikować pionowy linia powtarzanie. Pionowe powtórzenie linii obejmuje podobne rzędy
pikseli w ramce. W urodzonym cyfrowym wideo powtarzanie linii pionowej jest
powszechne, ale ten wzorzec jest rzadki w przypadku wideo przetworzonego na postać cyfrową ze źródła analogowego.
Gdy pojawia się w filmie, który wynika z cyfryzacji źródła analogowego, to
może wskazywać na ukrycie przed kompensatorem zaniku.

Brng
Identyfikuj piksele, które wykraczają poza legalny zasięg transmisji.

kolor, c
Ustaw kolor podświetlenia dla na zewnątrz opcja. Domyślny kolor to żółty.

Przykłady

· Dane wyjściowe różnych metryk wideo:

ffprobe -f lavfi film=przykład.mov,signalstats="stat=tout+vrep+brng" -show_frames

· Wyprowadź określone dane dotyczące minimalnych i maksymalnych wartości płaszczyzny Y na klatkę:

ffprobe -f lavfi film=przykład.mov,signalstats -show_entriesframe_tags=lavfi.signalstats.YMAX,lavfi.signalstats.YMIN

· Odtwarzaj wideo, podświetlając na czerwono piksele znajdujące się poza zasięgiem transmisji.

ffplay example.mov -vf signalstats="out=brng:color=red"

· Odtwarzaj wideo z metadanymi statystycznymi sygnału narysowanymi na ramce.

ffplay przykład.mov -vf Signalstats=stat=brng+vrep+tout,drawtext=fontfile=FreeSerif.ttf:textfile=signalstat_drawtext.txt

Zawartość pliku signalstat_drawtext.txt użytego w poleceniu to:

czas %{pts:hms}
T (%{metadane:lavfi.signalstats.YMIN}-%{metadane:lavfi.signalstats.YMAX})
U (%{metadane:lavfi.signalstats.UMIN}-%{metadane:lavfi.signalstats.UMAX})
V (%{metadane:lavfi.signalstats.VMIN}-%{metadane:lavfi.signalstats.VMAX})
maksymalne nasycenie: %{metadata:lavfi.signalstats.SATMAX}

inteligentne rozmycie
Rozmyj wideo wejściowe bez wpływu na kontury.

Akceptuje następujące opcje:

luma_promień, lr
Ustaw promień światła. Wartość opcji musi być liczbą zmiennoprzecinkową z zakresu [0.1,5.0]
który określa wariancję filtra Gaussa używanego do rozmycia obrazu (wolniej, jeśli
większy). Wartość domyślna to 1.0.

luma_siła, ls
Ustaw siłę luma. Wartość opcji musi być liczbą zmiennoprzecinkową z zakresu [-1.0,1.0]
który konfiguruje rozmycie. Wartość zawarta w [0.0,1.0] spowoduje rozmycie obrazu
natomiast wartość zawarta w [-1.0,0.0] wyostrzy obraz. Wartość domyślna to 1.0.

próg_lumy, lt
Ustaw próg jasności używany jako współczynnik, aby określić, czy piksel powinien być
zamazane lub nie. Wartość opcji musi być liczbą całkowitą z zakresu [-30,30]. Wartość
0 przefiltruje cały obraz, wartość zawarta w [0,30] przefiltruje płaskie obszary, a a
wartość zawarta w [-30,0] odfiltruje krawędzie. Wartość domyślna to 0.

promień_koloru, cr
Ustaw promień chrominancji. Wartość opcji musi być liczbą zmiennoprzecinkową z zakresu [0.1,5.0]
który określa wariancję filtra Gaussa używanego do rozmycia obrazu (wolniej, jeśli
większy). Wartość domyślna to 1.0.

siła_koloru, cs
Ustaw siłę chromatyczną. Wartość opcji musi być liczbą zmiennoprzecinkową z zakresu
[-1.0,1.0], który konfiguruje rozmycie. Wartość zawarta w [0.0,1.0] spowoduje rozmycie
obraz, podczas gdy wartość zawarta w [-1.0,0.0] wyostrzy obraz. Wartość domyślna to
1.0.

próg_koloru, ct
Ustaw próg chrominancji używany jako współczynnik, aby określić, czy piksel powinien być
zamazane lub nie. Wartość opcji musi być liczbą całkowitą z zakresu [-30,30]. Wartość
0 przefiltruje cały obraz, wartość zawarta w [0,30] przefiltruje płaskie obszary, a a
wartość zawarta w [-30,0] odfiltruje krawędzie. Wartość domyślna to 0.

Jeśli opcja chroma nie jest jawnie ustawiona, ustawiana jest odpowiadająca jej wartość luma.

sim
Uzyskaj SSIM (miara podobieństwa strukturalnego) między dwoma wejściowymi filmami wideo.

Ten filtr pobiera dwa wejściowe filmy wideo, pierwsze wejście jest uważane za „główne”
source i jest przekazywany bez zmian do wyjścia. Drugie wejście jest używane jako „odniesienie”
wideo do obliczania SSIM.

Aby ten filtr działał, oba wejścia wideo muszą mieć tę samą rozdzielczość i format pikseli
prawidłowo. Zakłada również, że oba wejścia mają tę samą liczbę ramek, które są
porównywane jeden po drugim.

Filtr przechowuje obliczony SSIM każdej ramki.

Poniżej znajduje się opis akceptowanych parametrów.

plik_statystycznych, f
Jeśli zostanie określony, filtr użyje nazwanego pliku do zapisania SSIM każdej osoby
rama.

Plik wydrukowany, jeśli plik_statystycznych jest zaznaczone, zawiera sekwencję par klucz/wartość
Nasz formularz klucz:wartość dla każdej porównywanej pary klatek.

Poniżej znajduje się opis każdego pokazanego parametru:

n kolejny numer ramki wejściowej, zaczynając od 1

Y, U, V, R, G, B
SSIM porównywanych ramek dla składnika określonego przez sufiks.

Wszystkie kategorie SSIM porównywanych ramek dla całej ramki.

dB Tak samo jak powyżej, ale w reprezentacji dB.

Na przykład:

film=ref_movie.mpg, setpts=PTS-STARTPTS [główne];
[main][ref] ssim="stats_file=stats.log" [out]

W tym przykładzie przetwarzany plik wejściowy jest porównywany z plikiem referencyjnym
ref_film.mpg. SSIM każdej pojedynczej ramki jest przechowywany w statystyki.log.

Kolejny przykład z psnr i ssim w tym samym czasie:

ffmpeg -i main.mpg -i ref.mpg -lavfi "ssim;[0:v][1:v]psnr" -f null -

stereo3d
Konwersja między różnymi formatami obrazów stereoskopowych.

Filtry akceptują następujące opcje:

in Ustaw stereoskopowy format obrazu wejściowego.

Dostępne wartości dla wejściowych formatów obrazu to:

sbsl
obok siebie równolegle (lewe oko lewe, prawe oko)

sbsr
obok siebie crosseye (prawe oko lewe, lewe oko prawe)

sbs2l
obok siebie równolegle z rozdzielczością połowy szerokości (lewe oko lewe, prawe oko)

sbs2r
obok siebie crosseye z rozdzielczością połowy szerokości (prawe oko lewe, lewe oko prawe)

abl powyżej-dolny (lewe oko powyżej, prawe oko poniżej)

Kwiecień powyżej-poniżej (prawe oko powyżej, lewe oko poniżej)

ab2l
powyżej i poniżej z rozdzielczością połowy wysokości (lewe oko powyżej, prawe oko poniżej)

ab2r
powyżej i poniżej z rozdzielczością połowy wysokości (prawe oko powyżej, lewe oko poniżej)

al naprzemienne ramki (lewe oko jako pierwsze, prawe oko jako drugie)

ar naprzemienne ramki (pierwsze prawe oko, drugie lewe)

Wartość domyślna to sbsl.

na zewnątrz Ustaw stereoskopowy format obrazu wyjściowego.

Dostępne wartości dla formatów obrazu wyjściowego to wszystkie formaty wejściowe oraz:

arbg
anaglif czerwony/niebieski szary (czerwony filtr na lewym oku, niebieski filtr na prawym oku)

argumentować
anaglif czerwony/zielony szary (czerwony filtr na lewym oku, zielony filtr na prawym oku)

łuk
anaglif czerwony/cyjan szary (czerwony filtr na lewym oku, cyjan filtr na prawym oku)

łuk
anaglif czerwony/cyjan w połowie kolorowy (czerwony filtr na lewym oku, cyjan filtr na prawym oku)

łuk
kolor anaglifowy czerwony/cyjan (czerwony filtr na lewym oku, cyjan filtr na prawym oku)

łuk
anaglyph czerwony/cyjan kolor zoptymalizowany z odwzorowaniem najmniejszych kwadratów dubois (czerwony
filtr na lewym oku, filtr cyjan na prawym oku)

Agmg
anaglif zielony/magenta szary (zielony filtr na lewym oku, filtr magenta na prawym)
oko)

ahhh
anaglif zielony/magenta w połowie kolorowy (zielony filtr na lewym oku, filtr magenta włączony)
prawe oko)

AGMC
anaglif w kolorze zielonym/magenta (zielony filtr na lewym oku, filtr magenta na prawym)
oko)

Agmd
anaglyph green/magenta kolor zoptymalizowany z odwzorowaniem najmniejszych kwadratów dubois
(zielony filtr na lewym oku, magenta na prawym oku)

ajbg
anaglif żółty/niebieski szary (żółty filtr na lewym oku, niebieski na prawym oku)

ajbha
anaglif żółty/niebieski w połowie kolorowy (żółty filtr na lewym oku, niebieski filtr na prawym)
oko)

aybc
anaglif żółto/niebieski kolor (żółty filtr na lewym oku, niebieski filtr na prawym oku)

tak
anaglif żółty/niebieski kolor zoptymalizowany z odwzorowaniem najmniejszych kwadratów dubois
(żółty filtr na lewym oku, niebieski na prawym oku)

Irl przeplatane rzędy (lewe oko ma górny rząd, prawe zaczyna się od następnego)

irra przeplatane rzędy (prawe oko ma górny rząd, lewe zaczyna się od następnego)

ml wyjście mono (tylko lewe oko)

mr wyjście mono (tylko prawe oko)

Wartość domyślna to łuk.

Przykłady

· Konwertuj wideo wejściowe obok siebie równolegle do anaglifowego żółtego/niebieskiego dubois:

stereo3d=sbsl:aybd

· Konwertuj wideo wejściowe z góry i dołu (lewe oko powyżej, prawe oko poniżej) na obok siebie
zez.

stereo3d=abl:sbsr

spp
Zastosuj prosty filtr przetwarzania końcowego, który kompresuje i dekompresuje obraz kilka razy
(lub - w przypadku jakość poziom 6 - wszystkie) zmiany i uśrednianie wyników.

Filtr akceptuje następujące opcje:

jakość
Ustaw jakość. Ta opcja określa liczbę poziomów do uśredniania. Akceptuje i
liczba całkowita z zakresu 0-6. Jeśli jest ustawiony na 0, filtr nie będzie działał. Wartość 6
oznacza wyższą jakość. Z każdym wzrostem tej wartości prędkość spada o współczynnik
około 2. Wartość domyślna to 3.

qp Wymuś stały parametr kwantyzacji. Jeśli nie zostanie ustawione, filtr użyje QP z
strumień wideo (jeśli jest dostępny).

tryb
Ustaw tryb progowania. Dostępne tryby to:

ciężko
Ustaw twardy próg (domyślnie).

miękki
Ustaw miękkie progi (lepszy efekt wygładzania, ale prawdopodobnie bardziej rozmyty).

użyj_bframe_qp
Włącz korzystanie z QP z ramek B, jeśli jest ustawione na 1. Użycie tej opcji może spowodować:
migotanie, ponieważ ramki B mają często większe QP. Wartość domyślna to 0 (nie włączone).

napisy na filmie obcojęzycznym
Narysuj napisy na wejściu wideo, korzystając z biblioteki libass.

Aby włączyć kompilację tego filtra, musisz skonfigurować FFmpeg z "--enable-libass".
Ten filtr wymaga również kompilacji z libavcodec i libavformat do konwersji przekazanych
plik napisów do formatu napisów ASS (Advanced Substation Alpha).

Filtr akceptuje następujące opcje:

Nazwa pliku, f
Ustaw nazwę pliku napisów do odczytu. Musi być określony.

oryginalny rozmiar
Określ rozmiar oryginalnego wideo, wideo, dla którego skomponowano plik ASS.
Aby poznać składnię tej opcji, sprawdź "Wideo rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg
podręcznik. Z powodu błędnego zaprojektowania arytmetyki proporcji ASS, jest to konieczne, aby:
poprawnie skalować czcionki, jeśli zmieniono proporcje.

katalog czcionek
Ustaw ścieżkę katalogu zawierającą czcionki, których może używać filtr. Te czcionki
będą używane oprócz tego, co używa dostawca czcionki.

charenc
Ustaw kodowanie znaków wejściowych napisów. Tylko filtr „napisy”. Przydatne tylko, jeśli nie
UTF-8.

strumień_indeks, si
Ustaw indeks strumienia napisów. Tylko filtr „napisy”.

styl_wymuszony
Zastąp domyślny styl lub parametry informacji o skrypcie napisów. Przyjmuje ciąg
zawierające pary w stylu ASS „KLUCZ=WARTOŚĆ” rozdzielone znakiem „”.

Jeśli pierwszy klucz nie jest określony, zakłada się, że pierwsza wartość określa
filename.

Na przykład, aby wyrenderować plik sub.srt na wierzchu wejściowego wideo użyj polecenia:

napisy=sub.srt

co jest równoznaczne z:

napisy=nazwa pliku=sub.srt

Aby renderować domyślny strumień napisów z pliku wideo.mkv, posługiwać się:

napisy=wideo.mkv

Aby wyrenderować drugi strumień napisów z tego pliku, użyj:

napisy=wideo.mkv:si=1

Aby napisy były przesyłane strumieniowo z sub.srt pojawiają się w przezroczystym zielonym "DejaVu Serif", użyj:

subtitles=sub.srt:force_style='FontName=DejaVu Serif,PrimaryColour=&HAA00FF00'

super2xsai
Skaluj wejście 2x i wygładzaj, korzystając z grafiki pikselowej Super2xSaI (skalowanie i interpolacja)
algorytm skalowania.

Przydatne do powiększania obrazów pixel art bez zmniejszania ostrości.

zamiana
Zamień płaszczyznę U i V.

telekine
Zastosuj proces telecine do wideo.

Ten filtr akceptuje następujące opcje:

pierwsze_pole
Top, t
najpierw górne pole

dolny, b
najpierw dolne pole Wartość domyślna to „top”.

wzorzec
Ciąg liczb reprezentujący rozwijany wzór, który chcesz zastosować. Domyślny
wartość wynosi 23.

Kilka typowych wzorów:

Wyjście NTSC (30i):
27.5p: 32222
24p: 23 (klasyczny)
24p: 2332 (preferowane)
20p: 33
18p: 334
16p: 3444

Wyjście PAL (25i):
27.5p: 12222
24p: 222222222223 („Rozwijanie euro”)
16.67p: 33
16p: 33333334

miniatur
Wybierz najbardziej reprezentatywną klatkę w danej sekwencji kolejnych klatek.

Filtr akceptuje następujące opcje:

n Ustaw wielkość partii ramek do analizy; w zestawie n ramki, filtr wybierze jedną
z nich, a następnie obsłużyć następną partię n ramki do końca. Wartość domyślna to 100.

Ponieważ filtr śledzi całą sekwencję klatek, większy n wartość spowoduje
większe zużycie pamięci, więc wysoka wartość nie jest zalecana.

Przykłady

· Wyodrębnij jedno zdjęcie na każde 50 klatek:

miniatura = 50

· Kompletny przykład tworzenia miniatury za pomocą ffmpeg:

ffmpeg -i in.avi -vf miniatura, skala=300:200 -ramki:v 1 out.png

dachówka
Ułóż kilka kolejnych ramek razem.

Filtr akceptuje następujące opcje:

układ
Ustaw rozmiar siatki (tzn. liczbę wierszy i kolumn). Dla składni tego
opcję, zaznacz "Wideo rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

nb_ramek
Ustaw maksymalną liczbę klatek do renderowania w danym obszarze. Musi być mniejsza niż lub
równy wxh. Wartość domyślna to 0, co oznacza, że ​​zostanie wykorzystany cały obszar.

margines
Ustaw zewnętrzny margines obramowania w pikselach.

wyściółka
Ustaw wewnętrzną grubość obramowania (tzn. liczbę pikseli między ramkami). Więcej
zaawansowane opcje dopełnienia (takie jak posiadanie różnych wartości dla krawędzi), patrz
pad filtr wideo.

kolor
Określ kolor nieużywanego obszaru. Aby sprawdzić składnię tej opcji, sprawdź „Kolor”
w podręczniku ffmpeg-utils. Domyślna wartość kolor jest czarne".

Przykłady

· Produkcja kafelków 8x8 PNG wszystkich klatek kluczowych (-pomiń ramkę brak klucza) w filmie:

ffmpeg -skip_frame nokey -i file.avi -vf 'scale=128:72,tile=8x8' -an -vsync 0 keyframes%03d.png

Połączenia -vsync 0 jest konieczne, aby zapobiec ffmpeg od zduplikowania każdej klatki wyjściowej do
dostosować pierwotnie wykrytą liczbę klatek na sekundę.

· Wyświetl 5 zdjęć w obszarze ramek „3x2”, z 7 pikselami między nimi i 2
piksele początkowego marginesu, używając mieszanych opcji płaskich i nazwanych:

tile=3x2:nb_frames=5:padding=7:margin=2

mikołajek
Wykonuj różne rodzaje czasowego przeplotu pól.

Klatki są liczone począwszy od 1, więc pierwsza ramka wejściowa jest uważana za nieparzystą.

Filtr akceptuje następujące opcje:

tryb
Określ tryb przeplotu. Ta opcja może być również określona jako wartość
sam. Zobacz poniżej listę wartości dla tej opcji.

Dostępne wartości to:

łączyć, 0
Przenieś nieparzyste klatki do górnego pola, a nawet do dolnego, generując a
ramka o podwójnej wysokości przy połowie szybkości klatek.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Wyjście:
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444
11111 33333
22222 44444

nieparzyste, 1
Wyprowadza tylko parzyste ramki, nieparzyste ramki są odrzucane, generując ramkę bez zmian
wysokość przy połowie szybkości klatek.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Wyjście:
22222 44444
22222 44444
22222 44444
22222 44444

spadek_nawet, 2
Wyprowadza tylko nieparzyste ramki, parzyste ramki są odrzucane, generując ramkę bez zmian
wysokość przy połowie szybkości klatek.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Wyjście:
11111 33333
11111 33333
11111 33333
11111 33333

Podkładka, 3
Rozszerz każdą klatkę do pełnej wysokości, ale dopełnij naprzemienne linie kolorem czarnym, generując
ramka o podwójnej wysokości przy tej samej wejściowej liczbie klatek na sekundę.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Wyjście:
11111..... 33333.....
..... 22222..... 44444
11111..... 33333.....
..... 22222..... 44444
11111..... 33333.....
..... 22222..... 44444
11111..... 33333.....
..... 22222..... 44444

przeplot_top, 4
Przeplataj górne pole z klatek nieparzystych z dolnym polem z klatek parzystych,
generowanie klatki o niezmienionej wysokości przy połowie szybkości klatek.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-

Wyjście:
11111 33333
22222 44444
11111 33333
22222 44444

przeplot_dół, 5
Przeplataj dolne pole z klatek nieparzystych z górnym polem z klatek parzystych,
generowanie klatki o niezmienionej wysokości przy połowie szybkości klatek.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444
11111 22222<- 33333 44444<-
11111<- 22222 33333<- 44444

Wyjście:
22222 44444
11111 33333
22222 44444
11111 33333

przeplotex2, 6
Podwójna liczba klatek na sekundę przy niezmienionej wysokości. Wstawiane są ramki, z których każda zawiera
drugie pole czasowe z poprzedniej ramki wejściowej i pierwsze pole czasowe
z następnej ramki wejściowej. Ten tryb opiera się na fladze top_field_first. Użyteczne
do wyświetlaczy wideo z przeplotem bez synchronizacji pola.

------> czas
Wejście:
Klatka 1 Klatka 2 Klatka 3 Klatka 4

11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444
11111 22222 33333 44444

Wyjście:
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

Wartości liczbowe są przestarzałe, ale są akceptowane ze względu na zgodność z poprzednimi wersjami.

Tryb domyślny to „scalanie”.

Flagi
Określ flagi wpływające na proces filtrowania.

Dostępna wartość dla Flagi jest:

Filtr dolnoprzepustowy, vlfp
Włącz pionowe filtrowanie dolnoprzepustowe w filtrze. Pionowe filtrowanie dolnoprzepustowe jest
wymagane podczas tworzenia miejsca docelowego z przeplotem z progresywnego źródła, które
zawiera pionowe szczegóły o wysokiej częstotliwości. Filtrowanie zmniejszy „twitter” z przeplotem
i wzór mory.

Pionowe filtrowanie dolnoprzepustowe można włączyć tylko dla tryb przeplot_top i
przeplot_dół.

transponować
Transponuj wiersze z kolumnami w wejściowym wideo i opcjonalnie je odwróć.

Przyjmuje następujące parametry:

reż Określ kierunek transpozycji.

Może przyjąć następujące wartości:

0, 4, zegar_przerzucanie
Obróć o 90 stopni w kierunku przeciwnym do ruchu wskazówek zegara i odwróć w pionie (domyślnie), czyli:

LR Ll
. . -> . .
lr rr

1, 5, zegar
Obróć o 90 stopni zgodnie z ruchem wskazówek zegara, czyli:

LR lL
. . -> . .
lr rR

2, 6, zegar
Obróć o 90 stopni w lewo, czyli:

LR Rr
. . -> . .
lr Ll

3, 7, zegar_przerzucanie
Obróć o 90 stopni zgodnie z ruchem wskazówek zegara i odwróć w pionie, czyli:

LR rR
. . -> . .
lr lL

W przypadku wartości między 4-7 transpozycja jest wykonywana tylko wtedy, gdy geometria wejściowego wideo to
portret, a nie krajobraz. Te wartości są przestarzałe, opcja „przekazywanie”
powinien być użyty zamiast tego.

Wartości liczbowe są przestarzałe i należy je odrzucić na rzecz stałych symbolicznych.

Przejść przez
Nie stosuj transpozycji, jeśli geometria wejściowa jest zgodna z geometrią określoną przez
określona wartość. Przyjmuje następujące wartości:

Żaden
Zawsze stosuj transpozycję.

portret
Zachowaj geometrię pionową (gdy wysokość >= szerokość).

krajobraz
Zachowaj geometrię krajobrazu (kiedy szerokość >= wysokość).

Wartość domyślna to „brak”.

Na przykład, aby obrócić o 90 stopni zgodnie z ruchem wskazówek zegara i zachować układ pionowy:

transpose=dir=1:passthrough=portret

Powyższe polecenie można również określić jako:

transpozycja=1:portret

trym
Przytnij dane wejściowe tak, aby dane wyjściowe zawierały jedną ciągłą podczęść danych wejściowych.

Przyjmuje następujące parametry:

początek
Określ czas rozpoczęcia zachowanej sekcji, czyli klatkę ze znacznikiem czasu
początek będzie pierwszą klatką na wyjściu.

zakończenia Określ czas pierwszej klatki, która zostanie pominięta, tj. klatka natychmiast
poprzedzające tę z sygnaturą czasową zakończenia będzie ostatnią klatką na wyjściu.

punkty_początkowe
To to samo co początek, z wyjątkiem tego, że ta opcja ustawia znacznik czasu rozpoczęcia w podstawie czasu
jednostki zamiast sekund.

koniec_pts
To to samo co zakończenia, z wyjątkiem tej opcji ustawia znacznik czasu zakończenia w jednostkach podstawy czasu
zamiast sekund.

czas trwania
Maksymalny czas trwania wyjścia w sekundach.

ramka_początkowa
Numer pierwszej klatki, która powinna zostać przekazana do wyjścia.

ramka_końcowa
Numer pierwszej klatki, która powinna zostać usunięta.

początek, zakończenia, czas trwania są wyrażone jako specyfikacje czasu trwania; zobaczyć dotychczasowy Czas
czas trwania Sekcja in dotychczasowy narzędzia ffmpeg(1) podręcznik dla przyjętej składni.

Zwróć uwagę, że pierwsze dwa zestawy opcji początku/końca oraz czas trwania opcja spójrz na
znacznik czasu ramki, podczas gdy warianty _frame po prostu liczą ramki, które przechodzą przez
filtr. Należy również pamiętać, że ten filtr nie modyfikuje znaczników czasu. Jeśli chcesz
wyjściowe znaczniki czasu, aby zaczynały się od zera, wstaw filtr setpts po filtrze przycinania.

Jeśli ustawionych jest wiele opcji rozpoczęcia lub zakończenia, ten filtr stara się być zachłanny i zachować wszystkie
ramki, które pasują do co najmniej jednego z określonych ograniczeń. Aby zachować tylko tę część, która
dopasowuje wszystkie ograniczenia jednocześnie, łączy wiele filtrów przycinania.

Wartości domyślne są takie, że wszystkie dane wejściowe są zachowywane. Można więc ustawić np. tylko
wartości końcowe, aby zachować wszystko przed określonym czasem.

Przykłady:

· Porzuć wszystko oprócz drugiej minuty wprowadzania danych:

ffmpeg -i WEJŚCIE -vf przycinanie=60:120

· Zachowaj tylko pierwszą sekundę:

ffmpeg -i WEJŚCIE -vf przycinanie=czas trwania=1

wyostrz
Wyostrz lub rozmyj wideo wejściowe.

Przyjmuje następujące parametry:

luma_mrozmiar_x, lx
Ustaw poziomą wielkość luma matrix. Musi to być liczba nieparzysta z przedziału od 3 do 63
wartość domyślna to 5.

luma_mrozmiar_y, ly
Ustaw pionowy rozmiar matrycy luma. Musi to być liczba nieparzysta z przedziału od 3 do 63
wartość domyślna to 5.

luma_ilość, la
Ustaw siłę efektu luma. Musi to być liczba zmiennoprzecinkowa, rozsądne wartości
leżał między -1.5 a 1.5.

Wartości ujemne spowodują rozmycie wejściowego wideo, a wartości dodatnie go wyostrzą, a
wartość zero wyłączy efekt.

Wartość domyślna to 1.0.

kolor_mrozmiar_x, cx
Ustaw rozmiar poziomy matrycy chromatycznej. Musi to być liczba nieparzysta z przedziału od 3 do 63
wartość domyślna to 5.

chroma_mrozmiar_y, cy
Ustaw pionowy rozmiar matrycy chromatycznej. Musi to być liczba nieparzysta z przedziału od 3 do 63
wartość domyślna to 5.

ilość_koloru, ca
Ustaw siłę efektu chromatycznego. Musi to być liczba zmiennoprzecinkowa, rozsądne wartości
leżał między -1.5 a 1.5.

Wartości ujemne spowodują rozmycie wejściowego wideo, a wartości dodatnie go wyostrzą, a
wartość zero wyłączy efekt.

Wartość domyślna to 0.0.

otwórzcl
Jeśli ustawiono na 1, określ za pomocą funkcji OpenCL, dostępne tylko wtedy, gdy FFmpeg był
skonfigurowany z "--enable-opencl". Wartość domyślna to 0.

Wszystkie parametry są opcjonalne i domyślnie odpowiadają ciągowi „5:5:1.0:5:5:0.0”.

Przykłady

· Zastosuj mocny efekt wyostrzenia lumy:

unsharp=luma_msize_x=7:luma_msize_y=7:luma_amount=2.5

· Zastosuj silne rozmycie zarówno parametrów luma, jak i chroma:

unsharp=7:7:-2:7:7:-2

usp
Zastosuj ultra wolny/prosty filtr przetwarzania końcowego, który kompresuje i dekompresuje obraz
na kilka (lub - w przypadku jakość poziom 8 - wszystkie) zmiany i uśrednianie wyników.

Sposób, w jaki różni się to od zachowania spp, polega na tym, że uspp faktycznie koduje i dekoduje każdy
przypadek z libavcodec Snow, podczas gdy spp używa uproszczonego intra tylko 8x8 DCT podobne do
MJPEG.

Filtr akceptuje następujące opcje:

jakość
Ustaw jakość. Ta opcja określa liczbę poziomów do uśredniania. Akceptuje i
liczba całkowita z zakresu 0-8. Jeśli jest ustawiony na 0, filtr nie będzie działał. Wartość 8
oznacza wyższą jakość. Z każdym wzrostem tej wartości prędkość spada o współczynnik
około 2. Wartość domyślna to 3.

qp Wymuś stały parametr kwantyzacji. Jeśli nie zostanie ustawione, filtr użyje QP z
strumień wideo (jeśli jest dostępny).

wektoskop
Wyświetl 2 wartości składowych kolorów na dwuwymiarowym wykresie (nazywanym a
wektoroskop).

Ten filtr akceptuje następujące opcje:

tryb, m
Ustaw tryb wektoroskopu.

Przyjmuje następujące wartości:

szary
Wartości szarości są wyświetlane na wykresie, wyższa jasność oznacza, że ​​więcej pikseli ma to samo
wartość koloru składnika w lokalizacji na wykresie. To jest tryb domyślny.

kolor
Wartości szarości są wyświetlane na wykresie. Wartości otaczających pikseli, które nie są
obecne w ramce wideo są rysowane w gradiencie 2 ustawionych składowych kolorów
przez opcję "x" i "y".

color2
Rzeczywiste wartości składowych kolorów obecnych w klatce wideo są wyświetlane na wykresie.

color3
Podobnie jak color2, ale wyższa częstotliwość tych samych wartości „x” i „y” na wykresie
zwiększa wartość innego składnika koloru, jakim jest domyślna luminancja
z „x” i „y”.

color4
Aktualne kolory obecne w kadrze wideo są wyświetlane na wykresie. Jeśli dwa różne
kolory mapują się do tej samej pozycji na wykresie niż kolor z wyższą wartością składnika nie
obecny na wykresie jest wybierany.

x Ustaw, który składnik koloru będzie reprezentowany na osi X. Wartość domyślna to 1.

y Ustaw, który składnik koloru będzie reprezentowany na osi Y. Wartość domyślna to 2.

intensywność, i
Ustaw intensywność, używaną przez tryby: szary, kolor i kolor3 w celu zwiększenia jasności
składnik koloru, który reprezentuje częstotliwość lokalizacji (X, Y) na wykresie.

koperta, e
Żaden
Brak koperty, to jest ustawienie domyślne.

natychmiastowy
Natychmiastowa koperta, nawet najciemniejszy pojedynczy piksel będzie wyraźnie podświetlony.

szczyt
Utrzymuj maksymalne i minimalne wartości przedstawione na wykresie w czasie. W ten sposób możesz
nadal wykrywa wartości poza zakresem bez ciągłego patrzenia na wektoroskop.

szczyt+natychmiastowy
Obwiednia szczytowa i natychmiastowa połączone razem.

vidstabdetect
Przeanalizuj stabilizację wideo/otrząsanie się. Wykonaj przejście 1 z 2, zobacz vidstabtransformacja za przepustkę
2.

Ten filtr generuje plik z informacjami o względnym przesunięciu i przekształceniu obrotu
o kolejnych klatkach, które są następnie wykorzystywane przez vidstabtransformacja filtr.

Aby umożliwić kompilację tego filtra musisz skonfigurować FFmpeg za pomocą
„--włącz-libvidstab”.

Ten filtr akceptuje następujące opcje:

dalsze
Ustaw ścieżkę do pliku używanego do zapisywania informacji o przekształceniach. Wartość domyślna to
transformuje.trf.

drżenie
Ustaw, jak chwiejny jest film i jak szybki jest aparat. Przyjmuje liczbę całkowitą w
zakres 1-10, wartość 1 oznacza małą drżenie, wartość 10 oznacza silne drżenie.
Wartość domyślna to 5.

precyzja
Ustaw dokładność procesu wykrywania. Musi to być wartość z zakresu 1-15. A
wartość 1 oznacza niską dokładność, wartość 15 oznacza wysoką dokładność. Wartość domyślna to 15.

Rozmiar kroku
Ustaw wielkość kroku procesu wyszukiwania. Obszar wokół minimum jest skanowany z 1 pikselem
Rezolucja. Wartość domyślna to 6.

minimalny kontrast
Ustaw minimalny kontrast. Poniżej tej wartości lokalne pole pomiaru jest odrzucane. Musi być
wartość zmiennoprzecinkowa w zakresie 0-1. Wartość domyślna to 0.3.

statyw
Ustaw numer klatki odniesienia dla trybu statywu.

Jeśli ta opcja jest włączona, ruch ramek jest porównywany z ramką odniesienia w filtrowanym
strumień, identyfikowany przez określony numer. Chodzi o to, aby skompensować wszystkie ruchy w
mniej lub bardziej statyczną scenę i utrzymuj widok z kamery absolutnie nieruchomo.

Jeśli jest ustawiony na 0, jest wyłączony. Klatki liczone są od 1.

pokazać
Pokaż pola i przekształcenia w wynikowych ramkach. Przyjmuje liczbę całkowitą z zakresu
0-2. Wartość domyślna to 0, co wyłącza dowolną wizualizację.

Przykłady

· Użyj wartości domyślnych:

vidstabdetect

· Analizuj mocno drżący film i umieść wyniki w pliku mojetransformacje.trf:

vidstabdetect=drżenie=10:dokładność=15:result="mytransforms.trf"

· Wizualizuj wynik wewnętrznych przekształceń w powstałym filmie:

vidstabdetect=pokaż=1

· Analizuj wideo ze średnią drżeniem, używając ffmpeg:

ffmpeg -i input -vf vidstabdetect=shakiness=5:show=1 manekin.avi

vidstabtransformacja
Stabilizacja wideo/otrząsanie się: przejście 2 z 2, patrz vidstabdetect za przepustkę 1.

Przeczytaj plik z informacjami o transformacji dla każdej klatki i zastosuj/skompensuj je. Razem
z vidstabdetect filtr, który może służyć do rozbijania filmów. Zobacz też
<http://public.hronopik.de/vid.stab>. Ważne jest również, aby używać wyostrz filtr, patrz
poniżej.

Aby umożliwić kompilację tego filtra musisz skonfigurować FFmpeg za pomocą
„--włącz-libvidstab”.

Opcje

wkład
Ustaw ścieżkę do pliku używanego do odczytu przekształceń. Wartość domyślna to transformuje.trf.

wygładzanie
Ustaw liczbę klatek (wartość*2 + 1) używanych do filtrowania dolnoprzepustowego kamery
ruchy. Wartość domyślna to 10.

Na przykład liczba 10 oznacza, że ​​używanych jest 21 klatek (10 w przeszłości i 10 w okresie
przyszłości), aby wygładzić ruch w filmie. Większa wartość prowadzi do płynniejszego wideo,
ale ogranicza przyspieszenie kamery (ruchy pan/tilt). 0 to przypadek szczególny
gdzie symulowana jest kamera statyczna.

optalgo
Ustaw algorytm optymalizacji ścieżki kamery.

Akceptowane wartości to:

gaus
filtr dolnoprzepustowy jądra Gaussa przy ruchu kamery (domyślnie)

Średnia uśrednianie na przekształceniach

maksymalna zmiana
Ustaw maksymalną liczbę pikseli do przetłumaczenia klatek. Wartość domyślna to -1, co oznacza nie
limit.

maksymalny kąt
Ustaw maksymalny kąt w radianach (stopnie*PI/180), aby obrócić klatki. Wartość domyślna to -1,
co oznacza brak limitu.

wole
Określ, jak radzić sobie z granicami, które mogą być widoczne z powodu kompensacji ruchu.

Dostępne wartości to:

zachować
zachowaj informacje o obrazie z poprzedniej klatki (domyślnie)

czarny
wypełnij czarne obramowanie

odwracać
Odwróć transformacje, jeśli jest ustawione na 1. Wartość domyślna to 0.

względny
Rozważ transformacje jako względne w stosunku do poprzedniej klatki, jeśli jest ustawione na 1, bezwzględne, jeśli ustawione na 0.
Wartość domyślna to 0.

zoom
Ustaw procent do powiększenia. Wartość dodatnia spowoduje efekt powiększenia, a ujemna
wartość w efekcie oddalenia. Wartość domyślna to 0 (bez powiększenia).

zoom optyczny
Ustaw optymalne powiększanie, aby uniknąć obramowań.

Akceptowane wartości to:

0 niepełnosprawny

1 określana jest optymalna wartość zoomu statycznego (tylko bardzo silne ruchy prowadzą do
widoczne granice) (domyślnie)

2 określana jest optymalna wartość zoomu adaptacyjnego (brak będzie widocznych granic), patrz
prędkość zoomu

Zauważ, że wartość podana przy powiększeniu jest dodawana do obliczonej tutaj.

prędkość zoomu
Ustaw procent, aby maksymalnie powiększyć każdą klatkę (włączone, gdy zoom optyczny jest ustawiony na 2). Zakres to
od 0 do 5, domyślna wartość to 0.25.

interpol
Określ typ interpolacji.

Dostępne wartości to:

Nie bez interpolacji

liniowy
liniowa tylko pozioma

dwuliniowy
liniowy w obu kierunkach (domyślnie)

dwusześcienny
sześcienny w obu kierunkach (wolno)

statyw
Włącz tryb wirtualnego statywu, jeśli jest ustawiony na 1, co odpowiada
„względny=0:wygładzanie=0”. Wartość domyślna to 0.

Użyj również opcji „statyw” z vidstabdetect.

debug
Zwiększ szczegółowość dziennika, jeśli jest ustawiona na 1. Również wykryte ruchy globalne są zapisywane w
plik tymczasowy global_motions.trf. Wartość domyślna to 0.

Przykłady

· Posługiwać się ffmpeg dla typowej stabilizacji z wartościami domyślnymi:

ffmpeg -i inp.mpeg -vf vidstabtransform,unsharp=5:5:0.8:3:3:0.4 inp_stabilized.mpeg

Zwróć uwagę na użycie wyostrz filtr, który jest zawsze zalecany.

· Powiększ trochę i załaduj dane transformacji z danego pliku:

vidstabtransform=zoom=5:input="mojetransformacje.trf"

· Wygładź wideo jeszcze bardziej:

vidstabtransform=wygładzanie=30

vflip
Odwróć wejściowy obraz wideo w pionie.

Na przykład, aby obrócić wideo w pionie za pomocą ffmpeg:

ffmpeg -i in.avi -vf "vflip" out.avi

winieta
Stwórz lub odwróć naturalny efekt winietowania.

Filtr akceptuje następujące opcje:

kąt, a
Ustaw wyrażenie kąta obiektywu jako liczbę radianów.

Wartość jest obcinana w zakresie „[0,PI/2]”.

Wartość domyślna: „PI/5”

x0
y0 Ustaw wyrażenia współrzędnych środka. Odpowiednio „w/2” i „h/2” domyślnie.

tryb
Ustaw tryb do przodu/do tyłu.

Dostępne tryby to:

Naprzód
Im większa odległość od centralnego punktu, tym ciemniejszy staje się obraz.

do tyłu
Im większa odległość od centralnego punktu, tym jaśniejszy obraz.
Można to wykorzystać do odwrócenia efektu winiety, chociaż nie ma automatycznego
wykrywanie w celu wyjęcia soczewki kąt i inne ustawienia (jeszcze). Może być również używany
aby stworzyć efekt spalania.

Wartość domyślna to Naprzód.

eval
Ustaw tryb oceny dla wyrażeń (kąt, x0, y0).

Przyjmuje następujące wartości:

startowych
Oceń wyrażenia tylko raz podczas inicjowania filtru.

rama
Oceń wyrażenia dla każdej przychodzącej ramki. To jest o wiele wolniejsze niż startowych
tryb, ponieważ wymaga ponownego przeliczenia wszystkich skalerów, ale umożliwia zaawansowane
wyrażenia dynamiczne.

Wartość domyślna to startowych.

dither
Ustaw dithering, aby zredukować efekty kołowych pasm. Wartość domyślna to 1 (włączone).

aspekt
Ustaw aspekt winiety. To ustawienie pozwala dostosować kształt winiety.
Ustawienie tej wartości na SAR wejścia spowoduje winietowanie prostokątne
zgodnie z wymiarami wideo.

Wartość domyślna to „1/1”.

Expressions

Połączenia alfa, x0 i y0 wyrażenia mogą zawierać następujące parametry.

w
h szerokość i wysokość wejściowa

n liczba klatek wejściowych, zaczynając od 0

pkt czas PTS (Presentation TimeStamp) przefiltrowanej klatki wideo, wyrażony w TB
jednostki, NAN jeśli nieokreślone

r liczba klatek na sekundę wejściowego wideo, NAN, jeśli liczba klatek na sekundę wejściowa jest nieznana

t PTS (Presentation TimeStamp) przefiltrowanej klatki wideo, wyrażony w sekundach,
NAN, jeśli nieokreślony

tb podstawa czasu wejściowego wideo

Przykłady

· Zastosuj prosty, mocny efekt winietowania:

winieta=PI/4

· Zrób migoczące winietowanie:

winieta='PI/4+przypadkowy(1)*PI/50':ocena=ramka

vsstack
Ułóż wideo wejściowe w pionie.

Wszystkie strumienie muszą mieć ten sam format pikseli i tę samą szerokość.

Pamiętaj, że ten filtr jest szybszy niż używanie narzuta i ścieżka filtr, aby utworzyć ten sam wynik.

Filtr akceptuje następującą opcję:

nb_wejść
Ustaw liczbę strumieni wejściowych. Wartość domyślna to 2.

w3fdif
Usuń przeplot wideo wejściowego („w3fdif” oznacza „Weston 3 Field Deinterlacing Filter”).

W oparciu o proces opisany przez Martina Westona dla BBC R&D i wdrożony w oparciu o
algorytm usuwania przeplotu napisany przez Jima Easterbrooka dla BBC R&D, pole Weston 3
filtr usuwania przeplotu wykorzystuje współczynniki filtru obliczone przez BBC R&D.

Istnieją dwa zestawy współczynników filtra, tzw. „prosty” i „złożony”. Który zestaw
stosowane współczynniki filtra można ustawić, przekazując opcjonalny parametr:

filtrować
Ustaw współczynniki filtra przeplotu. Akceptuje jedną z następujących wartości:

prosty
Prosty zestaw współczynników filtra.

kompleks
Bardziej złożony zestaw współczynników filtra.

Wartość domyślna to kompleks.

det
Określ, które klatki usunąć z przeplotu. Zaakceptuj jedną z następujących wartości:

cała kolekcja Usuń przeplot ze wszystkich klatek,

z przeplotem
Usuwaj tylko klatki oznaczone jako z przeplotem.

Wartość domyślna to cała kolekcja.

kształt fali
Monitor przebiegu wideo.

Monitor przebiegu kreśli intensywność składowej koloru. Domyślnie tylko luminancja. Każdy
kolumna przebiegu odpowiada kolumnie pikseli w źródłowym wideo.

Akceptuje następujące opcje:

tryb, m
Może być „wierszem” lub „kolumną”. Domyślnie jest to „kolumna”. W trybie wiersza wykres na
lewa strona reprezentuje wartość składową koloru 0, a prawa strona reprezentuje wartość =
255. W trybie kolumnowym górna strona reprezentuje wartość składowej koloru = 0, a dolna strona
reprezentuje wartość = 255.

intensywność, i
Ustaw intensywność. Mniejsze wartości są przydatne, aby dowiedzieć się, ile wartości tego samego
luminancja jest rozłożona na wejściowe wiersze/kolumny. Wartość domyślna to 0.04. Dozwolony
zakres to [0, 1].

lustro, r
Ustaw tryb dublowania. 0 oznacza bez dublowania, 1 oznacza dublowanie. W trybie lustrzanym, wyższa
wartości będą reprezentowane po lewej stronie dla trybu „wiersz” i na górze dla „kolumny”
tryb. Wartość domyślna to 1 (dublowane).

wyświetlacz, d
Ustaw tryb wyświetlania. Przyjmuje następujące wartości:

narzuta
Przedstawia informacje identyczne jak w „paradzie”, z tym wyjątkiem, że wykresy
reprezentujące składniki kolorów nakładają się bezpośrednio na siebie.

Ten tryb wyświetlania ułatwia dostrzeżenie względnych różnic lub podobieństw w
nakładające się na siebie obszary składowych koloru, które mają być identyczne, np.
jako neutralne biele, szarości lub czernie.

parada
Wyświetl osobny wykres dla składników koloru obok siebie w trybie „wiersz” lub jeden
poniżej drugiego w trybie „kolumny”.

Korzystanie z tego trybu wyświetlania ułatwia dostrzeżenie przebarwień w obszarach prześwietlonych i
cienie obrazu, porównując kontury górnego i dolnego wykresu
każdy przebieg. Ponieważ biele, szarości i czernie charakteryzują się dokładnie równymi
ilość czerwonych, zielonych i niebieskich, neutralnych obszarów obrazu powinna wyświetlać trzy
przebiegi o mniej więcej równej szerokości/wysokości. Jeśli nie, korekta jest łatwa do wykonania
dokonując regulacji poziomu trzech przebiegów.

Domyślnie jest to „parada”.

składniki, c
Ustaw, które składniki kolorów mają być wyświetlane. Wartość domyślna to 1, co oznacza tylko luminancję lub czerwień
składnik koloru, jeśli wejście jest w przestrzeni kolorów RGB. Jeśli jest ustawiony na przykład na 7, będzie
wyświetl wszystkie 3 (jeśli) dostępne składniki kolorów.

koperta, e
Żaden
Brak koperty, to jest ustawienie domyślne.

natychmiastowy
Natychmiastowa koperta, wartości minimalne i maksymalne prezentowane na wykresie będą łatwe
widoczne nawet przy małej wartości „kroku”.

szczyt
Utrzymuj minimalne i maksymalne wartości przedstawione na wykresie w czasie. W ten sposób możesz
nadal wykrywa wartości poza zakresem bez ciągłego patrzenia na przebiegi.

szczyt+natychmiastowy
Obwiednia szczytowa i natychmiastowa połączone razem.

filtr, f
dolnoprzepustowy
Brak filtrowania, jest to ustawienie domyślne.

mieszkanie
Luma i chroma połączone razem.

mieszkanie
Podobnie jak powyżej, ale pokazuje różnicę między kolorem niebieskim i czerwonym.

chroma
Wyświetla tylko kolor.

achromia
Podobnie jak powyżej, ale pokazuje różnicę między kolorem niebieskim i czerwonym.

kolor
Wyświetla aktualną wartość koloru na przebiegu.

xbr
Zastosuj wysokiej jakości filtr powiększenia xBR, który jest przeznaczony do sztuki pikselowej. To
przestrzega zestawu reguł wykrywania krawędzi, patrz
<http://www.libretro.com/forums/viewtopic.php?f=6&t=134>.

Akceptuje następującą opcję:

n Ustaw wymiar skalowania: 2 dla „2xBR”, 3 dla „3xBR” i 4 dla „4xBR”. Wartość domyślna to 3.

jadif
Usuń przeplot z wejściowego wideo („yadif” oznacza „jeszcze inny filtr usuwający przeplot”).

Przyjmuje następujące parametry:

tryb
Tryb przeplotu do przyjęcia. Przyjmuje jedną z następujących wartości:

0, wyślij ramkę
Wyprowadza jedną klatkę na każdą klatkę.

1, pole_wyslij
Wyprowadza jedną ramkę dla każdego pola.

2, send_frame_nospatial
Podobnie jak „send_frame”, ale pomija sprawdzanie przeplotu przestrzennego.

3, send_field_nospatial
Podobnie jak „send_field”, ale pomija sprawdzanie przeplotu przestrzennego.

Wartość domyślna to „send_frame”.

parytet
Parzystość pola obrazu przyjęta dla wejściowego wideo z przeplotem. Przyjmuje jedną z
następujące wartości:

0, tff
Załóżmy, że górne pole jest pierwsze.

1, bff
Załóżmy, że dolne pole jest pierwsze.

-1, samochód
Włącz automatyczne wykrywanie parzystości pola.

Wartość domyślna to „auto”. Jeśli przeplot jest nieznany lub dekoder nie
eksportuj te informacje, jako pierwsze zostanie przyjęte górne pole.

det
Określ, które klatki usunąć z przeplotu. Zaakceptuj jedną z następujących wartości:

0, cała kolekcja
Usuń przeplot ze wszystkich klatek.

1, z przeplotem
Usuwaj tylko klatki oznaczone jako z przeplotem.

Wartość domyślna to „wszystkie”.

przybliżenie
Zastosuj efekt powiększania i panoramowania.

Ten filtr akceptuje następujące opcje:

Powiększenie, z
Ustaw wyrażenie powiększenia. Wartość domyślna to 1.

x
y Ustaw wyrażenie x i y. Wartość domyślna to 0.

d Ustaw wyrażenie czasu trwania w liczbie klatek. Ustawia to ile
Efekt klatek będzie trwał dla pojedynczego obrazu wejściowego.

s Ustaw rozmiar obrazu wyjściowego, domyślnie jest to „hd720”.

Każde wyrażenie może zawierać następujące stałe:

w_w, iw
Szerokość wejściowa.

w_h, ih
Wysokość wejściowa.

out_w, ow
Szerokość wyjściowa.

poza_h, oh
Wysokość wyjściowa.

in Liczba klatek wejściowych.

on Liczba klatek wyjściowych.

x
y Ostatnio obliczona pozycja 'x' i 'y' z wyrażenia 'x' i 'y' dla bieżącego wejścia
rama.

px
py 'x' i 'y' ostatniej ramki wyjściowej poprzedniej ramki wejściowej lub 0, gdy jeszcze nie było
taka ramka (pierwsza ramka wejściowa).

zoom
Ostatnio obliczone powiększenie z wyrażenia „z” dla bieżącej klatki wejściowej.

pzoom
Ostatnie obliczone powiększenie ostatniej klatki wyjściowej poprzedniej klatki wejściowej.

czas trwania
Liczba ramek wyjściowych dla bieżącej ramki wejściowej. Obliczone na podstawie wyrażenia „d” dla
każdą ramkę wejściową.

czas trwania
liczba ramek wyjściowych utworzonych dla poprzedniej ramki wejściowej

a Liczba wymierna: szerokość wejściowa / wysokość wejściowa

sar przykładowe proporcje

dar proporcje wyświetlacza

Przykłady

· Powiększ do 1.5 i jednocześnie przesuń do jakiegoś miejsca w pobliżu środka obrazu:

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

· Powiększanie do 1.5 i panoramowanie zawsze na środku obrazu:

zoompan=z='min(zoom+0.0015,1.5)':d=700:x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)'

VIDEO ŹRÓDŁA


Poniżej znajduje się opis aktualnie dostępnych źródeł wideo.

bufor
Buforuj klatki wideo i udostępniaj je w łańcuchu filtrów.

To źródło jest przeznaczone głównie do użytku programistycznego, w szczególności za pośrednictwem interfejsu
zdefiniowane w libavfilter/vsrc_buffer.h.

Przyjmuje następujące parametry:

rozmiar wideo
Określ rozmiar (szerokość i wysokość) buforowanych klatek wideo. Dla składni
tę opcję, sprawdź "Wideo rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

szerokość
Wejściowa szerokość wideo.

wysokość
Wejściowa wysokość wideo.

pix_fmt
Ciąg reprezentujący format pikseli buforowanych klatek wideo. To może być
liczba odpowiadająca formatowi piksela lub nazwa formatu piksela.

podstawa czasu
Określ podstawę czasu przyjmowaną przez sygnatury czasowe buforowanych ramek.

częstotliwość wyświetlania klatek
Określ oczekiwaną liczbę klatek na sekundę dla strumienia wideo.

piksel_aspekt, sar
Współczynnik proporcji próbki (pikseli) wejściowego wideo.

sws_param
Określ opcjonalne parametry, które mają być używane dla filtra skali, który jest automatycznie
wstawiany, gdy zostanie wykryta zmiana rozmiaru wejściowego lub formatu wejściowego.

Na przykład:

buffer=width=320:height=240:pix_fmt=yuv410p:time_base=1/24:sar=1

poinstruuje źródło, aby akceptowało klatki wideo o rozmiarze 320x240 i formacie
"yuv410p", przy założeniu, że podstawą czasową sygnatury czasowej jest 1/24 i kwadratowymi pikselami (przykładowy aspekt 1:1)
stosunek). Ponieważ format piksela o nazwie „yuv410p” odpowiada liczbie 6 (sprawdź
enum AVPixelFormat definicja w libavutil/pixfmt.h), ten przykład odpowiada:

buffer=size=320x240:pixfmt=6:time_base=1/24:pixel_aspect=1/1

Alternatywnie opcje można określić jako płaski ciąg, ale ta składnia to
przestarzałe:

szerokość:wysokość:pix_fmt:podstawa_czasu.liczba:baza_czasu.den:piksel_aspekt.num:piksel_aspekt.den[:sws_param]

komórka
Utwórz wzór wygenerowany przez elementarny automat komórkowy.

Początkowy stan automatu komórkowego można określić za pomocą filename,
wzorzec opcje. Jeśli takie opcje nie zostaną określone, stan początkowy jest tworzony losowo.

W każdej nowej klatce nowy wiersz w filmie jest wypełniany wynikiem komórkowym
automat nowej generacji. Zachowanie, gdy cała ramka jest wypełniona, jest określone przez
przewijać opcja.

To źródło akceptuje następujące opcje:

Nazwa pliku, f
Odczytaj początkowy stan automatu komórkowego, tj. początkowy wiersz, z podanego
plik. W pliku każdy znak inny niż biały jest uważany za żywą komórkę, a
znak nowej linii zakończy wiersz, a dalsze znaki w pliku zostaną zignorowane.

wzór, p
Odczytaj początkowy stan automatu komórkowego, tj. początkowy wiersz, z podanego
ciąg.

Każdy znak inny niż biały w łańcuchu jest uważany za żywą komórkę, znak nowej linii
zakończy wiersz, a dalsze znaki w ciągu zostaną zignorowane.

oceniać, r
Ustaw szybkość wideo, czyli liczbę klatek generowanych na sekundę. Wartość domyślna to 25.

współczynnik_losowego_wypełnienia, stosunek
Ustaw losowy współczynnik wypełnienia dla początkowego wiersza automatu komórkowego. To jest unoszące się
wartość numeru punktu w zakresie od 0 do 1, domyślnie 1/PHI.

Ta opcja jest ignorowana, gdy określony jest plik lub wzorzec.

losowe_ziarno, nasienie
Ustaw ziarno do losowego wypełnienia początkowego rzędu, musi być liczbą całkowitą zawartą między
0 i UINT32_MAX. Jeśli nie zostanie określony lub zostanie jawnie ustawiony na -1, filtr spróbuje
użyj dobrego losowego materiału siewnego na zasadzie najlepszych starań.

rządzić
Ustaw regułę automatu komórkowego, jest to liczba z zakresu od 0 do 255. Wartość domyślna
to 110.

rozmiar, s
Ustaw rozmiar wyjściowego wideo. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

If filename or wzorzec jest określony, rozmiar jest domyślnie ustawiony na szerokość
określony wiersz stanu początkowego, a wysokość jest ustawiona na szerokość *PHI.

If rozmiar jest ustawiony, musi zawierać szerokość określonego ciągu wzorcowego, a
określony wzór zostanie wyśrodkowany w większym rzędzie.

Jeśli nie określono nazwy pliku lub ciągu wzorca, wartość domyślna rozmiaru to
„320x518” (używany do losowo generowanego stanu początkowego).

przewijać
Jeśli ustawiono na 1, przewiń dane wyjściowe w górę, gdy wszystkie wiersze w danych wyjściowych zostały
już wypełnione. Jeśli ustawione na 0, nowy wygenerowany wiersz zostanie nadpisany nad wierszem górnym
zaraz po wypełnieniu dolnego rzędu. Domyślnie 1.

początek_pełny, pełny
Jeśli jest ustawiony na 1, całkowicie wypełnij dane wyjściowe wygenerowanymi wierszami przed wysłaniem
pierwsza klatka. Jest to domyślne zachowanie, aby wyłączyć, należy ustawić wartość na 0.

ścieg
Jeśli ustawiono na 1, zszyj razem lewy i prawy brzeg rzędu. To jest ustawienie domyślne
zachowanie, aby wyłączyć, ustaw wartość na 0.

Przykłady

· Odczytaj stan początkowy z wzorzeci określ dane wyjściowe o rozmiarze 200x400.

cellauto=f=wzór:s=200x400

· Wygeneruj losowy początkowy wiersz o szerokości 200 komórek, ze współczynnikiem wypełnienia 2/3:

cellauto=stosunek=2/3:s=200x200

· Utwórz wzór wygenerowany przez regułę 18, zaczynając od pojedynczej żywej komórki wyśrodkowanej na
początkowy rząd o szerokości 100:

cellauto=p=@s=100x400:full=0:rule=18

· Określ bardziej rozbudowany wzorzec początkowy:

cellauto=p='@@ @ @@':s=100x400:full=0:rule=18

mandelbrota
Wygeneruj fraktal zbioru Mandelbrota i stopniowo zbliżaj się do punktu określonego za pomocą
początek_x i początek_y.

To źródło akceptuje następujące opcje:

koniec_pts
Ustaw wartość terminala pts. Wartość domyślna to 400.

skala_końcowa
Ustaw wartość skali terminala. Musi być wartością zmiennoprzecinkową. Wartość domyślna to 0.3.

wewnętrzny
Ustaw tryb kolorowania wewnętrznego, czyli algorytm używany do rysowania fraktala Mandelbrota
region wewnętrzny.

Przyjmuje jedną z następujących wartości:

czarny
Ustaw tryb czarny.

konwergencja
Pokaż czas do zbieżności.

mincola
Ustaw kolor na podstawie punktu znajdującego się najbliżej początku iteracji.

okres
Ustaw tryb okresu.

Wartość domyślna to mincola.

ratunkowy
Ustaw wartość ratowania. Wartość domyślna to 10.0.

maksiter
Ustaw maksymalną liczbę iteracji wykonywanych przez algorytm renderowania. Wartość domyślna to
7189.

zewnętrzny
Ustaw tryb kolorowania zewnętrznego. Przyjmie jedną z następujących wartości:

liczba_iteracji
Ustaw tryb licznika iteracji.

znormalizowana_liczba_iteracji
ustaw znormalizowany tryb liczenia iteracji.

Wartość domyślna to znormalizowana_liczba_iteracji.

oceniać, r
Ustaw liczbę klatek wyrażoną jako liczba klatek na sekundę. Wartość domyślna to „25”.

rozmiar, s
Ustaw rozmiar ramki. Aby zapoznać się ze składnią tej opcji, sprawdź sekcję „Rozmiar wideo” w
instrukcja ffmpeg-utils. Wartość domyślna to „640x480”.

start_skala
Ustaw początkową wartość skali. Wartość domyślna to 3.0.

początek_x
Ustaw początkową pozycję x. Musi być wartością zmiennoprzecinkową z zakresu od -100 do 100.
Wartość domyślna to -0.743643887037158704752191506114774.

początek_y
Ustaw początkową pozycję y. Musi być wartością zmiennoprzecinkową z zakresu od -100 do 100.
Wartość domyślna to -0.131825904205311970493132056385139.

mptestsrc
Generuj różne wzorce testowe, generowane przez filtr testowy MPlayera.

Rozmiar wygenerowanego wideo jest stały i wynosi 256x256. To źródło jest przydatne w
szczególnie do testowania funkcji kodowania.

To źródło akceptuje następujące opcje:

oceniać, r
Określ szybkość klatek źródła wideo jako liczbę klatek wygenerowanych na
druga. Musi to być ciąg w formacie liczba_szybkości_klatek/liczba_ramek_den, Liczba całkowita
liczba, liczba zmiennoprzecinkowa lub poprawny skrót szybkości klatek wideo. Domyślny
wartość to „25”.

Trwanie, d
Ustaw czas trwania źródłowego wideo. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni.

Jeśli nie określono lub podany czas trwania jest ujemny, wideo powinno być
generowane na zawsze.

test t
Ustaw numer lub nazwę testu do wykonania. Obsługiwane testy to:

dc_luma
dc_chroma
częstotliwość_luma
częstotliwość_chromatyczna
amp_luma
amp_chroma
cbp
mv
ring1
ring2
cała kolekcja

Wartość domyślna to „all”, co spowoduje przechodzenie przez listę wszystkich testów.

Kilka przykładów:

mptestsrc=t=dc_luma

wygeneruje wzór testowy „dc_luma”.

frei0r_src
Podaj darmowe źródło.

Aby umożliwić kompilację tego filtra, musisz zainstalować nagłówek frei0r i skonfigurować
FFmpeg z "--enable-frei0r".

To źródło akceptuje następujące parametry:

rozmiar
Rozmiar filmu do wygenerowania. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

framerate
Liczba klatek na sekundę wygenerowanego wideo. Może to być ciąg postaci num/dzień lub
skrót liczby klatek na sekundę.

nazwa_filtra
Nazwa frei0r źródła do załadowania. Aby uzyskać więcej informacji na temat frei0r i jak
aby ustawić parametry, przeczytaj frei0r w dokumentacji filtrów wideo.

parametry_filtra
Rozdzielona '|' lista parametrów do przekazania do źródła frei0r.

Na przykład, aby wygenerować źródło frei0r partik0l o rozmiarze 200x200 i szybkości klatek 10
który jest nałożony na główne wejście filtra nakładki:

frei0r_src=size=200x200:framerate=10:filter_name=partik0l:filter_params=1234 [nakładka]; [w][nakładce] nakładki

życie
Wygeneruj wzór życia.

To źródło jest oparte na uogólnieniu gry życiowej Johna Conwaya.

Dane wejściowe reprezentują siatkę życia, każdy piksel reprezentuje komórkę, która może być w jednym
dwóch możliwych stanów, żywy lub martwy. Każda komórka współdziała z ośmioma sąsiadami,
które są komórkami przylegającymi poziomo, pionowo lub po przekątnej.

Przy każdej interakcji siatka ewoluuje zgodnie z przyjętą regułą, która określa
liczba sąsiadujących żywych komórek, która sprawi, że komórka pozostanie przy życiu lub narodzi się. ten rządzić opcja
pozwala określić regułę do przyjęcia.

To źródło akceptuje następujące opcje:

Nazwa pliku, f
Ustaw plik, z którego ma zostać odczytany początkowy stan siatki. W aktach każdy nie-
biały znak jest uważany za żywą komórkę, a znak nowej linii jest używany do rozgraniczenia
koniec każdego rzędu.

Jeśli ta opcja nie zostanie określona, ​​początkowa siatka jest generowana losowo.

oceniać, r
Ustaw szybkość wideo, czyli liczbę klatek generowanych na sekundę. Wartość domyślna to 25.

współczynnik_losowego_wypełnienia, stosunek
Ustaw losowy współczynnik wypełnienia dla początkowej losowej siatki. Jest to liczba zmiennoprzecinkowa
wartość w zakresie od 0 do 1, domyślnie 1/PHI. Jest ignorowany, gdy określony jest plik.

losowe_ziarno, nasienie
Ustaw ziarno do wypełnienia początkowej losowej siatki, musi być liczbą całkowitą zawartą między
0 i UINT32_MAX. Jeśli nie zostanie określony lub zostanie jawnie ustawiony na -1, filtr spróbuje
użyj dobrego losowego materiału siewnego na zasadzie najlepszych starań.

rządzić
Ustaw zasadę życia.

Regułę można określić za pomocą kodu typu „SNS/BNB", gdzie NS i NB jest
ciągi liczb z zakresu 0-8, NS określa liczbę żywych sąsiednich komórek
które sprawiają, że żywa komórka pozostaje żywa i NB liczba żywych sąsiednich komórek, które
zrobić martwą komórkę, aby stała się żywa (tj. „urodziła się”). „s” i „b” mogą być użyte w miejscu
odpowiednio „S” i „B”.

Alternatywnie regułę można określić za pomocą 18-bitowej liczby całkowitej. 9 bitów wysokiego rzędu to
służy do kodowania następnego stanu komórki, jeśli jest żywa dla każdej liczby żywych sąsiadów
komórki, bity niższego rzędu określają zasadę „rodzenia” nowych komórek. Bity wyższego rzędu
koduje dla większej liczby sąsiednich komórek. Na przykład liczba 6153 =
"(12<<9)+9" określa zasadę pozostania przy życiu o wartości 12 i urodzoną zasadę 9, co odpowiada
do "S23/B03".

Domyślna wartość to „S23/B3”, która jest oryginalną zasadą gry życia Conwaya i będzie
utrzymać komórkę przy życiu, jeśli ma 2 lub 3 sąsiednie żywe komórki i urodzi nową komórkę, jeśli
wokół martwej komórki znajdują się trzy żywe komórki.

rozmiar, s
Ustaw rozmiar wyjściowego wideo. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik.

If filename jest określony, rozmiar jest domyślnie ustawiony na ten sam rozmiar danych wejściowych
plik. Gdyby rozmiar jest ustawiony, musi zawierać rozmiar określony w pliku wejściowym, a
początkowa siatka zdefiniowana w tym pliku jest wyśrodkowana w większym obszarze wynikowym.

Jeśli nazwa pliku nie jest określona, ​​wartość domyślna rozmiaru to „320x240” (używana do
losowo wygenerowana początkowa siatka).

ścieg
Jeśli ustawiono na 1, zszyj razem lewą i prawą krawędź siatki oraz górną i dolną część
krawędzie również. Domyślnie 1.

pleśń
Ustaw prędkość formy komórkowej. Jeśli ustawione, martwa komórka wyjdzie kolor_śmierci do kolor_formy z
krok pleśń. pleśń może mieć wartość od 0 do 255.

kolor_życia
Ustaw kolor żywych (lub nowo narodzonych) komórek.

kolor_śmierci
Ustaw kolor martwych komórek. Jeśli pleśń jest ustawiony, jest to pierwszy kolor używany do reprezentowania
martwa komórka.

kolor_formy
Ustaw kolor pleśni, dla zdecydowanie martwych i spleśniałych komórek.

Aby zapoznać się ze składnią tych 3 opcji kolorów, sprawdź sekcję „Kolor” w ffmpeg-utils
– instrukcja obsługi.

Przykłady

· Odczytaj siatkę z wzorzeci wyśrodkuj go na siatce o wymiarach 300x300 pikseli:

życie=f=wzór:s=300x300

· Generuj losową siatkę o rozmiarze 200x200 ze współczynnikiem wypełnienia 2/3:

życie=stosunek=2/3:s=200x200

· Określ niestandardową regułę rozwoju losowo generowanej siatki:

życie=reguła=S14/B34

· Pełny przykład z efektem powolnej śmierci (pleśń) przy użyciu 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

całyrgb, alluw, kolor, haldclutsrc, nullsrc, rgbtestsrc, smakołyki, smptehdbary, testyr
Źródło "allrgb" zwraca klatki o rozmiarze 4096x4096 we wszystkich kolorach rgb.

Źródło "allyuv" zwraca klatki o rozmiarze 4096x4096 wszystkich kolorów yuv.

Źródło „koloru” zapewnia jednolicie zabarwiony sygnał wejściowy.

Źródło "haldclutsrc" zapewnia tożsamość Hald CLUT. Zobacz też halucynacja filtr.

Źródło „nullsrc” zwraca nieprzetworzone klatki wideo. Przydaje się głównie do zatrudnienia
w narzędziach do analizy/debugowania lub jako źródło filtrów ignorujących dane wejściowe.

Źródło „rgbtestsrc” generuje wzór testowy RGB przydatny do wykrywania RGB vs BGR
zagadnienia. Powinieneś zobaczyć czerwony, zielony i niebieski pasek od góry do dołu.

Źródło „smptebars” generuje wzór pasków kolorów w oparciu o inżynierię SMPTE
Wytyczne EG 1-1990.

Źródło "smptehdbars" generuje wzór pasków kolorów, oparty na SMPTE RP 219-2002.

Źródło "testsrc" generuje testowy wzór wideo, pokazując wzór koloru, przewijanie
gradient i znacznik czasu. Jest to przeznaczone głównie do celów testowych.

Źródła przyjmują następujące parametry:

kolor, c
Określ kolor źródła, dostępny tylko w źródle „kolor”. Dla składni
tej opcji, sprawdź sekcję „Kolor” w podręczniku ffmpeg-utils.

poziom
Określ poziom Hald CLUT, dostępny tylko w źródle "haldclutsrc". A
poziom "N" generuje obraz "N*N*N" na "N*N*N" pikseli do wykorzystania jako tożsamość
macierz tabel przeglądowych 3D. Każdy składnik jest kodowany w skali „1/(N*N)”.

rozmiar, s
Określ rozmiar źródłowego wideo. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Domyślna wartość to „320x240”.

Ta opcja nie jest dostępna z filtrem „haldclutsrc”.

oceniać, r
Określ szybkość klatek źródła wideo jako liczbę klatek wygenerowanych na
druga. Musi to być ciąg w formacie liczba_szybkości_klatek/liczba_ramek_den, Liczba całkowita
liczba, liczba zmiennoprzecinkowa lub poprawny skrót szybkości klatek wideo. Domyślny
wartość to „25”.

sar Ustaw przykładowe proporcje źródła wideo.

Trwanie, d
Ustaw czas trwania źródłowego wideo. Widzieć dotychczasowy Czas czas trwania Sekcja in dotychczasowy
narzędzia ffmpeg(1) podręcznik dla przyjętej składni.

Jeśli nie określono lub podany czas trwania jest ujemny, wideo powinno być
generowane na zawsze.

ułamki dziesiętne, n
Ustaw liczbę miejsc dziesiętnych, które mają być wyświetlane w sygnaturze czasowej, dostępne tylko w „testsrc”
źródło.

Wyświetlana wartość znacznika czasu będzie odpowiadać oryginalnej wartości znacznika czasu
pomnożone przez potęgę 10 określonej wartości. Wartość domyślna to 0.

Na przykład następujące:

testrc=czas trwania=5.3:rozmiar=qcif:częstotliwość=10

wygeneruje wideo o czasie trwania 5.3 sekundy, o rozmiarze 176x144 i liczbie klatek
10 klatek na sekundę.

Poniższy opis wykresu wygeneruje czerwone źródło o nieprzezroczystości 0.2, z
rozmiar „qcif” i szybkość odtwarzania 10 klatek na sekundę.

kolor=c=[email chroniony]:s=qcif:r=10

Jeśli treść wejściowa ma być ignorowana, można użyć "nullsrc". Następujące polecenie
generuje szum w płaszczyźnie luminancji, wykorzystując filtr „geq”:

nullsrc=s=256x256, geq=przypadkowy(1)*255:128:128

Polecenia

Źródło „kolor” obsługuje następujące polecenia:

c, kolor
Ustaw kolor tworzonego obrazu. Akceptuje tę samą składnię odpowiedniego kolor
opcja.

VIDEO ZLEWY


Poniżej znajduje się opis aktualnie dostępnych umywalek wideo.

zlew buforowy
Buforuj klatki wideo i udostępniaj je na końcu wykresu filtra.

Ten zlew jest przeznaczony głównie do użytku programistycznego, w szczególności za pośrednictwem interfejsu
zdefiniowane w libavfilter/buffersink.h lub system opcji.

Przyjmuje wskaźnik do struktury AVBufferSinkContext, która definiuje przychodzące
formaty buforów, które mają być przekazane jako parametr nieprzezroczysty do "avfilter_init_filter" dla
inicjalizacja.

nullsink
Null video sink: nie rób absolutnie nic z wejściowym wideo. Przydaje się głównie jako
szablon i do wykorzystania w narzędziach do analizy / debugowania.

MULTIMEDIA FILTRY


Poniżej znajduje się opis aktualnie dostępnych filtrów multimedialnych.

afazometr
Konwertuj wejściowy dźwięk na wyjście wideo, wyświetlając fazę dźwięku.

Filtr akceptuje następujące opcje:

oceniać, r
Ustaw wyjściową liczbę klatek na sekundę. Wartość domyślna to 25.

rozmiar, s
Ustaw rozmiar wideo dla wyjścia. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „800x400”.

rc
gc
bc Określ kontrast czerwony, zielony, niebieski. Wartości domyślne to 2, 7 i 1. Dozwolony zakres
to „[0, 255]”.

MPC Ustaw kolor, który będzie używany do rysowania fazy mediany. Jeśli kolor to „brak”, co oznacza
domyślnie nie zostanie narysowana żadna mediana wartości fazy.

Filtr eksportuje również metadane ramki „lavfi.aphasemeter.phase”, które reprezentują średnią
faza bieżącej ramki audio. Wartość należy do zakresu „[-1, 1]”. „-1” oznacza lewą i prawą stronę
kanały są całkowicie poza fazą, a 1 oznacza, że ​​kanały są w fazie.

awektoroskop
Konwertuj wejściowy dźwięk na wyjście wideo, reprezentujące zakres wektora audio.

Filtr służy do pomiaru różnicy między kanałami strumienia dźwięku stereo. A
sygnał monofoniczny, składający się z identycznego sygnału lewego i prawego, daje w wyniku prosty
pionowa linia. Każda separacja stereo jest widoczna jako odchylenie od tej linii, tworzące
Postać Lissajous. Jeśli linia prosta (lub odchylenie od niej), ale pozioma pojawia się to
wskazuje, że lewy i prawy kanał są w przeciwfazie.

Filtr akceptuje następujące opcje:

tryb, m
Ustaw tryb wektoroskopu.

Dostępne wartości to:

Lissajous
Lissajous obrócony o 45 stopni.

lissajous_xy
Tak samo jak powyżej, ale nie obrócony.

polarny
Kształt przypominający pół koła.

Wartość domyślna to Lissajous.

rozmiar, s
Ustaw rozmiar wideo dla wyjścia. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „400x400”.

oceniać, r
Ustaw wyjściową liczbę klatek na sekundę. Wartość domyślna to 25.

rc
gc
bc
ac Określ kontrast czerwony, zielony, niebieski i alfa. Wartości domyślne to 40, 160, 80 i
255. Dozwolony zakres to „[0, 255]”.

rf
gf
bf
af Określ zanikanie koloru czerwonego, zielonego, niebieskiego i alfa. Wartości domyślne to 15, 10, 5 i 5.
Dozwolony zakres to „[0, 255]”.

zoom
Ustaw współczynnik powiększenia. Wartość domyślna to 1. Dozwolony zakres to „[1, 10]”.

Przykłady

· Kompletny przykład przy użyciu 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]'

konkat
Łącz strumienie audio i wideo, łącząc je jeden po drugim.

Filtr działa na segmentach zsynchronizowanych strumieni wideo i audio. Wszystkie segmenty muszą
mieć taką samą liczbę strumieni każdego typu i będzie to również liczba strumieni
na wyjściu.

Filtr akceptuje następujące opcje:

n Ustaw liczbę segmentów. Wartość domyślna to 2.

v Ustaw liczbę wyjściowych strumieni wideo, czyli również liczbę strumieni wideo w
każdy segment. Wartość domyślna to 1.

a Ustaw liczbę wyjściowych strumieni audio, czyli również liczbę strumieni audio w
każdy segment. Wartość domyślna to 0.

niezabezpieczonym
Aktywuj tryb niebezpieczny: nie zawiedź, jeśli segmenty mają inny format.

Filtr ma v+a wyjścia: pierwsze v wyjścia wideo, to a wyjścia audio.

Tam są nx(v+a) wejścia: najpierw wejścia dla pierwszego segmentu, w tej samej kolejności co
wyjścia, następnie wejścia dla drugiego segmentu itd.

Powiązane strumienie nie zawsze mają dokładnie taki sam czas trwania z różnych powodów
w tym rozmiar ramki kodeka lub niechlujny autoring. Z tego powodu powiązane zsynchronizowane
strumienie (np. wideo i ścieżka dźwiękowa) powinny być łączone jednocześnie. Concat
filtr użyje czasu trwania najdłuższego strumienia w każdym segmencie (poza ostatnim),
i jeśli to konieczne, pad krótsze strumienie audio z ciszą.

Aby ten filtr działał poprawnie, wszystkie segmenty muszą zaczynać się od sygnatury czasowej 0.

Wszystkie odpowiadające strumienie muszą mieć te same parametry we wszystkich segmentach; filtrowanie
system automatycznie wybierze typowy format pikseli dla strumieni wideo i typowy
format próbki, częstotliwość próbkowania i układ kanałów dla strumieni audio, ale inne ustawienia, takie jak
jako rozdzielczość, musi zostać wyraźnie przekonwertowana przez użytkownika.

Dopuszczalne są różne szybkości klatek, ale skutkują one zmienną szybkością klatek na wyjściu; być
pamiętaj, aby skonfigurować plik wyjściowy, aby go obsłużyć.

Przykłady

· Połącz początek, odcinek i zakończenie, wszystko w wersji dwujęzycznej (wideo w
strumień 0, audio w strumieniach 1 i 2):

ffmpeg -i opening.mkv -i odcinek.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

· Połącz dwie części, obsługując osobno dźwięk i wideo, używając (a)filmu
źródła i dostosowanie rozdzielczości:

film=część1.mp4, skala=512:288 [v1] ; amovie=część1.mp4 [a1] ;
film=część2.mp4, skala=512:288 [v2] ; amovie=część2.mp4 [a2] ;
[v1] [v2] konkat [outv] ; [a1] [a2] concat=v=0:a=1 [outa]

Pamiętaj, że desynchronizacja nastąpi w ściegu, jeśli strumienie audio i wideo nie zostaną
mieć dokładnie taki sam czas trwania w pierwszym pliku.

ebur128
Filtr skanera EBU R128. Ten filtr pobiera strumień audio jako wejście i wyprowadza go
bez zmian. Domyślnie rejestruje wiadomość z częstotliwością 10 Hz za pomocą funkcji Chwilowy
głośność (oznaczona przez „M”), krótkotrwała głośność („S”), zintegrowana głośność („I”) i
Zakres głośności („LRA”).

Filtr posiada również wyjście wideo (patrz wideo opcja) z wykresem w czasie rzeczywistym do
obserwuj ewolucję głośności. Grafika zawiera zalogowaną wiadomość, o której mowa powyżej,
więc nie jest już drukowany, gdy ta opcja jest ustawiona, chyba że ustawiono szczegółowe rejestrowanie.
Główny obszar wykresów zawiera krótkotrwałą głośność (3 sekundy analizy), a
wskaźnik po prawej stronie dotyczy chwilowej głośności (400 milisekund).

Więcej informacji na temat Rekomendacji Głośności EBU R128 na
<http://tech.ebu.ch/loudness>.

Filtr akceptuje następujące opcje:

wideo
Aktywuj wyjście wideo. Strumień audio jest przekazywany bez zmian, niezależnie od tego, czy ta opcja jest
ustawić lub nie. Strumień wideo będzie pierwszym strumieniem wyjściowym, jeśli zostanie aktywowany. Wartość domyślna to
0.

rozmiar
Ustaw rozmiar wideo. Ta opcja dotyczy tylko wideo. Dla składni tej opcji
Sprawdź "Wideo rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Domyślna i minimalna
rozdzielczość to „640x480”.

metr
Ustaw miernik skali EBU. Wartość domyślna to 9. Typowe wartości to 9 i 18, odpowiednio dla
Miernik skali EBU +9 i Miernik skali EBU +18. Dowolna inna wartość całkowita z tego zakresu
jest dozwolone.

metadanych
Ustaw wstrzykiwanie metadanych. Jeśli ustawiono na 1, wejście audio zostanie podzielone na 100 ms
ramki wyjściowe, z których każda zawiera różne informacje o głośności w metadanych. Wszystkie
klucze metadanych mają przedrostek „lavfi.r128.”.

Wartość domyślna to 0.

dziennik ramek
Wymuś poziom rejestrowania ramki.

Dostępne wartości to:

Informacje
poziom logowania informacji

gadatliwy
szczegółowy poziom rejestrowania

Domyślnie poziom rejestrowania jest ustawiony na Informacje, Jeśli wideo albo metadanych opcje są
ustawiony, przełącza się na gadatliwy.

szczyt
Ustaw tryby szczytowe.

Dostępne tryby można kumulować (opcja jest typu „flaga”). Możliwe wartości to:

Żaden
Wyłącz dowolny tryb szczytowy (domyślny).

próba
Włącz tryb szczytowy próbki.

Prosty tryb pików poszukujący wyższej wartości próbki. Rejestruje wiadomość dla
sample-peak (oznaczany przez „SPK”).

prawdziwy
Włącz tryb true-peak.

Jeśli włączone, wyszukiwanie szczytów odbywa się na nadmiernie próbkowanej wersji strumienia wejściowego
dla lepszej dokładności pików. Rejestruje wiadomość dla true-peak. (oznaczony przez „TPK”)
i true-peak na ramkę (oznaczane przez „FTPK”). Ten tryb wymaga kompilacji z
"libswresample".

Przykłady

· Wykres w czasie rzeczywistym przy użyciu ffplay, z miernikiem skali EBU +18:

ffplay -f lavfi -i "amovie=input.mp3,ebur128=video=1:meter=18 [out0][out1]"

· Przeprowadź analizę z ffmpeg:

ffmpeg -nostats -i input.mp3 -filter_complex ebur128 -f null -

przekładać, przeplatać
Przeplataj czasowo ramki z kilku wejść.

„interleave” działa z wejściami wideo, „ainterleave” z dźwiękiem.

Filtry te odczytują ramki z kilku wejść i wysyłają najstarszą ramkę w kolejce do
wyjście.

Strumienie wejściowe muszą mieć dobrze zdefiniowane, monotonicznie rosnące wartości znaczników czasu klatek.

Aby przesłać jedną klatkę do wyjścia, filtry te muszą umieścić w kolejce co najmniej jedną klatkę
dla każdego wejścia, więc nie mogą działać w przypadku, gdy jedno wejście nie zostało jeszcze zakończone i nie będzie
odbierać przychodzące ramki.

Rozważmy na przykład przypadek, gdy jedno wejście jest filtrem „wybierz”, który zawsze odrzuca dane wejściowe
ramki. Filtr „przeplatający” będzie nadal odczytywał dane wejściowe, ale nigdy nie będzie
możliwość wysyłania nowych ramek do wyjścia, dopóki wejście nie wyśle ​​sygnału końca strumienia.

Ponadto, w zależności od synchronizacji wejść, filtry pominą ramki w przypadku jednego wejścia
otrzymuje więcej ramek niż pozostałe, a kolejka jest już wypełniona.

Te filtry akceptują następujące opcje:

nb_wejścia, n
Ustaw liczbę różnych wejść, domyślnie jest to 2.

Przykłady

· Przeplataj ramki należące do różnych strumieni za pomocą ffmpeg:

ffmpeg -i bambi.avi -i pr0n.mkv -filter_complex "[0:v][1:v] przeplot" out.avi

· Dodaj efekt migotania rozmycia:

select='jeśli(gt(przypadkowy(0), 0.2), 1, 2)':n=2 [tmp], boxblur=2:2, [tmp] przeplot

ondulacje, apermy
Ustaw uprawnienia do odczytu/zapisu dla ramek wyjściowych.

Filtry te są przeznaczone głównie dla programistów do testowania bezpośredniej ścieżki w następującym filtrze
na wykresie filtra.

Filtry akceptują następujące opcje:

tryb
Wybierz tryb uprawnień.

Przyjmuje następujące wartości:

Żaden
Nic nie robić. To jest ustawienie domyślne.

ro Ustaw wszystkie ramki wyjściowe tylko do odczytu.

rw Ustaw wszystkie ramki wyjściowe bezpośrednio do zapisu.

przełącznik
Ustaw ramkę tylko do odczytu, jeśli jest zapisywalna, i zapisywalną, jeśli jest tylko do odczytu.

przypadkowy
Ustaw losowo każdą ramkę wyjściową tylko do odczytu lub do zapisu.

nasienie
Ustaw ziarno dla przypadkowy tryb, musi być liczbą całkowitą zawartą między 0 a
„UINT32_MAX”. Jeśli nie zostanie określony lub zostanie jawnie ustawiony na „-1”, filtr spróbuje
użyj dobrego losowego materiału siewnego na zasadzie najlepszych starań.

Uwaga: w przypadku automatycznego wstawiania filtra między filtrem uprawnień a następnym,
uprawnienie może nie zostać odebrane zgodnie z oczekiwaniami w tym następującym filtrze. Wstawianie
format or format filtr przed filtrem zezwoleń/apermów może uniknąć tego problemu.

Wybierz, wybierz
Wybierz klatki do przekazania na wyjściu.

Ten filtr akceptuje następujące opcje:

wyraż, e
Ustaw wyrażenie, które jest oceniane dla każdej ramki wejściowej.

Jeśli wyrażenie ma wartość zero, ramka jest odrzucana.

Jeśli wynik oceny jest ujemny lub NaN, ramka jest wysyłana na pierwsze wyjście;
w przeciwnym razie jest wysyłany na wyjście z indeksem „ceil(val)-1”, zakładając, że wejście
indeks zaczyna się od 0.

Na przykład wartość 1.2 odpowiada wyjściu o indeksie „ceil(1.2)-1 = 2-1 =
1”, czyli drugie wyjście.

wyjścia, n
Ustaw liczbę wyjść. Dane wyjściowe, do których należy wysłać wybraną ramkę, są oparte na
wynik oceny. Wartość domyślna to 1.

Wyrażenie może zawierać następujące stałe:

n Numer (sekwencyjny) przefiltrowanej ramki, zaczynając od 0.

wybrane_n
Numer (sekwencyjny) wybranej ramki, zaczynając od 0.

prev_selected_n
Numer sekwencyjny ostatniej wybranej klatki. Jest to NAN, jeśli nie jest zdefiniowany.

TB Podstawa czasowa wejściowych znaczników czasu.

pkt PTS (sygnatura czasowa prezentacji) przefiltrowanej klatki wideo, wyrażona w TB jednostek.
Jest to NAN, jeśli nie jest zdefiniowany.

t PTS przefiltrowanej klatki wideo wyrażony w sekundach. Jest to NAN, jeśli nie jest zdefiniowany.

poprzedni_pts
PTS poprzednio przefiltrowanej klatki wideo. Jest to NAN, jeśli nie jest zdefiniowany.

prev_selected_pts
PTS ostatniej wcześniej filtrowanej klatki wideo. Jest to NAN, jeśli nie jest zdefiniowany.

prev_selected_t
PTS ostatniej wybranej klatki wideo. Jest to NAN, jeśli nie jest zdefiniowany.

punkty_początkowe
PTS pierwszej klatki wideo w filmie. Jest to NAN, jeśli nie jest zdefiniowany.

początek_t
Czas pierwszej klatki wideo w filmie. Jest to NAN, jeśli nie jest zdefiniowany.

typ_obrazu (wideo tylko)
Typ przefiltrowanej ramki. Może przyjąć jedną z następujących wartości:

I
P
B
S
SI
SP
BI
typ_przeplatania (wideo tylko)
Typ z przeplotem ramek. Może przyjąć jedną z następujących wartości:

PROGRESYWNY
Ramka jest progresywna (bez przeplotu).

TOP PIERWSZY
Rama jest na pierwszym miejscu.

NA DOLE
Ramka jest najpierw dolna.

used_sample_n (audio tylko)
liczba wybranych próbek przed bieżącą klatką

próbki_n (audio tylko)
liczba próbek w bieżącej ramce

próbna stawka (audio tylko)
częstotliwość próbkowania wejściowego

klucz Jest to 1, jeśli filtrowana klatka jest klatką kluczową, 0 w przeciwnym razie.

pisać pozycja w pliku przefiltrowanej ramki, -1 jeśli informacja nie jest dostępna
(np. dla wideo syntetycznego)

scena (wideo tylko)
wartość od 0 do 1, aby wskazać nową scenę; niska wartość odzwierciedla małe prawdopodobieństwo
dla bieżącej klatki, aby wprowadzić nową scenę, natomiast wyższa wartość oznacza bieżącą
ramka jest bardziej prawdopodobna (patrz przykład poniżej)

Domyślna wartość wyrażenia select to „1”.

Przykłady

· Wybierz wszystkie klatki w wejściu:

wybierać

Powyższy przykład jest taki sam jak:

wybierz=1

· Pomiń wszystkie klatki:

wybierz=0

· Wybierz tylko I-ramki:

select='eq(typ_obrazu\,I)'

· Wybierz jedną klatkę co 100:

select='not(mod(n\,100))'

· Wybierz tylko klatki zawarte w przedziale czasowym 10-20:

select=pomiędzy(t\,10\,20)

· Wybierz tylko I klatki zawarte w przedziale czasowym 10-20:

wybierz=pomiędzy(t\,10\,20)*eq(pict_type\,I)

· Wybierz klatki o minimalnej odległości 10 sekund:

select='isnan(prev_selected_t)+gte(t-prev_selected_t\,10)'

· Użyj aselect, aby wybrać tylko klatki audio z liczbą próbek > 100:

aselect='gt(samples_n\,100)'

· Stwórz mozaikę pierwszych scen:

ffmpeg -i video.avi -vf select='gt(scena\,0.4)',scale=160:120,kafelek -frames:v 1 podgląd.png

Porównując scena w stosunku do wartości od 0.3 do 0.5 jest na ogół rozsądnym wyborem.

· Wysyłaj ramki parzyste i nieparzyste do oddzielnych wyjść i komponuj je:

select=n=2:e='mod(n, 2)+1' [nieparzysty][parzysty]; [nieparzysty] pad=h=2*ih [tmp]; [tmp][even] overlay=y=h

wyślij cmd, asendcmd
Wysyłaj polecenia do filtrów na wykresie filtrów.

Filtry te odczytują polecenia, które mają być wysłane do innych filtrów na wykresie filtrów.

„sendcmd” musi być wstawione między dwa filtry wideo, „asendcmd” musi być wstawione między
dwa filtry audio, ale poza tym działają tak samo.

Specyfikację poleceń można podać w argumentach filtra z Polecenia
opcji lub w pliku określonym przez filename opcja.

Te filtry akceptują następujące opcje:

polecenia, c
Ustaw polecenia, które mają być odczytywane i wysyłane do innych filtrów.

Nazwa pliku, f
Ustaw nazwę pliku poleceń, które mają być odczytywane i wysyłane do innych filtrów.

Polecenia składnia

Opis poleceń składa się z sekwencji specyfikacji interwałów, zawierającej
lista poleceń do wykonania, gdy wystąpi określone zdarzenie związane z tym interwałem.
Występujące zdarzenie to zazwyczaj czas wejścia lub wyjścia bieżącej klatki w określonym czasie
interwał.

Interwał określa następująca składnia:

[- ] ;

Przedział czasu jest określony przez START i KONIEC razy. KONIEC jest opcjonalne i domyślne
do maksymalnego czasu.

Bieżący czas klatek jest uważany za mieszczący się w określonym przedziale, jeśli jest uwzględniony w
przerwa [START, KONIEC), czyli gdy czas jest większy lub równy START i jest
Mniej niż KONIEC.

POLECENIA składa się z sekwencji jednej lub więcej specyfikacji poleceń, oddzielonych znakami ",",
odnoszące się do tego przedziału. Składnia specyfikacji polecenia jest podana przez:

[ ]

FLAGI jest opcjonalny i określa rodzaj zdarzeń odnoszących się do przedziału czasowego, który
włączyć wysyłanie określonego polecenia i musi być niezerową sekwencją flag identyfikatorów
oddzielone znakami „+” lub „|” i ujęte między "[" i "]".

Rozpoznawane są następujące flagi:

wchodzić
Polecenie jest wysyłane, gdy znacznik czasu bieżącej ramki wejdzie w określony interwał. w
innymi słowy, polecenie jest wysyłane, gdy znacznik czasu poprzedniej ramki nie znajdował się w
podany przedział, a prąd jest.

pozostawiać
Polecenie jest wysyłane, gdy znacznik czasu bieżącej ramki opuszcza określony interwał. w
innymi słowy, polecenie jest wysyłane, gdy poprzedni znacznik czasu ramki był w podanym
interwał, a prąd nie.

If FLAGI nie jest określony, przyjmowana jest domyślna wartość „[enter]”.

TARGET określa cel polecenia, zwykle nazwę klasy filtra lub a
konkretna nazwa instancji filtra.

COMMAND określa nazwę polecenia dla filtra docelowego.

ARG jest opcjonalny i określa opcjonalną listę argumentów dla danego COMMAND.

Między jedną specyfikacją interwału a drugą spacje lub sekwencje znaków
zaczynające się od "#" aż do końca linii, są ignorowane i mogą być używane do opisywania komentarzy.

Uproszczony opis składni specyfikacji poleceń BNF jest następujący:

::= "wejdź" | "opuszczać"
::= [(+|"|") ]
::= ["[" "]"] [ ]
::= [, ]
::= [- ]
::= [; ]

Przykłady

· Określ zmianę tempa dźwięku w drugiej 4:

asendcmd=c='4.0 tempo tempa 1.5',tempo

· Określ listę poleceń tekstu rysunkowego i odcienia w pliku.

# pokaż tekst w przedziale 5-10
5.0-10.0 [enter] drawtext reinit 'fontfile=FreeSerif.ttf:text=hello world',
[pozostaw] drawtext reinit 'fontfile=FreeSerif.ttf:text=';

# desaturuj obraz w przedziale 15-20
15.0-20.0 [wpisz] barwa s 0,
[enter] drawtext reinit 'fontfile=FreeSerif.ttf:text=nocolor',
[pozostaw] odcień s 1,
[pozostaw] drawtext reinit 'fontfile=FreeSerif.ttf:text=color';

# zastosuj wykładniczy efekt zanikania nasycenia, zaczynając od 25
25 [enter] hue s exp (25-t)

Wykres filtra pozwalający na odczytanie i przetworzenie powyższej listy poleceń zapisanej w pliku
test. cmd, można określić za pomocą:

sendcmd=f=test.cmd,drawtext=fontfile=FreeSerif.ttf:text='',hue

setpty, atuty
Zmień PTS (sygnaturę czasową prezentacji) ramek wejściowych.

"setpts" działa na ramkach wideo, "asetpts" na ramkach audio.

Ten filtr akceptuje następujące opcje:

expr
Wyrażenie, które jest oceniane dla każdej klatki w celu skonstruowania jej znacznika czasu.

Wyrażenie jest oceniane przez eval API i może zawierać następujące stałe:

CZĘSTOTLIWOŚĆ WYŚWIETLANIA KLATEK
liczba klatek na sekundę, zdefiniowana tylko dla filmów ze stałą liczbą klatek na sekundę

PTS Znacznik czasu prezentacji na wejściu

N Liczba klatek wejściowych wideo lub liczba wykorzystanych próbek, nie
w tym bieżącą ramkę dla dźwięku, zaczynając od 0.

NB_CONSUMED_SAMPLES
Liczba zużytych próbek, nie wliczając bieżącej klatki (tylko audio)

NB_PRÓBKI, S
Liczba próbek w bieżącej ramce (tylko audio)

PRÓBNA STAWKA, SR
Częstotliwość próbkowania dźwięku.

POCZĄTKOWE
PTS pierwszej klatki.

ROZPOCZNIJ
czas w sekundach pierwszej klatki

Z PRZEPLOTEM
Określ, czy bieżąca ramka jest z przeplotem.

T czas w sekundach bieżącej klatki

POS oryginalna pozycja w pliku ramki lub niezdefiniowana, jeśli nie jest zdefiniowana dla bieżącego
rama

POPRZEDNIE_INPTS
Poprzednie wejście PTS.

POPRZEDNI_INT
poprzedni czas wprowadzania w sekundach

POPRZEDNIE_WYJŚCIA
Poprzednie wyjście PTS.

POPRZEDNIE_WYJ
poprzedni czas wyjścia w sekundach

CZAS RTC
Czas zegara ściennego (RTC) w mikrosekundach. To jest przestarzałe, użyj czas(0) zamiast tego.

RTCSTART
Zegar ścienny (RTC) na początku filmu w mikrosekundach.

TB Podstawa czasowa wejściowych znaczników czasu.

Przykłady

· Rozpocznij liczenie PTS od zera

setpts=PTS-STARTPTS

· Zastosuj efekt szybkiego ruchu:

setpts=0.5*PTS

· Zastosuj efekt zwolnionego tempa:

setpts=2.0*PTS

· Ustaw stałą szybkość 25 klatek na sekundę:

nastawy=N/(25*TB)

· Ustaw stałą szybkość 25 fps z pewnym jitterem:

setpts='1/(25*TB) * (N + 0.05 * sin(N*2*PI/25))'

· Zastosuj 10-sekundowe przesunięcie do wejściowego PTS:

setpts=PTS+10/TB

· Generowanie znaczników czasu z „źródła na żywo” i ponowne bazowanie na bieżącej podstawie czasu:

setpts='(RTCTIME - RTCSTART) / (TB * 1000000)'

· Generowanie znaczników czasu poprzez zliczanie próbek:

aktywa=N/SR/TB

setb, zasób
Ustaw podstawę czasową używaną dla znaczników czasu klatek wyjściowych. Przydaje się głównie do testowania
konfiguracja podstawy czasu.

Przyjmuje następujące parametry:

wyraż, tb
Wyrażenie, które jest oceniane w wyjściowej podstawie czasu.

Wartość dla tb jest wyrażeniem arytmetycznym reprezentującym wymierność. Wyrażenie może
zawierać stałe "AVTB" (domyślna podstawa czasu), "intb" (wejściowa podstawa czasu) i "sr"
(częstotliwość próbkowania, tylko dźwięk). Wartość domyślna to "intb".

Przykłady

· Ustaw podstawę czasu na 1/25:

settb=wyraż=1/25

· Ustaw podstawę czasu na 1/10:

settb=wyraż=0.1

· Ustaw podstawę czasu na 1001/1000:

setb=1+0.001

· Ustaw podstawę czasu na 2*intb:

settb=2*intb

· Ustaw domyślną wartość podstawy czasu:

settb=AVTB

pokażcqt
Konwertuj wejściowy dźwięk na wyjście wideo reprezentujące logarytmicznie widmo częstotliwości
(przy użyciu stałej transformacji Q z algorytmem Browna-Puckette), z muzyczną skalą tonów, od
E0 do D#10 (10 oktaw).

Filtr akceptuje następujące opcje:

Tom
Określ wyrażenie objętości transformacji (mnożnika). Wyrażenie może zawierać
zmienne:

częstotliwość, często, f
częstotliwość, w której oceniana jest transformacja

chronometr, tc
wartość opcji timeclamp

i funkcje:

a_ważenie(f)
Ważenie A równej głośności

b_ważenie(f)
Ważenie B równej głośności

c_waga(f)
Ważenie C równej głośności

Wartość domyślna to 16.

długość
Określ wyrażenie długości transformacji. Wyrażenie może zawierać zmienne:

częstotliwość, często, f
częstotliwość, w której oceniana jest transformacja

chronometr, tc
wartość opcji timeclamp

Wartość domyślna to „384/f*tc/(384/f+tc)”.

czasomierz
Określ czas przekształcenia. Przy niskiej częstotliwości występuje kompromis między dokładnością
w dziedzinie czasu i częstotliwości. Jeśli timeclamp jest niższy, zdarzenie w dziedzinie czasu jest
reprezentowane dokładniej (np. szybki bęben basowy), w przeciwnym razie zdarzenie w częstotliwości
domena jest reprezentowana dokładniej (np. gitara basowa). Dopuszczalna wartość to [0.1,
1.0]. Wartość domyślna to 0.17.

współzacisk
Określ coeffclamp transformacji. Jeśli coeffclamp jest niższy, transformacja jest dokładniejsza,
w przeciwnym razie transformacja jest szybsza. Dopuszczalna wartość to [0.1, 10.0]. Wartość domyślna to 1.0.

gamma
Określ gamma. Niższa gamma sprawia, że ​​widmo jest bardziej kontrastowe, wyższa gamma sprawia, że
widmo o większym zasięgu. Dopuszczalna wartość to [1.0, 7.0]. Wartość domyślna to 3.0.

gamma2
Określ gamma bargrafu. Dopuszczalna wartość to [1.0, 7.0]. Wartość domyślna to 1.0.

plik czcionek
Określ plik czcionki do użytku z freetype. Jeśli nie określono, użyj osadzonej czcionki.

kolor czcionki
Określ wyrażenie koloru czcionki. To jest wyrażenie arytmetyczne, które powinno zwrócić
wartość całkowita 0xRRGGBB. Wyrażenie może zawierać zmienne:

częstotliwość, często, f
częstotliwość, w której oceniana jest transformacja

chronometr, tc
wartość opcji timeclamp

i funkcje:

midi (k)
liczba midi częstotliwości f, niektóre liczby midi: E0(16) C1(24) C2(36) A4(69)

r(x), g(x), b(x)
czerwona, zielona i niebieska wartość natężenia x

Wartość domyślna to "st(0, (midi(f)-59.5)/12); st(1, if(między(ld(0),0,1),
0.5-0.5*cos(2*PI*ld(0)), 0)); R(1-ld(1)) + b(ld(1))"

FullHD
Jeśli jest ustawiony na 1 (domyślnie), rozmiar wideo to 1920x1080 (full HD), jeśli jest ustawiony na 0,
rozmiar wideo to 960x540. Użyj tej opcji, aby zmniejszyć zużycie procesora.

fps Określ fps wideo. Wartość domyślna to 25.

liczyć
Określ liczbę przekształceń na klatkę, aby liczba przekształceń fps*liczyła się na sekundę.
Zauważ, że szybkość transmisji danych audio musi być podzielna przez fps*count. Wartość domyślna to 6.

Przykłady

· Odtwarzanie dźwięku podczas pokazywania widma:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt [out0]'

· Tak samo jak powyżej, ale z szybkością 30 kl./s:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt=fps=30:count=5 [out0]'

· Gra w rozdzielczości 960x540 i niższym zużyciu procesora:

ffplay -f lavfi 'amovie=a.mp3, asplit [a][out1]; [a] showcqt=fullhd=0:count=3 [out0]'

· A1 i jego harmoniczne: A1, A2, (blisko)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]'

· Tak samo jak powyżej, ale z większą dokładnością w dziedzinie częstotliwości (i wolniej):

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]'

· Ważenie B równej głośności

objętość=16*b_waga(f)

· Niższy współczynnik Q

tdługość=100/k*tc/(100/k+tc)

· Niestandardowy kolor czcionki, C-note jest w kolorze zielonym, inne w kolorze niebieskim

fontcolor='if(mod(podłoga(midi(f)+0.5),12), 0x0000FF, g(1))”

· Niestandardowa gamma, teraz widmo jest liniowe do amplitudy.

gamma=2:gamma2=2

pokazujczęstości
Konwertuj wejście audio na wyjście wideo reprezentujące widmo mocy dźwięku. Audio
amplituda jest na osi Y, a częstotliwość na osi X.

Filtr akceptuje następujące opcje:

rozmiar, s
Określ rozmiar wideo. Aby poznać składnię tej opcji, sprawdź "Wideo rozmiar" Sekcja
in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „1024x512”.

tryb
Ustaw tryb wyświetlania. Ustawia to, w jaki sposób będzie reprezentowany każdy przedział częstotliwości.

Przyjmuje następujące wartości:

linia
bar
kropka

Domyślnie jest to „bar”.

skala
Ustaw skalę amplitudy.

Przyjmuje następujące wartości:

lin Skala liniowa.

kwadrat
Skala pierwiastka kwadratowego.

cbrt
Skala pierwiastka sześciennego.

log Skala logarytmiczna.

Wartość domyślna to „log”.

fskala
Ustaw skalę częstotliwości.

Przyjmuje następujące wartości:

lin Skala liniowa.

log Skala logarytmiczna.

rlog
Odwrócona skala logarytmiczna.

Domyślnie jest to „lin”.

wygrana_rozmiar
Ustaw rozmiar okna.

Przyjmuje następujące wartości:

w16
w32
w64
w128
w256
w512
w1024
w2048
w4096
w8192
w16384
w32768
w65536

Wartość domyślna to „w2048”

win_funkcja
Ustaw funkcję okienkowania.

Przyjmuje następujące wartości:

rect
Bartlett
Hanning
łomotanie
czarnoskóry
welch
płaskowyż
Bharris
okropnie
Bhann
sinus
orzechowy

Wartość domyślna to „hanning”.

zakładka
Ustaw nakładanie się okien. W zakresie „[0, 1]”. Wartość domyślna to 1, co oznacza optymalne nakładanie się dla
wybrana funkcja okna zostanie wybrana.

średnio
Ustaw uśrednianie czasu. Ustawienie tego na 0 spowoduje wyświetlenie bieżących maksymalnych szczytów. Wartość domyślna to
1, co oznacza, że ​​uśrednianie czasu jest wyłączone.

kolor
Określ listę kolorów oddzielonych spacją lub znakiem „|” który zostanie użyty do narysowania kanału
częstotliwości. Nierozpoznane lub brakujące kolory zostaną zastąpione kolorem białym.

showspektrum
Konwertuj wejściowy dźwięk na wyjście wideo, reprezentujące widmo częstotliwości dźwięku.

Filtr akceptuje następujące opcje:

rozmiar, s
Określ rozmiar wideo dla wyjścia. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „640x512”.

ślizgać się
Określ, jak widmo powinno przesuwać się w oknie.

Przyjmuje następujące wartości:

obsługi produkcji rolnej, która zastąpiła
próbki zaczynają się ponownie po lewej stronie, gdy dotrą do prawej

przewijać
próbki przewijają się od prawej do lewej

pełna ramka
ramki są produkowane tylko wtedy, gdy próbki docierają w prawo

Wartość domyślna to „zamień”.

tryb
Określ tryb wyświetlania.

Przyjmuje następujące wartości:

połączony
wszystkie kanały są wyświetlane w tym samym wierszu

oddzielny
wszystkie kanały są wyświetlane w osobnych wierszach

Wartość domyślna to połączony.

kolor
Określ tryb wyświetlania kolorów.

Przyjmuje następujące wartości:

kanał
każdy kanał jest wyświetlany w osobnym kolorze

intensywność
każdy kanał jest wyświetlany w tym samym schemacie kolorów

Wartość domyślna to kanał.

skala
Określ skalę używaną do obliczania wartości intensywności kolorów.

Przyjmuje następujące wartości:

lin liniowy

kwadrat
pierwiastek kwadratowy, domyślnie

cbrt
korzeń sześcienny

log logarytmiczna

Wartość domyślna to kwadrat.

nasycenie
Ustaw modyfikator nasycenia dla wyświetlanych kolorów. Wartości ujemne stanowią alternatywę
schemat kolorów. 0 to w ogóle brak nasycenia. Nasycenie musi mieścić się w zakresie [-10.0, 10.0].
Wartość domyślna to 1.

win_funkcja
Ustaw funkcję okna.

Przyjmuje następujące wartości:

Żaden
Brak wstępnego przetwarzania próbek (nie oczekuj, że będzie to szybsze)

Hanna
Okno Hanna

łomotanie
Okno Hamminga

czarnoskóry
Okno Blackmana

Wartość domyślna to „hann”.

Użycie jest bardzo podobne do filtra showwaves; zobacz przykłady w tej sekcji.

Przykłady

· Duże okno z logarytmicznym skalowaniem kolorów:

showspectrum=s=1280x480:scale=log

· Kompletny przykład dla kolorowego i przesuwającego się widma na kanał przy użyciu ffplay:

ffplay -f lavfi 'amovie=input.mp3, asplit [a][out1];
[a] showspectrum=mode=separate:color=intensity:slide=1:scale=cbrt [out0]'

pokaż głośność
Konwertuj wejściową głośność audio na wyjście wideo.

Filtr akceptuje następujące opcje:

oceniać, r
Ustaw szybkość wideo.

b Ustaw szerokość obramowania, dozwolony zakres to [0, 5]. Wartość domyślna to 1.

w Ustaw szerokość kanału, dozwolony zakres to [40, 1080]. Wartość domyślna to 400.

h Ustaw wysokość kanału, dozwolony zakres to [1, 100]. Wartość domyślna to 20.

f Ustaw zanikanie, dozwolony zakres to [1, 255]. Wartość domyślna to 20.

c Ustaw ekspresję koloru głośności.

Wyrażenie może używać następujących zmiennych:

TOM
Aktualna maksymalna głośność kanału w dB.

CHANNEL
Aktualny numer kanału, zaczynając od 0.

t Jeśli ustawione, wyświetla nazwy kanałów. Domyślnie jest włączone.

Pokaż fale
Konwertuj wejściowy dźwięk na wyjście wideo, reprezentujące fale próbek.

Filtr akceptuje następujące opcje:

rozmiar, s
Określ rozmiar wideo dla wyjścia. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „600x240”.

tryb
Ustaw tryb wyświetlania.

Dostępne wartości to:

punkt
Narysuj punkt dla każdej próbki.

linia
Narysuj pionową linię dla każdej próbki.

p2p Narysuj punkt dla każdej próbki i linię między nimi.

Cline
Narysuj wyśrodkowaną linię pionową dla każdej próbki.

Wartość domyślna to „punkt”.

n Ustaw liczbę próbek, które są drukowane w tej samej kolumnie. Większa wartość będzie
zmniejszyć liczbę klatek na sekundę. Musi być dodatnią liczbą całkowitą. Tę opcję można ustawić tylko wtedy, gdy
wartość dla stawka nie jest wyraźnie określony.

oceniać, r
Ustaw (przybliżoną) wyjściową szybkość klatek. Odbywa się to poprzez ustawienie opcji n. Domyślna
wartość to „25”.

podzielone_kanały
Ustaw, czy kanały mają być rysowane osobno, czy nakładają się. Wartość domyślna to 0.

Przykłady

· Jednoczesne wysyłanie audio pliku wejściowego i odpowiedniej reprezentacji wideo
czas:

amovie=a.mp3,asplit[out0],showwaves[out1]

· Stwórz syntetyczny sygnał i pokaż go za pomocą fal pokazowych, wymuszając szybkość klatek 30
klatki na sekundę:

aevalsrc=sin(1*2*PI*t)*sin(880*2*PI*t):cos(2*PI*200*t),asplit[out0],showwaves=r=30[out1]

pokażwavespic
Konwertuj dźwięk wejściowy na pojedynczą klatkę wideo, reprezentującą fale próbek.

Filtr akceptuje następujące opcje:

rozmiar, s
Określ rozmiar wideo dla wyjścia. Aby poznać składnię tej opcji, sprawdź "Wideo
rozmiar" Sekcja in dotychczasowy narzędzia ffmpeg podręcznik. Wartość domyślna to „600x240”.

podzielone_kanały
Ustaw, czy kanały mają być rysowane osobno, czy nakładają się. Wartość domyślna to 0.

Przykłady

· Wyodrębnij reprezentację podzielonego kanału z kształtu fali całej ścieżki audio w
Obraz 1024x800 przy użyciu ffmpeg:

ffmpeg -i audio.flac -lavfi showwavespic=split_channels=1:s=1024x800 waveform.png

podział, rozłam
Podziel wejście na kilka identycznych wyjść.

„asplit” działa z wejściem audio, „split” z wideo.

Filtr akceptuje pojedynczy parametr określający liczbę wyjść. Jeśli
nieokreślony, domyślnie 2.

Przykłady

· Utwórz dwa oddzielne wyjścia z tego samego wejścia:

[wejście] podział [wyjście0][wyjście1]

· Aby utworzyć 3 lub więcej wyjść, musisz określić liczbę wyjść, jak w:

[wejście] asplit=3 [wyjście0][wyjście1][wyjście2]

· Utwórz dwa oddzielne wyjścia z tego samego wejścia, jedno przycięte, a drugie dopełnione:

[w] split [splitout1][splitout2];
[splitout1] crop=100:100:0:0 [cropout];
[splitout2] pad=200:200:100:100 [padout];

· Utwórz 5 kopii wejściowego dźwięku za pomocą ffmpeg:

ffmpeg -i WEJŚCIE -filter_kompleks asplit=5 WYJŚCIE

zmq, Azmq
Odbieraj polecenia wysyłane przez klienta libzmq i przesyłaj je do filtrów w
wykres filtra.

„zmq” i „azmq” działają jako filtry tranzytowe. „zmq” należy wstawić między dwa filmy
filtry, „azmq” między dwoma filtrami audio.

Aby włączyć te filtry, musisz zainstalować bibliotekę libzmq i nagłówki oraz skonfigurować
FFmpeg z "--enable-libzmq".

Aby uzyskać więcej informacji o libzmq zobacz:http://www.zeromq.org/>

Filtry "zmq" i "azmq" działają jako serwer libzmq, który odbiera wiadomości wysyłane przez
interfejs sieciowy zdefiniowany przez adres_powiązania opcja.

Otrzymana wiadomość musi mieć postać:

[ ]

TARGET określa cel polecenia, zwykle nazwę klasy filtra lub a
konkretna nazwa instancji filtra.

COMMAND określa nazwę polecenia dla filtra docelowego.

ARG jest opcjonalny i określa opcjonalną listę argumentów dla danego COMMAND.

Po odebraniu wiadomość jest przetwarzana, a odpowiednie polecenie jest wstrzykiwane do
wykres filtra. W zależności od wyniku filtr wyśle ​​odpowiedź do klienta,
przyjęcie formatu:




MESSAGE jest opcjonalne.

Przykłady

Spójrz na narzędzia/zmqsend na przykład klienta zmq, który może być używany do wysyłania poleceń
przetwarzane przez te filtry.

Rozważ poniższy wykres filtra wygenerowany przez ffplay

ffplay -dumpgraph 1 -f lavfi "
kolor=s=100x100:c=czerwony [l];
kolor=s=100x100:c=niebieski [r];
nullsrc=s=200x100, zmq [bg];
[bg][l] nakładka [bg+l];
[bg+l][r] nakładka=x=100 "

Aby zmienić kolor lewej strony wideo, można użyć następującego polecenia:

echo Parsed_color_0 c żółty | narzędzia/zmqsend

Aby zmienić prawą stronę:

echo Parsed_color_1 c różowy | narzędzia/zmqsend

MULTIMEDIA ŹRÓDŁA


Poniżej znajduje się opis aktualnie dostępnych źródeł multimediów.

film
To to samo co film źródło, z wyjątkiem tego, że domyślnie wybiera strumień audio.

film
Czytaj strumienie audio i/lub wideo z kontenera filmów.

Przyjmuje następujące parametry:

filename
Nazwa zasobu do odczytu (niekoniecznie plik; może to być również urządzenie lub
strumień dostępny za pośrednictwem pewnego protokołu).

nazwa_formatu, f
Określa format przyjęty do odczytania filmu i może być nazwą
pojemnik lub urządzenie wejściowe. Jeśli nie określono, format jest odgadywany z nazwa_filmu
lub przez sondowanie.

szukaj_punktu, sp
Określa punkt wyszukiwania w sekundach. Ramki będą wyprowadzane począwszy od tego wyszukiwania
punkt. Parametr jest oceniany za pomocą „av_strtod”, więc wartość liczbowa może być
z przyrostkiem IS. Wartość domyślna to „0”.

strumienie, s
Określa strumienie do odczytu. Można określić kilka strumieni, oddzielonych znakiem „+”. ten
source będzie wtedy mieć tyle samo wyjść w tej samej kolejności. Składnia jest wyjaśniona w
sekcja ``Specyfikatory strumienia'' w podręczniku ffmpeg. Dwie specjalne nazwy, „dv” i
„da” określa odpowiednio domyślny (najlepiej dopasowany) strumień wideo i audio. Wartość domyślna to
„dv” lub „da”, jeśli filtr nazywa się „amovie”.

strumień_indeks, si
Określa indeks strumienia wideo do odczytania. Jeśli wartość wynosi -1, najbardziej odpowiednia
strumień wideo zostanie wybrany automatycznie. Wartość domyślna to „-1”. Przestarzałe. Jeśli
filtr nazywa się „amovie”, wybierze dźwięk zamiast wideo.

pętla
Określa, ile razy należy kolejno odczytać strumień. Jeśli wartość jest mniejsza niż 1,
strumień będzie czytany raz za razem. Wartość domyślna to „1”.

Zwróć uwagę, że gdy film jest zapętlony, znaczniki czasu źródła nie są zmieniane, więc będzie
generować niemonotonicznie rosnące znaczniki czasu.

Pozwala na nałożenie drugiego wideo na główne wejście wykresu filtra, jak pokazano na
ten wykres:

wejście -----------> deltapts0 --> nakładka --> wyjście
^
|
film --> skala --> deltapts1 -------+

Przykłady

· Pomiń 3.2 sekundy od początku pliku AVI in.avi i nałóż go na
wejście oznaczone "in":

movie=in.avi:seek_point=3.2, scale=180:-1, setpts=PTS-STARTPTS [ponad];
[w] setpts=PTS-STARTPTS [główne];
[główny][nad] nakładka=16:16 [na zewnątrz]

· Czytaj z urządzenia video4linux2 i nałóż na wejście oznaczone "in":

movie=/dev/video0:f=video4linux2, scale=180:-1, setpts=PTS-STARTPTS [ponad];
[w] setpts=PTS-STARTPTS [główne];
[główny][nad] nakładka=16:16 [na zewnątrz]

· Odczytaj pierwszy strumień wideo i strumień audio o identyfikatorze 0x81 z pliku dvd.vob; wideo
jest podłączony do pada o nazwie „wideo”, a dźwięk jest podłączony do pada o nazwie
"audio":

film=dvd.vob:s=v:0+#0x81 [wideo] [dźwięk]

Korzystaj z filtrów ffmpeg online za pomocą usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

  • 1
    Phaser
    Phaser
    Phaser to szybka, darmowa i zabawna gra otwarta
    źródłowa struktura gry HTML5, która oferuje
    Renderowanie WebGL i Canvas w poprzek
    przeglądarek internetowych na komputery i urządzenia mobilne. Gry
    może być współ...
    Pobierz Phaser
  • 2
    Silnik WASAL
    Silnik WASAL
    VASSAL to silnik gry do tworzenia
    elektroniczne wersje tradycyjnej tablicy
    i gry karciane. Zapewnia wsparcie dla
    renderowanie elementów gry i interakcja,
    i ...
    Pobierz silnik VASSAL
  • 3
    OpenPDF — rozwidlenie iText
    OpenPDF — rozwidlenie iText
    OpenPDF to biblioteka Java do tworzenia
    i edycji plików PDF z LGPL i
    Licencja open source MPL. OpenPDF to
    LGPL/MPL open source następca iText,
    w ...
    Pobierz OpenPDF — rozwidlenie iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - System do Automatyzacji
    Analizy geologiczne - to geografia
    Oprogramowanie systemu informacyjnego (GIS) z
    ogromne możliwości geodanych
    przetwarzanie i an...
    Pobierz SAGA GIS
  • 5
    Przybornik dla Java/JTOOpen
    Przybornik dla Java/JTOOpen
    IBM Toolbox for Java / JTOpen to
    biblioteka klas Java obsługująca
    klient/serwer i programowanie internetowe
    modeli do systemu z systemem OS/400,
    i5/OS, lub...
    Pobierz Zestaw narzędzi dla języka Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (lub D3 dla dokumentów opartych na danych)
    to biblioteka JavaScript, która pozwala
    do tworzenia dynamicznych, interaktywnych danych
    wizualizacje w przeglądarkach internetowych. Z D3
    ty...
    Pobierz plik D3.js
  • więcej »

Komendy systemu Linux

Ad