AviSynth als Video-Editor: Wie funktioniert das?

  • Hallo Freunde,

    ich habe mich gefragt, ob man AviSynth als Videoeditor verwenden kann.
    Ich würde gerne eine Verarbeitungskette haben wie:

    Source ->Avisynth -> Encoder

    Falls ja habt Ihr ein Beispiel von nem script oder Source Code?

    Grüße


    Hello friends,

    I was wondering whether it is possible to use AviSynth as a video - editor.
    I want To make a processing Queue with AviSynth in the middle.

    Source ->Avisynth -> Encoder

    If yes, does anyone have an example script / source code?

  • Da rennt doch hier einer wirklich offene Türen ein! -- Ja, genau das ist doch der Zweck von AviSynth?!

    Der Hauptvorteil an einem Frameserver ist ja gerade, zwischendurch nicht noch mal Gigabytes an Zischen-Videos auf die Platte zu schreiben, sondern gleich einen Encoder damit zu versorgen, der das endgültige Format ausgibt.

    Oder wofür hättest du AviSynth sonst verwendet?

  • Beispiele lassen sich unzählige finden (hier oder durch google)... kommt immer darauf an, was Du speziell mit dem Basismaterial machen willst.


    zB "Beispiel.avs", um die Quelle zu deinterlacen und mit einem Denoiser für High-Quality zu behandeln:

    ------------------------------------------------------------
    #LOAD PLUGINS
    LoadPlugin("C:\pfad-zu-avisynth\plugins\DGDecode.dll")
    LoadPlugin("C:\dto\plugins\HQDn3d.dll")
    LoadPlugin("C:\dto\plugins\MVTools.dll")
    LoadPlugin("C:\dto\plugins\MT_Masktools.dll")
    Import("C:\dto\functions\LimitedSharpenFaster.avs")
    Import("C:\dto\functions\FastDegrain.avs")

    #LOAD SOURCE
    AviSource("c:\pfad-zum-basismaterial\beispiel.avi")
    #oder MPEG2Source("c:\dto\beispiel.d2v")

    #FILTERS
    #Deinterlacing-TDeint
    TDeint()

    #Denoiser-FASTDEGRAIN
    FastDegrain()

    ------------------------------------------------------------
    Das Vorgenannte mit einem Script-editor wie Notepad o.ä. erstellen und als Textdatei mit der Endung .avs abspeichern.

    Ich benutze immer VirtualDub (es gibt auch andere Tools wie MeGui, etc), um die zunächst erstellte "Beispiel.avs" zu laden.... Dann Encoder auswählen und einstellen (zB Xvid), Save as... und auf das kompremierte Endergebnis warten.;)

    Filter etc findest Du hier im Forum oder durch googeln.
    Sehr sinnvoll ist es, die Hilfe-Dateien von AviSynth mitzuinstallieren und durchzulesen.
    Tauchen spezielle Fragen bei Deinem Basismaterial oder zu einzelnen Filtern auf, fragst Du hier im Forum. ;)

    Gruss

  • Mmh ich glaube ich hatte eine kleine Denkblockade...

    Die Skripte die ich bisher gefunden habe, haben immer mit Effekten oder ähnlichem aufgehört.
    Der Schritt des eigentlichen Encodens wurde dann dezent ausgelassen, deswegen fragte ich nach Beispielen.

    Danke für die Antworten!

    Hab mir mal MeGui gezogen jetzt :)

    Das hilft mir schon mal ungemein! Kenne mich einfach nicht gut aus mit AviSynth, deswegen sorry, falls meine Fragen noobig sind :D


    Kennt Ihr Tools um Videos per Kommandozeile zu bearbeiten?
    Ich habe im englischsprachigen Forum gelesen, dass man es avs - dateien mittels av2yuv an ffmpeg pipen kann:

    Zitat

    avs2yuv input.avs - | ffmpeg -f yuv4mpegpipe -i - output.(whatever)


    (Quelle: http://forum.doom9.org/archive/index.php/t-68506.html)

    werde das auf alle Fälle mal probieren...

    Kennt Ihr noch andere Frameworks, die sowas bewerkstelligen könnten? (z.B. MLT?) Wie sind dann Eure Erfahrungen mit denen?

    Grüße

  • Der Zweck von AviSynth ist es ja -- wie beschrieben in Wichtig: Was ist Frameserving? -- unkomprimiertes Video an einen Encoder zu schicken. Und da sich AviSynth in die Windows-typische Schnittstelle "Image Compression Manager" (ICM) einklinkt, die ein Teil von "Video for Windows" (VfW) ist, können alle Programme, die AVI-Dateien mit den Windows-Betriebssystemfunktionen lesen, auch AVS-Skripte so lesen, als ob es unkomprimierte AVIs wären. Sie lassen sich Einzelbilder liefern und schicken diese an den ausgewählten VfW-Codec, der dann die eigentliche Komprimierungsarbeit übernimmt.

    Benutzeroberflächen wie GordianKnot, AutoGK oder StaxRip rufen dafür VirtualDubMod auf, welches das AviSynth-Skript als Videoquelle öffnet, sich fertig gefiltertes Video übergeben läßt und an einen VfW-Codec wie DivX oder XviD weiterleitet, und dessen Komprimierungsergebnis als AVI-Datei auf die Festplatte schreibt.

    Die MeGUI ruft stattdessen z.B. den Encoder x264.exe auf, der selber per VfW das AviSynth-Skript als Video liest. Entsprechendes können auch die MEncoder-Versionen, die bei der MeGUI unterstützt werden (deshalb heißt sie auch MeGUI: eine grafische Benutzeroberfläche für den MEncoder, weil "Kommandozeilen mit Hilfe eines Manuals aus vielen einzelnen Parametern zusammenbasteln" den heutigen Durchschnitts-PC-Nutzer bereits überfordert).

    Ursprünglich waren Frameserver notwendig, um Encoder mit Videomaterial zu versorgen, das sie nicht selber lesen können (z.B. können einige MPEG2-Encoder selber kein MPEG2-Video lesen, sondern nur AVI, und möglichst noch in einem spezellen unkomprimierten Format). AviSynth hat sich mittlerweile weit darüber hinausentwickelt, indem es nicht nur fremde Videoquellen liest und dem Encoder wie ein unkomprimiertes AVI präsentiert, sondern auch noch die ganze Bearbeitung durch Filter übernimmt; so bekommen die Encoder bereits "fertig vorgekautes" Video exakt im bevorzugten Format, das sie bloß noch encodieren brauchen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!