ConvertToRGB(clip)
ConvertToYUY2(clip)
ConvertBackToYUY2(clip)
ConvertToRGB24(clip)
ConvertToRGB32(clip)
AviSynth kann intern mit zwei Farbformaten arbeiten, RGB und YUY2. Diese Filter konvertieren die Formate. Wenn das Video bereits in dem angegebenen Format vorliegt, wird es unverändert durchgeschleift.
Manche Filter können nur in einem Format arbeiten. Die folgenden internen Filter arbeiten nur mit YUY2:
Alle VirtualDub-Filter arbeiten nur mit RGB32, siehe auch Plugins
Bei einem falschen Farbformat wird ein Fehler gemeldet.
Das Arbeiten in YUY2 ist schneller als in RGB.
Umwandlungen zwischen den Formaten sind nicht ganz verlustfrei, daher sollte man so wenig Umwandlungen als möglich verwenden. Wenn mehrere Umwandlungen notwendig sind, sollte man ConvertBackToYUY2() verwenden, falls die Quelle schon in YUY2 vorlag. Dadurch wird ein Verwischen der Farben vermindert..
Wenn AviSynth das Video in YUY2 ausgibt und die Anwendung RGB erwartet, wird ein installierter YUY2-Codec für die Umwandlung verwendet. Wenn es keinen YUY2-Codec gibt oder der vorhandene fehlerhaft umwandelt, kann natürlich die eingebaute Umwandlung verwendet werden (z.B. für TMPGEnc).
ConvertToRGB24 und ConvertToRGB32 erzwingen ein spezifisches RGB-Format
ConvertToRGB() konvertiert immer nach RGB32, wenn die Quelle YUY2 ist, führt
aber keine Umwandlung durch, wenn das Video in RGB24 vorliegt.
RGB24 ist meistens langsamer als RGB32. Der einzige Grund es zu verwenden können Kompatibilitätsprobleme bei manchen Anwendungen sein.
Huffyuv kann als YUY2-Codec verwendet werden (wenn kein anderer installiert ist).
Beispiel:
# So kann man die schwache Störung sichtbar machen, die durch mehrfache Umwandlungen entsteht control = ConvertToYUY2() test = ConvertToYUY2(ConvertToRGB(ConvertToYUY2(ConvertToRGB(control)))) test = ConvertToYUY2(ConvertToRGB(test)) return Subtract(test,control)