### [yv12][yuy2]

# ColorYUV

## ColorYUV(clip, float "gain_y", float "off_y", float "gamma_y", float "cont_y", float "gain_u", float "off_u", float "gamma_u", float "cont_u", float "gain_v", float "off_v", float "gamma_v", float "cont_v", string "levels", string "opt", boolean "showyuv", boolean "analyze", boolean "autowhite", boolean "autogain")

gain: jest mnożnikiem wartości. Oznacza to, że jeśli gain jest ustawione na 0 to wartości pozostaną bez zmian. Kiedy gain ma wartość do 256 to wszystkie wartości są mnożone przez 2 (dwukrotna jasność). Natomiast, gdy gain jest większe od 256 i mniejsze lub równe 512 to wszystkie wartości są mnożone przez 3
offset: dodaje wartość lumy (jasność) lub wartości chromy (kolor). Offset ustawiony do 16 będzie dodawał 16 do wartości piksela. Offset od -32 będzie odejmował 32 od każdej wartości piksela
gamma: modyfikuje gamę określonego kanału. Gdy gamma przyjmuje wartości od 0 to są one równa wartości 1.0. Kiedy gamma jest ustawiona na 256 jest równa wartości 2.0. Natomiast, gdy gamma przyjmie wartość -256 (minimalna wartość) to jest równa wartości 0.0
cont: modyfikuje kontrast określonego kanału. Gdy cont przyjmuje wartości od 0 to jest równy wartości 1.0. Kiedy cont jest ustawiona na 256 jest równy wartości 2.0. Natomiast, gdy cont przyjmie wartość -256 (minimalna wartość) to jest równy wartości 0.0
levels: może być ustawiony na: "TV->PC" lub "PC->TV", czyli zostanie wykonana konwersja skali. Normalnie wartości YUV nie są zapisywane od 0 do 255 (skala PC), ale mają ograniczoną skalę (skala TV). Argument ten określa wykonanie konwersji pomiędzy tymi dwoma formatami
opt: można wpisać "coring" lub "" (nic - ustawienie domyślne). Określenie "coring" oznacza iż klip video w przestrzeni YUV będzie rzutowany do prawidłowej skali TV
showyuv: przyjmuje wartość true lub false. Przy określeniu wartości tego argumentu na true, filtr podmieni wejściowy klip video innym, który będzie miał określone, wszystkie, wartości chromy wzdłuż dwóch cięć. Jest to przydatne przy modyfikacji koloru, ale trzeba wiedzieć jakie kolory są dostarczane. Po lewej stronie i na górze klipu chroma ma wartości ‘16'. Po prawej stronie kanał U przyjmuje maksymalną wartość. Na dole kanał V przyjmuje maksymalną wartość. W środku oba kanały chromy są ustawione na 128 (lub szary)
analyze: przyjmuje wartość true lub false. Wyświetla statystykę koloru na ekranie. Są tam wartości dla wszystkich kanałów: maksymalne, minimalne, średnie, "loose maximum" i "loose minimum". Wartości "loose" są wytwarzane na zewnątrz filtra określają bardzo jasny lub bardzo ciemny, sztuczny, niski lub wysoki szum
autowhite: przyjmuje wartość true lub false. Ustawienie to będzie używać informacji od analizatora i będzie próbowało zrównoważyć kolor względem środka. Jeśli nagrałeś jakiś materiał, gdzie kolory są przesunięte do przodu o jeden kolor, ten filtr może ci pomóc. Ale bądź ostrożny – opcja ta nie jest zbyt inteligentna – np. jeśli materiał źródłowy ma czyste, niebieskie niebo autowhite może przekształcić je w niebo szare! Podczas korzystania z autowhite opcje: off_u i off_v mogą nie działać
autogain: przyjmuje wartość true lub false. Ustawienie to będzie używać informacji od analizatora i będzie próbowało wytworzenia najlepszego kontrastu jaki jest możliwy. Oznacza to, że będzie proporcjonalnie zwiększał wartości lumy (y) do pasujących minimalnych i maksymalnych wartości. Opcja ta polepszy ciemne sceny, a sceny z dobrym kontrastem pozostawi bez zmian. W niektórych miejscach może korzystać z "autolevels"

ColorYUV pozwala zmienić kolor i luminację klipu video na wiele, różnych sposobów. Wszystkie ustawienia dla tego filtra są dodatkowe. Wszystkie wartości są domyślnie ustawione na "0". Dodatkowo, argumenty gain, offset, gamma i cont mogą być ustawione niezależnie od kanału.
Wartości nasycenia, kontrastu i jasności (jak w Tweak) są wyliczane przez następujące związki:
cont_u = cont_v = - (1 - nasycenie) * 256
cont_y = - (1-kontrast) * 256
off_y = jasność
Nasycenie 0.8 daje dla przykładu: cont_u = cont_v = - 0.2 * 256 = 51.2

Przykłady:

colorYUV(gamma_y=128, gamma_u=256, gamma_v=256, offset_y=-16) | # | modyfikacja gamy we wszystkich kanałach, podczas tworzenia kanału 'y'
colorYUV(showyuv=true) | # | pokazuje wszystkie kolory. Klatka 0 - wartość lumy=16, klatka 1 - wartość lumy=17 itd.
colorYUV(autogain=true, autowhite=true) | # | naprawia uszkodzenia widoczne na bardzo złych (jakościowo) nagraniach

### translated by Slim