User:Henrikx
From Avisynth
- Test HTML zu WIKI
Contents |
[edit] DeinErstesSkript
Los geht es mit den grundlegensten AviSynth Skripten:
# Beispiel - Laden einer AVI-Datei
AviSource("MeinVideo.avi")
# Ende
Öffne einen Texteditor, tippe die obigen drei Zeilen ein (wobei du als "MeinVideo.avi" irgendeine AVI Datei auf deinem Rechner angibst) und speichere das Ganze als "MeinVideo.avs". Die Zeilen, die mit # beginnen, sind Kommentarzeilen. Du kannst die Kommentarzeilen beim Eintippen weglassen.
Du hast nun ein Skript, das man mit den meisten Videoplayern auf deinem Rechner öffnen kann, so z.B. kann der Windows Media Player 6.4 (ala "mplayer2.exe") das Skript abspielen. Ebenso können es VirtualDubMod oder VirtualDub abspielen. Für diese Programme erscheint die Textdatei einfach als AVI Datei. Cool, oder???
Es gibt viele unterschiedliche Arten von Videodateien und jede hat so seine Eigenart. So kann man z.B. mit AVISource keine MPEG Datei öffnen, weil es keine AVI Datei ist. Aber für MPEG Dateien kann man DirectShowSource verwenden, so dass du folgendes in dein Skript hineinschreiben musst:
# Beispiel - Laden einer MPEG-Datei
DirectShowSource("MeinVideo.mpg")
# Ende
Die Unterschiede beim Öffnen verschiedener Quellvideos kannst du auf den folgenden Seiten im Detail nachlesen: AVISource, DirectShowSource, AviFileSource, OpenDmlSource.
OK, beide Beispiele haben funktioniert? Glückwunsch, dein AviSynth arbeitet auf deinem Rechner als FrameServer. Jetzt ist es an der Zeit, etwas Interessanteres zu machen als nur das schon bekannte Video abzuspielen! Ein guter Beginn dazu ist, sich die am häufigsten genutzten Filter anzusehen oder gleich mit dem Handbuch durchzustarten.
Und wenn es nicht funktioniert hat? Dann blättere in der Anleitung zur Fehlersuche oder hole dir Hilfe bei der Avisynth-Gemeinde in den
- deutschsprachigen Foren
- und in den englischsprachigen Foren
- Test 2
[edit] AviSource Deutsch
</div>
AviSource(string filename [,...], bool audio, string pixel_type)
AviFileSource(string filename [,...] [, bool audio] [, string pixel_type])
WavSource(string filename [,...])
OpenDMLSource(string filename [,...] [, bool audio] [, string pixel_type])
AviSource verwendet als Argumente ein oder mehrere Dateinamen in Anführungszeichen und liest die Dateien ein. Dieser Filter kann jedes AVI lesen, wenn ein AVIFile Handler dafür vorhanden ist. Es können also nicht nur AVI sondern auch WAV, AVS (AviSynth Skripte) und VDR (VirtualDub Frameserver) Dateien geöffnet werden.
Parameter:
filename
Dateiname der einzulesenden Mediendatei (Video oder Audio). Wenn mehrere Dateien angegeben werden, werden diese mit UnalignedSplice aneinander gefügt.
audio
Flag, ob der Audioteil eines Videos ebenfalls eingelesen wird. Dieses Argument ist optional und standardmäßig auf true gesetzt (d.h. Audioteil einlesen).
pixel_type
Optionale Angabe des Farbraums. Seit AviSynth v2.5 ist der Standardwert auf "YV12" gesetzt. Weitere Bsp.: "YUY2", "RGB32", "RGB24"
Intern untersucht AviSource die Datei und bestimmt den Typ. Dann gibt er die Datei entweder an den AVIFile Handler des Video-for-Windows Interfaces oder den in AviSynth eingebauten OpenDML-Code (von VirtualDub) weiter. Alle Handler können "normale" AVI Dateien kleiner 2 GB lesen, aber nur der OpenDML-Handler kann noch größere AVI Dateien lesen. Nur der AVIFile Handler kann andere Typen wie WAV, VDR und AVS lesen. Bei Problemen mit der automatischen Bestimmung der Handler kann im Skript auch direkt OpenDMLSource oder AviFileSource verwendet werden, um die Verwendung eines bestimmten Handlers zu erzwingen.
[edit] Changelog
Bis zu AviSynth v2.04 war WavSource ein anderer Name für AviFileSource.
Seit AviSynth v2.04 wird ACM (Audio Compression Manager) Ton (z.B. MP3-AVI`s) unterstützt. Mit AviSource können nun WAV-Dateien nicht mehr geöffnet werden, dies ist nun nur mit WavSource möglich. WavSource versucht jetzt nicht mehr, den Video-Teil einer Datei zu öffnen. Das kann nützlich sein, um den Ton auszulesen, wenn das Video defekt ist oder kein passender Dekompressor (Codec) installiert ist.
Seit AviSynth v2.06 erlaubt der pixel_type Parameter (Standard "YUY2"), dem Dekompressor mitzuteilen, welcher Farbraum verwendet werden soll. Erlaubte Werte sind "YUY2", "RGB32" und "RGB24". Falls nicht angegeben, wird AviSynth den ersten verfügbaren Farbraum vom Dekompressor (in dieser Reihenfolge: YUY2, RGB32, RGB24) verwenden. Dieser Parameter hat keine Auswirkungen, wenn das Video in einem unkomprimierten Format vorliegt, da dann kein Dekompressor verwendet wird.
Seit AviSynth v2.5 ist der Standardwert des pixel_type Parameters auf YV12 geändert worden. Manchmal sind beim Laden einer DivX AVI Datei in AviSynth v2.5 die Farben verzerrt. Dies ist möglicherweise ein Fehler im DivX Dekompressor. Du kannst in diesem Fall SwapUV verwenden, um die Farben zu korrigieren.
[edit] Beispiele für die Verwendung von AviSource
# Beispiel 1 - Hinweis für C Programmierer: keine doppelten Rückwärtsschrägstriche (Backslashes)
AviSource("C:\Datei.avi")
# Ende
# Beispiel 2 - Vorwärtsschrägstriche (forward slash) funktionieren auch
AviSource("C:/Datei.avi")
# Ende
# Beispiel 3 - Einlesen des Tonteils einer WAV Datei
WavSource("C:\Soundtrack.wav")
# Ende
# Beispiel 4 - Einlesen mehrerer Dateien
# gleiche Wirkung wie AviSource("Datei1.avi")+AviSource("Datei2.avi")
AviSource("Datei1.avi","Datei2.avi")
# Ende
# Beispiel 5 - Einlesen ohne Audio und erzwingen einer RGB32 Dekompression
AviSource("Datei.avi",false,"RGB32")
# Ende

