Tento filtr posune barevnostní informaci (C == U a V dohromady) nebo U a nebo V jednotlivě o sudý počet pixelů, v jednom z horizontálních směrů. Může také použít celkový vertikální posun úplné barevnostní informace, nahoru nebo dolů. Používá se na klipy v YUY2 nebo YV12 barevných prostředí.
Wilbert Dijkhof ho laskavě upravil tak, že může být také použit pro posunutí Červené (Red), Zelené (Green) nebo Modré (Blue) barvy nezávisle, pokud je vstup do filtru ve formátu RGB32.
Tento filtr je primárně navržen pro opravu nesprávných registrací barev.
Stáhnout verzi 2.7 pro Avisynth 2.5 (včetně zdrojového kódu)
Stáhnout starou verzi 1.2 pro Avisynth 2.0.x (pracuje jen v YUY2 barevném prostředí)
Příklad Avisynth syntaxe
# Posune informaci jak U tak V doleva o 2 pixely a dolů o jeden řádek
# Všimněte si, že U a/nebo V nemohou být posunuty o 1 pixel, protože každý pár UV
hodnot je svázán do 2 pixelů v YUY2 barevném prostředí
LoadPlugin("ChromaShift.dll") AVISource("Test.avi") ConvertToYUY2 # je-li potřeba. ChromaShift(C=-2,L=1)
# Posune Červenou (Red) informaci doleva o 2 pixely a Zelenou (Green) informaci doprava o 1 pixel.
LoadPlugin("ChromaShift.dll") AVISource("Test.avi") ConvertToRGB32 # if needed. ChromaShift(R=-2,G=1)
# Posune informaci jak U tak V doleva o 2 pixely a dolů o 2 řádky
# Všimněte si, že U a/nebo V nemohou být posunuty o 1 pixel, protože každý pár UV
hodnot je svázán do 4 pixelů v YV12 barevném prostředí
# L nemůže být posunuto o ne-sudý počet řádků v YV12 barevném prostředí ze stejných
důvodů
LoadPlugin("ChromaShift.dll") AVISource("Test.avi") ConvertToYV12 # je-li potřeba. ChromaShift(C=-2,L=2)
Úplný seznam parametrů je: ChromaShift
(clip, int
"C", int "U", int "V", int "L", int
"R", int "G", int "B")
Jakákoli ne-sudá hodnota parameteru pro C, U nebo V vyhodí výjimku protože barevnostní informace je držena jen pro každé 2 pixely v YUY2 bitmapě snímku. L může být jakákoli hodnota v YUY2 barevném prostředí, ale musí být sudá v YV12 barevném prostředí.
Jakékoli hodnoty pro C, U, V nebo L dají chybu, když použijete RGB32 barevné prostředí.
Jakékoli hodnoty pro R, G nebo B dají chybu, když použijete YUY2 nebo YV12 barevné prostředí.
4th November - V2.7: YV12 handling added.
4th November - V2.6a: RGB handling added in by Wilbert Dijkhof.
2nd November - included missing source code.
30th January, 2003 – V2.5 – re-compiled to work with Avisynth 2.5.
14th Sep, 2002 - V1.2 - added abilty to shift left as well as right and removed the restriction on single use of the C, U or V parameters. Also, added the L (Line) parameter to shift vertically. Code speeded up by not using a buffered frame.
13th Sep, 2002 - V1.1 - added parameters and control over C,U and V.
10th Sep, 2002 - First release for Avisynth
Celý zdrojový kód je zde poskytován pod GPL licencí. To znamená, že můžete volně používat a šířit software a programový kód bez jakéhokoli poplatku. Také to znamená, že máte volnost při vylepšování a rozšiřování zdrojového kódu, ale do té doby, dokud budete vytvářet upravené verze také pod GPL, a bude to tedy svobodný software s přístupem ke zdrojovému kódu pro každého. Zdrojový kód se kompiluje ve Visual C++ 6.0 s SP4. Pokud je problém se šířením zdrojového kódu, dejte mi prosím vědět.
Napište mi email na rec.video.desktop pokud máte jakékoli dotazy/komentáře/nápady/oznámení chyb.
Copyright Simon Walters siwalters(zavináč)hotmail.com
$English Date: 2004/08/13 21:57:25 $
Český překlad:21.4.2009