AVISynth ist ein FrameServer, er arbeit im Hintergrund und hat keine Grafische Oberfläche.
Gesteuert wird er durch eine Skript-Datei, welche Befehle (Funktionen) enthält die dann Zeile für Zeile abgearbeitet werden, welches dann durch zusätzliche Plugins erweitert werden können.
Man muss einfach nur eine Textdatei erstellen (die Dateiendung dann in
avs ändern)
und dann folgenden Inhalt eintragen.
Code:
DirectShowSource("C:\Mein_Video.avi")
Spline36Resize(640,480)
in meinem Beispiel lädst du mit Befehl
DirectShowSource ein Video welches dann in der Klammer und denn Anführungszeichen mit dem Pfad eingetragen ist.
Manchmal musst du auch die fps (Bilder pro Sekunde) mit angeben, wenn es selber nicht erkennt.
Das sieht dann so aus:
Code:
DirectShowSource("C:\Mein_Video.avi", fps=25.000)
Spline36Resize(640,480)
mit
Spline36Resize änderst du dann die Auflösung des Videos in das was innerhalb der Klammer steht (640x480).
Du kannst das Video auch schneiden, dazu verwendet man den Befehl
Trim, innerhalb der Klammer werden dann der Start-Bild und das End-Bild eingetragen.
z.B. so
Code:
DirectShowSource("C:\Mein_Video.avi", fps=25.000)
Spline36Resize(640,480)
Trim(250,500)
damit werden nur die Bilder zwischen den Frame 250 und 500 abgespielt.
Wenn du aber dann nur einpaar schnipsel aus dem Video brauchst, dann ist es geschickter den Skript etwas abzuändern.
z.B. so
Code:
quelle=DirectShowSource("C:\Mein_Video.avi", fps=25.000)
clip_1=quelle.Trim(250,500)
clip_2=quelle.Trim(800,900)
clip_3=quelle.Trim(1050,1500)
AlignedSplice(clip_1,clip_2,clip_3)
Spline36Resize(640,480)
Unter
quelle definiert man dann die Funktion
DirectShowSource damit man die nicht immer wieder eintippen braucht.
Dann kann man Unter
clip_1 einen Teilausschnitt aus der
quelle definieren, man kann dann so viele erstellen wie es einem lieb ist, müssen aber alle einen eigenen Namen haben.
Damit die einzelnen Clips dann zu einen Video zusammen gefügt werden, verwendet man den Befehl
AlignedSplice, die Reinfolge kann man dann wie es einem beliebt anpassen, in dem man einfach statt
AlignedSplice(clip_1,clip_2,clip_3),
AlignedSplice(clip_2,clip_1,clip_3) hin schreibt.
Da es recht schwer (eigentlich unmöglich) ist zu entscheiden ab welchem Frame der Clip anfangen und am welchem Frame es aufhören soll, ohne das Video zu sehen, gibt dafür ebenfalls eine sehr komfortable Lösung (
VirtualDubMod).
Öffne in VirtualDubMod die AVS Datei mit dem Inhalt aus meinem ersten Beispiel, damit du zuerst das Video betrachten kannst.
Wenn das Video geöffnet ist, drücke STRG+E, damit startest du denn integrierten AVS-Editor, mit ihm kannst du dann die Skipte sehr komfortabel bearbeiten, mit F5 kannst du dann die Änderungen im VirtualDubMod anzeigen lassen.
Suche dann mit Hilfe des Schieberegler unten im VirtualDubMod auf die gewünschte Position in dem Video und trage dann die Frames welche in VirtualDubMod unten angezeigt werden in den Skript ein, mit F5 aktualisierst du den Skript im VirtualDubMod.
Auf dieser Art und Weise kannst du sehr schnell ein Video zusammen schneiden (ohne Übergänge) oder Werbung aus einem Video entfernen.
Wenn du fertig bist, einfach STRG+P Drücken und den gewünschten Codec und die dazugehörigen einstelligen auswählen, mit OK alles bestätigen und dann zurück zu VDM, dort die Taste F7 drücken und speichern.
MfG JackRipper
PS.: ist vielleicht am Anfang etwas viel, aber wenn man sich dran gewöhnt hat, wird man feststellen das für solche Aufgaben nicht besseres gibt, wenn du welche Fragen hast dann nur raus damit.
EDIT:
Den
DirectShowSource Befehl (Funktion) sollte man nur dann verwenden, wenn
AVISource versagt hat.
DirectShowSource: wmv, mp4, ac3, fvl, x264
AVISource: xvid, divx, huffyuy, lags, avi (Camcorder)
MPEG2Source: mpeg, mpv, m2v, mpg, vob. es wird dazu dann aber auch DGMPGDec benötigt, welches eine index-Datei erstellt die man dann mit Hilfe von MPEG2Source in AVISynth öffnen kann.