Automatisieren Videobearbeitung/Skripte (MeGUI/AviSynth Frage)

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Automatisieren Videobearbeitung/Skripte (MeGUI/AviSynth Frage)

    Anzeige
    Hallo,

    Ich habe mir mir hilf der Beiträge: Automatisierungs Skripte (AVISynth, Batch, FFMpeg) und Der große AviSynth-Guide mal selbst was zusammen gebastelt.
    Ich bin mir nicht ganz sicher ob dies hier der richtige Bereich ist, da diese beiden meiner Meinung nach Coding Sachen im Bereich Audio & Video sind, aber hier geht es nur um was ähnliches XD

    Da ich momentan keinen Fehler/kein Problem mit dem AVS Script habe, hab ich das nicht dort gepostet.
    Weil momentan auch die bisher enthaltenen Batch befehle die ich mir aus dem Automatisierungs Skript Topic genommen habe auch funktionieren, gehört es auch nicht richtig da rein (Falls es mal fertig ist, vielleicht, aber noch nicht jetzt um den Thread nicht so voll zu stopfen)

    Gibt es eine Möglichkeit MeGUI per Batch zu steuern?
    1. AVS Datei mit bestimmten parametern in das MeGUI Queue schreiben? (One-Click - Output - Profil/Parameter - MeGUI schließen/Minimieren)
    2. MeGUI Queue Abarbeiten (Vielleicht QuelleDateien löschen - Queue clearen - MeGUI schließen)

    Bisher habe ich leider nur Parameter für die x264.exe gefunden, aber das encodiert ja nur das Video, dann müsste ich mir die Parameter nochmal alle ansehen und dann schauen wie ich die Sound Datei da mit rein bekommen kann (mergen)... Oder geht das damit auch direkt? (Oder kann man danach dann mkvmerge mit Parameter starten?)


    Dann kommt noch eine Frage die vielleicht in das andere Topic gehören würde, aber da es auch hier dazu gehört, hoffe ich mal das mir vielleicht auch hier geholfen werden kann...

    Quellcode

    1. ​Video.Spline64Resize(2048,1152)

    Aber leider wird es dann doch in 720p gerendert... liegt das an One-Click von MeGUI? (da hab ich zum testen noch nichts umgestellt, kommt dann noch XD) Wenn Ja, dann macht der mir dann den merge nicht mehr, aber dazu steht ja oben schon ne Frage, weil schön wärs dann natürlich mit Parametern ;)

    Dann könnte ich natürlich noch nach der Rauschentfernung fragen, aber das Versuch ich erstmal selber...


    Ach und hier noch das Script, weil ich denke das die eine Zeile oben vielleicht nicht reichen wird
    Spoiler anzeigen
    bearbeitung.bat

    Quellcode

    1. ​@echo off
    2. set VIDEO=video.avi
    3. #Benötigte Vars
    4. set vdub="G:\Installiert\VirtualDub-1.10.4\vdub.exe"
    5. #Tonspuren Trennen
    6. echo VirtualDub.Open("%VIDEO%","",0); > vdjob.jobs
    7. echo VirtualDub.audio.SetSource(1,0); >> vdjob.jobs
    8. echo VirtualDub.SaveWAV("%VIDEO%.Gamesound.wav"); >> vdjob.jobs
    9. echo VirtualDub.audio.SetSource(1,1); >> vdjob.jobs
    10. echo VirtualDub.SaveWAV("%VIDEO%.Kommentar.wav"); >> vdjob.jobs
    11. echo VirtualDub.Close(); >> vdjob.jobs
    12. %vdub% /s vdjob.jobs
    13. del vdjob.jobs
    14. #Rauchen entfernen?
    15. #Vielleicht so?
    16. #sox.exe D:\noise.wav -n noiseprof D:\noise.noise-profile
    17. #http://www.letsplayforum.de/index.php/Thread/86671-Der-gro%C3%9Fe-AviSynth-Guide/?pageNo=1
    18. #AVS Script Erstellen
    19. echo Video=AVISource("G:\Aufnahmen\_Bearbeitung\%VIDEO%", audio=false).AssumeFPS(30,1) > mgjob.avs
    20. echo GameSound = WavSource("G:\Aufnahmen\_Bearbeitung\%VIDEO%.Gamesound.wav") >> mgjob.avs
    21. echo Voice = WavSource("G:\Aufnahmen\_Bearbeitung\%VIDEO%.Kommentar.wav") >> mgjob.avs
    22. echo Video.Spline64Resize(2048,1152) >> mgjob.avs
    23. echo FinalSound = MixAudio(AmplifyDB(MergeChannels(GameSound,GameSound), -9),MergeChannels(Voice,Voice)) >> mgjob.avs
    24. echo FertigesVideo= AudioDub(Video,FinalSound) >> mgjob.avs
    25. echo return FertigesVideo >> mgjob.avs
    26. #MeGui Queue schreiben mit bestimmten Parametern?
    27. #In weiteres Script oder wenns nicht geht auch hier MeGui Queue abarbeiten?
    Alles anzeigen


    Hoffentlich bis später ;)
  • Istani schrieb:

    Gibt es eine Möglichkeit MeGUI per Batch zu steuern?

    MeGUI selber nicht, ist ja auch ein GUI und kein CLI-Programm.^^ Du kannst aber mit x264.exe arbeiten.

    Istani schrieb:

    Bisher habe ich leider nur Parameter für die x264.exe gefunden, aber das encodiert ja nur das Video, dann müsste ich mir die Parameter nochmal alle ansehen und dann schauen wie ich die Sound Datei da mit rein bekommen kann (mergen)... Oder geht das damit auch direkt? (Oder kann man danach dann mkvmerge mit Parameter starten?)

    x264.exe + flac.exe (oder andere beliebige Audioencoder) + mkvmerge.exe und du kannst Audio und Video encoden und danach muxen. Aber wozu das alles, wenn du eh schon mit MeGUI arbeitest? Vor allem ist das Cutten dadurch deutlich einfacher als wenn du mit cmd arbeitest, weil MeGUI hat beim Cutten von Audio 'ne eigene Methode und arbeitet mit 'nem Zusatzprogramm.

    Istani schrieb:

    Video.Spline64Resize(2048,1152)

    Eher Spline36/Spline16 nehmen und außerdem bringt dir 2048x1152 mittlerweile auf YT nichts mehr, für die nächstgrößere Qualistufe nach 1080p brauchst du mind. 2080x1170 (1440p-Stufe).
    Und nicht One-Click-Encoder nehmen sondern entweder AutoEncode oder im Nachhinein mit MKVMergeGUI muxen.

    Verbesserung zur Batch:
    Spoiler anzeigen

    Quellcode

    1. @echo off
    2. set video=%1
    3. set vdub="G:\Installiert\VirtualDub-1.10.4\vdub.exe"
    4. echo: Audiostreams extrahieren
    5. echo VirtualDub.Open("%video%","",0); > vdjob.jobs
    6. echo VirtualDub.audio.SetSource(1,0); >> vdjob.jobs
    7. echo VirtualDub.SaveWAV("%video:~0,-4%_systemsound.wav"); >> vdjob.jobs
    8. echo VirtualDub.audio.SetSource(1,1); >> vdjob.jobs
    9. echo VirtualDub.SaveWAV("%video:~0,-4%_mic.wav"); >> vdjob.jobs
    10. echo VirtualDub.Close(); >> vdjob.jobs
    11. %vdub% /s vdjob.jobs
    12. del vdjob.jobs
    13. echo: AVS erstellen
    14. echo v = AVISource("%video%", false).AssumeFPS(30,1).Spline36Resize(2080, 1170) > mgjob.avs
    15. echo a0 = WavSource("%video:~0,-4%_systemsound.wav") >> mgjob.avs
    16. echo a1 = WavSource("%video:~0,-4%_mic.wav") >> mgjob.avs
    17. echo AudioDub(v, MixAudio(AmplifyDB(a0, -9), MergeChannels(a1, a1))) >> mgjob.avs
    Alles anzeigen



    Ich würde das eher so lösen. Ich hätte kein Bock jedes Mal den Dateinamen zu ändern ;D Dann lieber den Pfad als aller erste Variable übergeben lassen. Somit kannst du die Datei einfach draufziehen.^^

    Außerdem würde ich niemals Audiobearbeitung mit AviSynth machen ;D Machs lieber mit Audacity...das ist 1000 mal einfacher und besser.

    An dieser Stelle empfehle ich dir den SagaraS Scriptmaker (GUI)
    Der liefert ein paar schöne Funktionen mit und damit kannst du wesentlich einfacher deine Skripte erstellen.