Intro vorne einbauen (SSM->MeGUI)

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

  • Intro vorne einbauen (SSM->MeGUI)

    Anzeige
    Hallo,

    ich habe mich gestern dazu aufgerafft eure Sagaras Scriptmaker und Me GUI Tutorials zu gucken und muss zugeben, dass ich mich in die Tools ein bisschen verliebt habe :D
    Vielen Dank an dieser Stelle auch an Sagaras für dieses geile Teil :love:

    Jetzt habe ich allerdings eine Frage / Probremstellung. Ich möchte mein Intro (mp4.) immer vor meinen Aufnahmen haben. Ich hab die einfach hintereinander reingezogen, beißt sich aber irgendwie mit meiner Aufnahme (.avi). Habe ich etwas falsch verstanden oder geht es lediglich nicht, weil ich die gleichen Dateiendungen brauche?

    Wie löse ich das Problem denn am einfachsten?

    Edit: Die Fehlermeldung ist: "Splice: Video formats don't match (Dateipfad, line 13)
    Der Fehler erscheint bei virtual dub und bei megui, der scriptmaker sieht das entspannt.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von stefan_wayne ()

  • Spoiler anzeigen
    ### SagaraS Scriptmaker - Version 6.1 ###

    ### Lade Plugins und setze die globalen Variablen ###
    LoadPlugin("C:\Program Files (x86)\SagaraS Scriptmaker\Plugins\FFMS2.dll")
    LoadPlugin("C:\Program Files (x86)\SagaraS Scriptmaker\Plugins\blockbuster.dll")
    Global breite = 1920
    Global hoehe = 1080
    Global AR = 0

    ### Lade Videoquellen ###
    SetMTMode(3)
    AVIload("E:\videos\Kanalintro\introoutro2016-05-16.mp4", 1, 0, 0, -0, -0, "Auto", "Igno.", 0, 0)\
    ++ AVIload("E:\videos\WormsClanWars_2016_06_06_00_23_09_484.avi", 0, 0, 0, -0, -0, "Auto", "Auto", 0, 0)

    ### Filter Verarbeitungszone ###
    SetMTMode(2)
    Blockbuster("Noise", Block_size=8, Detail_min=1, Detail_max=10, Luma_offset=0, Luma_threshold=25, Mean=0, Variance=1, Cache=256, Seed=0)

    (IsYUY2() == true) ? ConvertToYV16() : Last

    ### Funktion für Video-Laderoutine ###
    Function AVIload (String file, int loading, int cl, int co, int cr, int cu, string pixtype, string afps, int fpsn, int fpsd) {
    pixtype2 = (pixtype == "YUY2") ? "YUY2" : (pixtype == "RGB24") ? "RGB24" : (pixtype == "Y8") ? "Y8" : (pixtype == "YV12") ? "YUV420P8" : (pixtype == "YV24") ? "YUV444P8" : pixtype
    (loading == 1) ? FFIndex(file) : nop()
    clip0 = (loading == 3) ? (pixtype == "Auto") ? LWLibavVideoSource(file) : LWLibavVideoSource(file, format = pixtype2) : (loading == 2) ? Import(file).KillAudio() : (loading == 1) ? (pixtype == "Auto") ? FFVideoSource(file, threads=1) : FFVideoSource(file, threads=1, colorspace=pixtype) : (pixtype == "Auto") ? AVISource(file, false).KillAudio() : AVISource(file, false, pixel_type=pixtype).KillAudio()
    clip1 = clip0.AutoFPS(afps, fpsn, fpsd).Cropping(cl, co, cr, cu)
    Return (clip1.width == breite && clip1.height == hoehe) ? clip1 : Clip1.Resize()
    }

    Function AutoFPS (Clip clip0, string afps, int fpsn, int fpsd) {
    rate1 = (afps == "Auto") ? (Round(Float(clip0.framerate * 1000)) / 1000) / 2 : nop()
    rate2 = (afps == "Auto") ? Round(clip0.framerate) / 2 : nop()
    rate = (afps == "Auto") ? (rate1 == rate2) ? 1 : 1001 : (afps == "Igno.") ? clip0.frameratedenominator : fpsd
    ratefaktor = (afps == "Auto") ? (rate == 1001) ? 1000 : 1 : nop()
    clip0 = (afps == "Auto") ? (rate == 1001) ? clip0.AssumeFPS(Round(clip0.Framerate) * 1000, rate) : clip0.AssumeFPS(round(clip0.framerate), rate) : (afps == "Igno.") ? clip0.AssumeFPS(clip0.frameratenumerator, rate) : clip0.AssumeFPS(fpsn, rate)
    Return clip0.ChangeFPS(42, 1)
    }

    Function Cropping (Clip clip0, int cl, int co, int cr, int cu) {
    clip0 = (clip0.IsRGB32() == True) ? clip0.ConvertToRGB24() : clip0
    Return (cl != 0 || co != 0 || cr != 0 || cu != 0) ? clip0.Crop(cl, co, cr, cu) : clip0
    }

    Function SameColorAs (clip clip0, clip clip1) {
    wert1 = (clip0.IsRGB32() == true) ? 0 : (clip0.IsRGB24() == true) ? 1 : (clip0.IsYV24() == true) ? 2 : (clip0.IsYUY2() == true) ? 3 : (clip0.IsYV16() == true) ? 4 : (clip0.IsYV12 == true) ? 5 : (clip0.IsYV411() == true) ? 6 : 7
    wert2 = (clip1.IsRGB32() == true) ? 0 : (clip1.IsRGB24() == true) ? 1 : (clip1.IsYV24() == true) ? 2 : (clip1.IsYUY2() == true) ? 3 : (clip1.IsYV16() == true) ? 4 : (clip1.IsYV12 == true) ? 5 : (clip1.IsYV411() == true) ? 6 : 7
    return (wert1 == wert2) ? clip0 : (wert2 == 0) ? clip0.ConvertToRGB32() : (wert2 == 1) ? clip0.ConvertToRGB24() : (wert2 == 2) ? clip0.ConvertToYV24() : (wert2 == 3) ? clip0.ConvertToYUY2() : (wert2 == 4) ? clip0.ConvertToYV16() : (wert2 == 5) ? clip0.ConvertToYV12() : (wert2 == 6) ? clip0.ConvertToYV411() : clip0.ConvertToY8()
    }

    Function Resize (Clip clip1) {
    clip3 = clip1
    clip1 = (AR == 1) ? ((float(Clip1.height * breite) / clip1.width) / 2 == round((float(Clip1.height * breite) / clip1.width) / 2)) ? ((float(Clip1.width * hoehe) / clip1.height) / 2 == round((float(Clip1.width * hoehe) / clip1.height) / 2)) ? clip1 : clip1.ConvertToRGB24() : clip1.ConvertToRGB24() : clip1
    clip1 = (AR == 1) ? (((clip1.width * hoehe) / clip1.height > breite) ? Clip1.Spline64Resize(breite, round(float(Clip1.height * breite) / clip1.width)) : Clip1.Spline64Resize(round(float(clip1.width * hoehe) / clip1.height), hoehe)) : clip1.Spline64Resize(breite, hoehe)
    back = (AR == 1) ? (0 == 1) ? ImageReader("", 0, clip1.framecount - 1, clip1.framerate).ChangeFPS(Clip1.frameratenumerator, Clip1.frameratedenominator).Spline64Resize(breite, hoehe).ConvertToRGB24() : BlankClip(clip1, width = breite, height = hoehe, pixel_type = "RGB24").KillAudio() : clip1
    Return (AR == 1) ? Overlay(back, clip1, (back.width - clip1.width) / 2, (back.height - clip1.height) / 2).SameColorAs(clip3) : clip1
    }



    strohi schrieb:

    Wichtiger wäre da eher die MediaInfo der beiden Dateien.
    Was genau verstehst du unter "MediaInfo" und wo finde ich diese?
  • Anzeige

    stefan_wayne schrieb:

    Was genau verstehst du unter "MediaInfo" und wo finde ich diese?
    Wie stelle ich meine Frage richtig?

    stefan_wayne schrieb:

    Edit: Die Fehlermeldung ist: "Splice: Video formats don't match (Dateipfad, line 13)
    Wenn ich es richtig in Erinnerung habe:
    Häufigster Grund für den Fehler sind vermutlich Videos mit unterschiedlichen FPS. Um die laden zu können, setze den Haken bei "FPS ändern" (oder so ähnlich) im SSM und gib die gewünschten FPS des Videos ein.
    Videoempfehlungen:
    ShimmyMC
    NuRap
    ShimmyMC
    Napoleon Bonaparte
  • stefan_wayne schrieb:

    Edit: Die Fehlermeldung ist: "Splice: Video formats don't match (Dateipfad, line 13)
    Der Fehler erscheint bei virtual dub und bei megui, der scriptmaker sieht das entspannt.
    Kann nur darauf deuten das der Farbraum unterschiedlich ist. Beim SSM unter Farbe den Farbraum bitte angeben und nicht auf Gleich stellen.

    Bei unterschiedlicher Framerate kommt diese Fehlermeldung:
    Splice: Video framerate doesn't match
    Lösung: Im SSM den Haken unter Video -> FPS ändern anhaken und eine neue manuelle FPS für beide Videos angeben. Können schließlich nicht beide mit unterschiedlicher FPS in einem Video sein. Vor allem nicht wenn AVISynth nur CFR kann ;D

    Bei einem Auflösungsproblem zweier Videos würde diese Fehlermeldung kommen:
    Splice: Frame sizes don't match
    Lösung: Im SSM wird vermutlich eine Faktorenskalierung vorliegen, aber die Basis beider Videos in der Liste haben schon unterschiedliche Auflösungen. Folge ist das nach einer Faktorenskalierung die Auflösungen beider Videos auch ungleich bleibt. Daher bei 2 Video mit unterschiedlicher Basis von Auflösungen immer eine fixe Auflösung wählen für alle.

    Und wenn es ein Problem mit dem Farbraum gibt, gibt es diese Fehlermeldung:
    Splice: Video formats don't match
    Lösung #1: Im SSM unter Farbe den Farbraum nicht auf gleich stellen, sofern beide Videos unterschiedliche Basis Farbräume haben.
    Lösung #2: Den Pixel Type unter Video für das markierte Video in der Liste auf einen Farbraum stellen der A) der Codec unterstützt und B) muss es dem anderen Video entsprechen. Dieser Weg ist aber erst dann relevant, sollte das eingelesene Video ein Fehlverhalten von Farben darstellen. z.B. einen Grünschleier aufweisen.

    Ganz simple ^^
  • Sagaras schrieb:

    stefan_wayne schrieb:

    Edit: Die Fehlermeldung ist: "Splice: Video formats don't match (Dateipfad, line 13)
    Der Fehler erscheint bei virtual dub und bei megui, der scriptmaker sieht das entspannt.
    Kann nur darauf deuten das der Farbraum unterschiedlich ist. Beim SSM unter Farbe den Farbraum bitte angeben und nicht auf Gleich stellen.
    Bei unterschiedlicher Framerate kommt diese Fehlermeldung:
    Splice: Video framerate doesn't match
    Lösung: Im SSM den Haken unter Video -> FPS ändern anhaken und eine neue manuelle FPS für beide Videos angeben. Können schließlich nicht beide mit unterschiedlicher FPS in einem Video sein. Vor allem nicht wenn AVISynth nur CFR kann ;D

    Bei einem Auflösungsproblem zweier Videos würde diese Fehlermeldung kommen:
    Splice: Frame sizes don't match
    Lösung: Im SSM wird vermutlich eine Faktorenskalierung vorliegen, aber die Basis beider Videos in der Liste haben schon unterschiedliche Auflösungen. Folge ist das nach einer Faktorenskalierung die Auflösungen beider Videos auch ungleich bleibt. Daher bei 2 Video mit unterschiedlicher Basis von Auflösungen immer eine fixe Auflösung wählen für alle.

    Und wenn es ein Problem mit dem Farbraum gibt, gibt es diese Fehlermeldung:
    Splice: Video formats don't match
    Lösung #1: Im SSM unter Farbe den Farbraum nicht auf gleich stellen, sofern beide Videos unterschiedliche Basis Farbräume haben.
    Lösung #2: Den Pixel Type unter Video für das markierte Video in der Liste auf einen Farbraum stellen der A) der Codec unterstützt und B) muss es dem anderen Video entsprechen. Dieser Weg ist aber erst dann relevant, sollte das eingelesene Video ein Fehlverhalten von Farben darstellen. z.B. einen Grünschleier aufweisen.

    Ganz simple ^^
    Danke. Das hat geholfen. Welcher Farbraum wäre denn besser oder ist der unterschied marginal?Hab jetzt einfach YV12 genommen.
    Was gibt den Farbraum vor? Das Spiel oder die Einstellungen von Afterburner beispielsweise?
  • stefan_wayne schrieb:

    Was gibt den Farbraum vor? Das Spiel oder die Einstellungen von Afterburner beispielsweise?
    Dein Betriebssystem läuft für Gewöhnlich mit RGB32 (32Bit)

    Früher gab es noch RGB24 (Kann man bei bestimmten PCs/OS immer noch einstellen) (24Bit)

    RGB16 (Wäre eine Palette von Farben mit 65.536 Farben) (16Bit)

    Und MS-DOS lief mit VGA mit 256 Farben die zusammen eine Palette bildeten.


    Auf jedenfall läuft erstmal jedes neuartige Spiel auf deinem Rechner immer mit RGB32.

    Bei der Aufnahme kann man das schon runter brechen. Denn RGB32 und RGB24 wären 1:1 Aufnahmen deines Games/Bildes was du am Monitor sehen würdest.

    Schlechter wird es mit YV24 (alias YUV 4:4:4) wo an sich die Farben nun auf eine Matrix aufbauen und nicht mehr dem RGB entsprechen. Die RGB -> YUV Konvertierung die bei einer Aufnahme laufen kann, sparrt Speicherplatz auf der Festplatte, da YUV kompakter ist wie es die Informationen speichert.

    Dann gibt es noch YUY2 (alias YUV 4:2:2) und YV12 (alias YUV 4:2:0). Die beiden Farbräume sparen Speicherplatz indem sie die Chromabilder (Farben) einfach verkleinern. Sprich sieht es im Endeffekt mehr verschmiert aus.

    Je besser also der Farbraum ist (RGB z.B.), desto besser kann nachbearbeitet werden mit Skalierer und anderen Filtern, ohne die eigentliche Qualität des Bildes noch mal zu verschlechtern.

    Je schlechter der Farbraum ist (YV12 z.B.), desto schlimmer können Nachbearbeitungen enden. Skalierer z.B. können dann nicht effektiv arbeiten und verschmieren halt noch mehr als es schon ist.

    Das zur grauen Theorie.

    Mit welchen Farbraum du aufnimmst, ist aber dir überlassen. Fest steht, deine Spiele werden vermutlich alle mit RGB32 laufen. Wie du aber dieses RGB aufnimmst, bestimmst du im Aufnahmeprogramm mit dem Codec selbst.


    Edit:
    Im SSM, kann der Farbraum eigentlich auf YV12 gelassen werden. Sollte eigentlich auch Standard gewesen sein. Denn zum einen braucht es für höhere Farbräume A) Videos die ebenfalls höhere Farbräume aufweisen und B) muss der Encoder z.B. x264 in MeGUI entsprechend auf den neuen Farbraum abgeändert werden. Standard nutzt x264 immer YV12.

    Und an sich reicht das eigentlich auch. Es sei denn man will noch mehr rausbekommen als üblich. Dann muss man den Workflow beim Encoding etwas abändern ;D
  • Vielen Dank. Eine letzte Frage hätte ich noch.
    Wenn ich das AviSynth-Skript speichere gibt er mir gleichzeitig zwei .wav Dateien aus. Eine mit Spielsound und eine mit meinem Mikrofon.
    Soweit perfekt.

    Wenn ich jetzt in MeGUI alles reinpacke und encodiere, dann kommt am Ende eine .mkv Datei raus, auf der nur der Spielsound, aber meine Stimme nicht zu hören ist.
    Obwohl in der Queue 4 Jobs sind. Video, Ton1, Ton 2 und das muxen.





    Wo liegt der Fehler? In dem Videotutorial von De-M-on hat er es leider nur anhand von einer Tonspur gezeigt.
  • Du musst die Tonspuren erst händisch zusammenmischen, z. B. mit audacity.

    Wenn du da mehrere tracks in megui angibst, ist das wie auf einer DVD mit mehreren Sprachen:
    Da sind mehrere Tonspuren drauf gespeichert, je nach gewählter Sprache wird aber immer nur eine abgespielt. Alle gleichzeitig wäre doof, weil dann keiner was verstehen würde. :)
    So ist es dann auch in deiner Videodatei. Da sind, wenn du bei megui mehrere tracks angibst, nachher mehrere Tonspuren drinnen, von denen dann immer nur eine gewählte abgespielt wird, in dem Falle entweder Stimme oder igs.

    Also wie gesagt, mischen müsstest du das noch selber.
    You like music? I like pissing.
    ~Corey Taylor
  • google.de/webhp?sourceid=chrom…&ie=UTF-8#q=video%20noise

    Du baust noise in dein Video ein. Etwas was andere krampfhaft versuchen mit gescheiten Denoise Filtern zu entfernen, falls man mit einer Realkamera bei Dunkelheit aufgenommen hat, wo das gerne entsteht, bzw auch einige Filme haben Noise.

    Noise verschlechtert die Komprimierbarkeit des Videos erheblich und Noise sieht ja auch nicht schön aus diese Punkte (bildrauschen). Und du baust es mit dem Filter gerade absichtlich auf deine cleanen gamingvideos ein xD
    Aktuelle Projekte/Videos