Diese Seite zeigt, wie man Variablen
verwendet, um Zwischenwerte für die weitere Verarbeitung in einem
Skript zu speichern. Es beschreibt auch die Datentypen, die durch
Skripte manipuliert werden können, und wie literals (Konstanten) jener Typen geschrieben werden.
Ein Variablenname kann eine
Zeichenkette von praktisch beliebiger Länge sein (mehr als 4000 Zeichen
in Avisynth 2,56 und höher), die (englische) Buchstaben, Ziffern und
Unterstriche (_) enthalten, aber keine anderen Zeichen. Der Name darf
nicht mit einer Ziffer beginnen.
Sie können Zeichen aus der ihrer Sprachen Codepage (locale) in Strings und Dateinamen verwenden (ANSI nur 8 Bit, keine Unicode).
Die Anordnung einer Variable in einem Ausdruck wird bestimmt durch die
Variablen können einen Wert haben von einem der folgenden Typen:
Subtitle("""AVISynth is as they say "l33t".""")
Es gibt einen anderen Typ, der intern von Avisynth verwendet
wird - der void oder 'undefined' Typ. Seine Hauptanwendung ist in
Verbindung mit optionalen Argumenten der Funktion. Siehe Defined()-Funktion.
Variablen können entweder lokal
sein (gebunden an den lokalen Rahmen des Script-Blocks, der gerade ausgeführt wird) oder global. Globale Variablen gelten im gesamten Skriptzusammenhang und auf sie kann zugegriffen werden durch alle
Internen Funktionen, Nutzerdefinierte Scriptfunktionen, Laufzeitumgebung
Scripte and das auch durch das Hauptscript selbst.
Um eine globale Variable zu definieren und / oder ihr einen Wert zuweisen, musst du ihrem Namen das Schlüsselwort global
auf der linken Seite der Zuweisung voranstellen. Das Schlüsselwort ist
nicht erforderlich (eigentlich ist es nicht erlaubt), um den Wert einer
globalen Variable zu lesen. Beispiele:
global canvas = BlankClip(length=200, pixel_type="yv12")
global stroke_intensity = 0.7
...
global canvas = Overlay(canvas, pen, opacity=stroke_intensity, mask=brush)
Um eine Variable zu deklarieren, schreibe einfach den Namen der Variablen, dem ein '=' (ein Gleichheitszeichen) folgt, gefolgt von ihrem Anfangswert. Der Typ muss nicht deklariert werden, er wird durch den Wert festegelegt, der ihr zugewiesen wurde (und kann sogar durch nachfolgende Zuweisungen geändert werden). Der einzige Ort, wo es erlaubt ist (wenn auch nicht unbedingt erforderlich), den Typ einer Variablen festzulegen, ist in den Argument-Listen Benutzerdefinierter Skriptfunktionen. Beispiele:
b = false # deklariert eine Variable namens 'b' des Typs 'bool' und initialisiert sie mit 'false'
x = $100 # Typ int (Initialwert ist hexadecimal)
y = 256 # Typ int (Initialwert ist dezimal)
global f = 0.0 # Typ float, global deklariert
...
function mein_umfaerbe_filter(clip c, int neu_farbe, float menge, val "nutzerdaten") { ... }
$Date: 2008/12/21 09:23:02 $