Beiträge von Sagaras

    Die erfinden gefühlt jedes 3te oder 4te Jahr eine neue Krankheit was die Medien ausschlachten können.

    Erst war es AIDS, dann BSE, dann Hühnergrippe, danach Schweinepest, jetzt Corona.

    Alter... es wird langweilig.


    Angst: Nö, warum auch? Entweder es passiert, oder es passiert nicht.
    Es ist einfach Unkontrollierbar, weil Menschen nun mal jeden Tag miteinander zu tun haben. Sei es durch Reisen oder Handel. Bleibt nun mal nicht aus.

    Und mal ehrlich... die Menschen sind doch selbst Schuld an den Kram. Die züchten ja die Viren bzw. lassen sie mutieren und hat man nicht gesehen.

    Früher hat man sich mit Giftgas beschmissen, heute machen wir das durch Menschenkontakt. Wo ist das Problem? ^^

    Eine GUI muss nicht unbedingt bunt sein. Wir sind aber in der Computerei nicht umsonst fortgeschritten, so daß auch Nicht-Nerds mit Computern arbeiten können. Als Softwareentwickler mit Schwerpunkt Nutzerergonomie muss ich mich schon fragen, warum bestimmte Menschen darauf bestehen, daß nur die Harten in den Garten kommen dürfen, die keine zig Kommandozeilenparameter im Schädel mit sich rumschleppen wollen.

    Mit AVISynth als auch FFmpeg kann man gezielter als auch qualitativ besser zum gewünschten Ergebnis kommen.


    AVISynth ist zum einen nicht schwer und zum anderen bietet es auch durch AVSPmod eine Benutzeroberfläche.
    FFmpeg ist Mittel zum Zweck. Man kann es in eine GUI stecken, aber man wird niemals ein Tool dafür schreiben das sämtliche Möglichkeiten abdecken wird das das Tool kann. Insofern werden Benutzer GUIs die mit FFmpeg arbeiten immer limitiert sein. Und bis jetzt habe ich nur extrem limitierte FFmpeg GUI Tools gesehen.


    Die Frage die man sich aber stellen sollte ist: Was möchte ich mit dem Tool tun?


    1. Ein Tool mit dem man aus einem bestehenden Video einen Teil extrahieren kann, ohne das Video neu rendern zu müssen. Der Grund ist, daß ich aus verlustbehaftet gerenderten Videos Sequenzen schneiden möchte. Würden diese dan erneut verlustbehaftet gerendert, würden sich logischerweise Kompressionsarte aufaddieren und der Matsch wäre unanschaubar. Meine Erfahrung

    Wirst du mit keinem Schnittprogramm machen können die ein tollen Namen haben wie Premiere, Vegas und Co. Das sind alles Tools die das Bild neu berechnen. Videos werden hier dekodiert und als RGB Material bzw. bei Premiere vllt. sogar als YUY2 behandelt. Bei der Ausgabe wird das Video neu berechnet (Rendern) und neu kodiert. Also schon mal nicht das was du suchst.


    Hier wäre FFmpeg eine kostenlose und gute Wahl um eine 1:1 Kopie zu machen bzw. Fragmente als 1:1 extrahieren zu können. Wichtig ist dabei das das Video eine intakte GOP hat. Sprich den doppelten Wert der FPS. Ansonsten kann es passieren das man es Zeitlich nicht exakt zerlegen kann.


    Alternativ kann man das auch mit VirtualDub machen.


    ODER man kauft sich Tools die nur das können was du hier brauchst. Sowas gibt es auch. Damit du auch der Wirschafts Ergonomie entsprichst xD So nach dem Motto: Mensch geht einkaufen -> Sieht gutes Produkt -> Kauft es -> Wirft es dann irgendwann weg, wenn Zweck erfüllt.
    Vorgang wiederholt sich, wenn Situation wieder eintritt. xD


    2. Ein Tool mittels dessen man die Audiospur des Videos ersetzen kann ohne das Video neu zu rendern. Also einfach Alternativaudio gleicher Länge im Video ersetzen.

    Nennt sich Muxen und Demuxen. Das sollten die Tools können die du suchst. Davon gibt es Massen von Tools.


    Mit FFmpeg geht das natürlich auch Problemlos, aber Alternativ dazu kann man MKVmerge + MKVextractor nutzen, falls MKV Datei, ODER MP4muxer, falls MP4 Datein. Oder VirtualDub falls AVI Datein.
    Man kann aber halt auch alles mit FFmpeg abdecken. Man kann aber auch alles Seperat haben mit einer tollen Benutzeroberfläche xD



    Willst du Exotische Sachen machen wie z.B. FLAC Datei in MP4, dann empfehle ich als FFmpeg Alternative MKVmerge.



    Und ja, FFmpeg wäre die einfachste Lösung von allem. Kostenlos, Runterladen, den jeweiligen Script eingeben und los gehts.
    Es ist zwars nicht das Benutzerfreundlichste was es gibt, aber das einfachste um ans Ziel zu kommen. Jedenfalls meine Meinung. Und ich arbeite viel mit Videos.




    Ansonsten für dich:


    Für deine Frage 1: https://www.videohelp.com/software/sections/video-encoders
    Hier musst du nur Ausschau halten nach Tools die A) Kostenlos und B) Videos extrahieren können. Da fallen sehr viele schon raus ;D
    Und wie gesagt: Viele dieser Tools wollen die Videos neu berechnen und nicht kopieren.
    XMediaRecode kann auch kopieren. Aber ich weiß da nicht ob er die angegebenen Zeiten die man gesetzt hat berücksichtigt.


    Für deine Frage 2: https://www.videohelp.com/soft…ons/video-de-multiplexers





    warum bestimmte Menschen darauf bestehen, daß nur die Harten in den Garten kommen dürfen, die keine zig Kommandozeilenparameter im Schädel mit sich rumschleppen wollen.

    Zu 1:
    ffmpeg -i "C:\Neuer Ordner\video.mp4" -ss 00:15:00 -t 00:02:00 -c:v copy -c:a copy "C:\Neuer Ordner\VideoCut.mp4"


    -i = Input
    -ss = Startposition
    -t = Länge
    -c:v copy = Codec Video kopieren
    -c:a copy = Codec Audio kopieren


    5 Parameter.... Wow.


    Zu 2:
    Mergen von Video und Audio:
    ffmpeg -i "C:\Neuer Ordner\video.mp4" -an -c:v copy -i "C:\Neuer Ordner\Audio.aac" -c:a copy "C:\Neuer Ordner\VideoAudio.mp4"


    -i = Input
    -an = Löschen des Audios von video.mp4
    -c:v copy = Codec Video kopieren
    -c:a copy = Codec Audio kopieren


    4 Parameter, von den nur 1 neuer hinzu gekommen ist.


    Also insgesamt 6 Parameter? ^^ Wieviel hat FFmpeg noch mal insgesamt? xD
    Man kann sich das Leben schwer machen oder... man kann aber auch die Erfindung namens "Internet" nutzen und schnell fündig werden. xD

    RGBA / RGB32 = 32Bit (8Bit Rot, 8Bit Grün, 8Bit Blau, 8Bit Alpha Kanal)


    Diesen Farbraum braucht man nur in Programmen wie z.B. Blender, Aftereffekts, Photshop, Corel Draw, Maya, etc. pp)


    Für Aufnahmen von Spielen total unnötig, da es in diesem Moment genauso groß sein wird wie RGB.


    RGB / RGB24 = 24Bit Bit (8Bit Rot, 8Bit Grün, 8Bit Blau)


    Dieser Farbraum würde 1:1 deinem Spiel entsprechen.


    YUV444 = 24Bit (Wird unterteilt in einem 8Bit Leucht-, 8Bit Rotanteil und 8Bit Blauanteil Kanal)


    Von der Farbabtastung genauso hervorragend wie RGB / RGB24.


    YUY2 / YV16 = 16Bit (Unterteilt in 8Bit Leucht-, 4Bit Rotanteil und 4Bit Blauanteil)


    Horizontal gesehen ist nun jede zweite Zeile Farblos und wird durch Interpolation getuscht. Heißt das jede Farblose Zeile aus den angrenzenden Farblichen Zeilen rechnerisch ergänzt wird. Dadurch kann das Bild Horizontal gesehen etwas leicht verschwommen wirken.


    YV12 (Unterteilt in 8Bit Leucht, 2 Bit Rotanteil, 2Bit Blauanteil)


    Nun wird zusätzlich noch Vertikal jede zweite Zeile Farblos gestaltet. Ansonsten der gleiche Prozess wie bei YUY2 beschrieben.




    YUV Kanäle besitzen IMMER eine Farbmatrix und ein Farbbereich. In den meisten Fällen wird die Farbmatrix BT.601 für SD Filme genutzt, und BT.709 für HD Filme. Für UHD Filme gibt es noch BT.2020, habe ich aber bislang noch nicht in OBS oder MagicYUV gesehen.


    Farbbereiche werden unterteilt in PC Range (0 - 255) und TV Range (16 - 235)


    Zur Aufnahme eignet sich TV Range, da sowohl Youtube als auch alle anderen Videoprogramme in dieser Range arbeiten.


    RGB Farbräume nehmen immer in PC Range auf.




    Für Youtube Aufnahmen eignet sich in der Regel YV12, TV Range, BT.709 sofern du 720p+ Aufnahmen machst. BT.601 sofern du 720p- Aufnahmen tätigst.


    Höhere Farbräume wie YUY2 ODER RGB nur nutzen, wenn du das Video künstlich noch Hochskalieren möchtest.


    Beispiel wo RGB Aufnahmen Sinn machen würden:


    Aufnahme 320x200
    Skaliert auf 1920x1440 ohne Farbverlust:

    Ich spiele games immer auf easy und höchstens normal. Ich will einfach bisschen Inspiration für meine eigene Schriftstellerei und bisschen entspannen. Ich explodiere immer sofort, wenn ein Rätsel zu schwer ist oder ein Bossbattle dauert.

    Ja, kann ich gut verstehen. Sowas mache ich oft wenn ich irgendein RPG anfange. Erstmal Normal. Oder, wenn es wirklich in sich hat und ich mit der Handhabung noch Schwierigkeiten, dann auch mal auf Leicht um das Game kennen zu lernen. Weil ich möchte das Spiel beim ersten Lauf erst einmal genießen können so weit wie es geht ohne das es mich erschlägt. Wenn man dann aber einige Kniffe raus hat, und den Spielablauf so in etwa kennt, dann schalt ich meist hoch.


    Ich habe vorhin meinen YouTube Kanal endgültig gelöscht.

    Das ist Schade. Man kann ja andere Sachen machen die man gerne Präsentieren möchte.


    Was ganz gut läuft auf YT sind meist:
    - Tutorials zu verschiedenen Themen (Sollte dann aber auch Hand und Fuß haben)
    - Guides (z.B. für Trophäenjäger von Games)
    - Musik (Sollte aber Sicher sein das es GEMA Frei ist xD), denn Musik hört jeder ^^
    - Reviews zu irgendwas
    - Kreative Dinge (z.B. mit Blender, Photoshop, Gedichte etc. pp.)


    Da gibt es halt einige Dinge die man machen könnte und sie haben ein Mehrwert. Vor allem richtet sich deine Zielgruppe sich entsprechend.


    Wie man aber was am besten gestalten sollte oder dem Zuschauer begegnen sollte in einem Video muss halt durchdacht werden dann. Darüber könnte man schon Tutorials machen. Da gibt es viele Faktoren zu beachten dann. Kommt immer drauf an wie weit man das ausbauen möchte.


    Aber wenn es dir besser liegt da komplett keinen Gedanken dran verschwenden zu müssen, weil das normale Leben einen mehr im Griff hat, dann kann das auch jeder Nachvollziehen. ^^


    Internet ist ja nicht das Leben. Wir sind ja schließlich keine Smombies die irgendwie dauerhaft in der Cyberwelt sein müssen. Oftmals ist der nächste Freund/in direkt neben ein ohne das man es mitbekommt ;D

    Wofür macht man eigentlich Let's Plays?

    Um der Welt zu zeigen das man Spielen kann? ^^
    Es ist nicht wirklich was Produktives fürs Leben, so das man weiter kommt. Aber um sich von Gleichgesinnten Anerkennung und zu bekommen oder auch Aufmerksamkeit, ist das durchaus legitim sich durch sowas bekannt zu machen. ^^


    Um ehrlich zu sein... Let's Plays zu schauen ist für mich persönlich zu langweilig und selbst welche zu produzieren zu Mühselig. Mühselig deshalb, weil es A) am Ende eh kaum eine Sau schauen wird B) Der Bedarf auf YT mehr als Gedeckt ist und C) ich beim Zocken ständig drauf achten müsste ob Aufnahme, Festplatte etc... alles ok ist und und und... Da würde ich nie durch ein Game kommen.
    Ich zocke auch gerne Games, aber ich habe so Spaß daran und es ist sehr entspannend sich um nix anderes Gedanken machen zu müssen.


    Zumal der Gedanke mich plagen würde wenn ich Let's Plays mir anschauen würde, warum ich das entsprechende Spiel überhaupt noch kaufen sollte?


    Aber langsam habe ich Zweifel, ob eine Cam nicht zu "selbstdarstellerisch" wirkt und ab wann?

    Selbstdarstellerisch im welchem Sinne? Das jeder dich in deiner gewohnten oder gefakten Wohnung / Zimmer betrachten kann?
    Durchaus gibt es irgendwo Menschen die sich bei einem Video irgendwelche Sinnlosen Kommentare abliefern müssen oder nur weil sie ein Girl sehen, gleich unreife Kommentare absondern müssen die ins Vulgäre fallen.
    Entweder ist man da Eiskalt und ignoriert es oder man kommt damit nicht klar, dann sollte man es mit der Cam lassen.


    Und wieviel bleibt eigentlich noch von dem "eigenen content" übrig, wenn man im grunde nur das Spiel zockt und ohne Facecam kommentiert? Das klappt vielleicht bei Gronkh oder so. Aber so lustig bin ich zB. nicht und oft wurde mir gesagt, das meine stumme Gesichtskirmes in der Facecam das Spiel erst amüsant gemacht haben.

    Das klappt auch bei anderen. Gronkh und anderen ist das auch nicht in die Wiege gelegt worden. Das hat was mit Sozialen Umgang zu tun und wie man darin steht.
    z.B. Quatscht man mit Freunden auch mal Blödsinn oder total Sinnbefreites, so klappt das meist auch in anderen Situationen. Ist man aber ein eher Zurückgezogener Typ, so kommt das eher zur Geltung.


    Daran kann man aber immer arbeiten. Und sei dir gesagt: Dumm kann jeder reden. Das können so ziemlich alle hier im Forum. Aber nicht jeder sieht es gerne, wenn es so genannt wird xD Einige nennen es auch Studium. xD Das ist wie wenn einige sagen das Youtube ein Vollzeitjob ist. Vor allem mit Let's Plays xD


    Macht kein Sinn, aber so ist es halt. ^^


    Am Ende muss man es machen, wie man Bock hat. Es gibt mir ja keiner Geld dafür und ist ein Hobby. Aber wir reden hier vom Internet, wo man schon ein bisschen überlegen muss, was man so online stellt. Man muss schließlich dazu stehen.

    Genau. Hier sei gesagt: Ist der Ruf erst Ruiniert, lebt es sich ganz ungeniert. ^^


    Siehe TanzVerbot...... nein... schlechtes Beispiel. ^^

    Wo ist euer Antrieb

    Wie bereits erwähnt... Let's Plays mache ich nicht. Hatte damit zwars mal angefangen, aber keine Motivation gehabt. Hat im Endeffekt kein Mehrwert für mich gehabt.


    Dafür zocke ich Games aber bis zum bitteren Ende durch und wenn es wirklich Bock gemacht hat auch höhere Schwierigkeitsgrade. Mein Antrieb ist kein besonderer, es ist einfach der die Geschichte und das Gameplay zu genießen.


    Hatte erst vor einigen Tagen seit Jahren Resident Evil 4 wieder angetan. Da gab es Stellen die ich Abgrundtief hasse wie die Pest. Schlimmste ist aber das man es min. 2 mal durchspielen muss nur um dann OP Waffen freischalten zu können. Aber das Gefühl das man es geschafft hat ist der gleiche wie als wenn man bei Dark Souls ein Boss gelegt hat.


    Erst ärgere ich mich gefühlte Tausend male, aber dann wenn man es geschafft hat... gefühlte dreitausend Steine vom Herzen leichter xD Und dann will man natürlich wissen was dann kommt.


    Noch ein guter Antrieb sind Games mit Coop Modus bei mir. Ich würde z.B. glaube ich nie Stardew Valley zocken, weil das auf Dauer einfach zu langweilig wird. Aber im Coop macht das schon etwas Spaß. Genauso Minecraft oder Ark.
    Auch Diablo 3 wäre alleine zu langweilig. Aber hey... Wozu hat man denn Freunde? ^^

    Meist der Erststart. Der sollte mit ungeänderten Settings erfolgen über den im Setup neuen mitgelieferten Launcher.
    Sieht dem Original zum verwechseln ähnlich:
    Bild des neuen Launchers


    Und auch nur darüber das Spiel starten, da somit auch einige Patches aktiviert werden usw.
    - Erst ein Kaltstart mit ungeänderten Settings,
    - dann kannst du die Settings frei wählen.


    Ansonsten:


    Starte das Spiel bitte über den im Setup mitgeliefertem Launcher und prüfe nach ob folgendes so da steht wie auf diesem Bild:
    Launcher - Tab_General


    Wichtig ist das ganz oben dgVoodoo DirectX Wrapper ausgewählt ist.
    - Ist dies nicht der Fall, bitte über den Regulären Star Wars Launcher dies umstellen. (NICHT IM SPIEL)


    Ist nämlich dgVoodoo nicht ausgewählt, kann es auch ein Grund sein warum die Grafik nicht initialisiert werden kann.


    Sollte dgVoodoo falsch voreingestellt sein sein. so bitte an den Beitrag Nr. 13 halten in diesem Thread: RE: Star Wars - Episode 1 - The Phantom Menace x86/x64 Setup


    Im Setup mitgelieferten Launcher dann auch folgendes beachten:
    - Auflösung von 640x480 für den Erst Start.


    Dies soll erst mal nur zum testen sein ob das Game anspringt.


    Springt das Spiel mit der Auflösung an, kannst du andere Auflösungen probieren.
    Es sei angemerkt das das Spiel nicht jede Auflösung erkennen kann bzw. akzeptiert. Dann kann die Grafik nicht initialisiert werden.



    Ebenfalls sollte das Spiel als Admin installiert werden + als Admin ausgeführt werden. Hier geht es um Schreibzugriffs Rechte des Spiels zwecks Einstellungen und das anlegen von Temporären Dateien wie z.B. Savegames / Einstellungen etc. pp.
    Wenn etwas nicht initialisiert werden kann, kann es auch an soetwas liegen

    Ich hab das Gefühl, dass eine Kopie der Streams nicht so sehr eine Kopie ist, wie ich das erwartet habe.

    Eine Kopie eines Streams erfordert den Codec + den passenden Container.


    Ein Beispiel:
    Kopierst du ein PCM Stream in ein MP3 Container, dann wird entweder FFmpeg dir sagen das es nicht geht ODER er macht es im Zusammenhang das er es Konvertiert. In diesem Falle ist es keine Kopie mehr.


    Wichtig ist halt wie du dein FFmpeg Befehl schreibst. Die Argumente die du nach ffmpeg schreibst, haben alle ihre Bedeutungen. Die darf man nicht wild durcheinander schreiben, sondern muss wirklich eine Reihenfolge beachten.


    Daher immer Wichtig, wenn du da kein Plan hast dein Skript vllt. hier im Forum zu posten. Dann kann der eine oder andere auch helfen was genau schief geht.


    und ihn weitergeführt für die entsprechende Anzahl an Streams. Da wird der Fehler "Stream map '0:2' matches no streams.
    To ignore this, add a trailing '?' to the map." angezeigt.

    Stream 0:2 bezieht sich auf die Datei "in.mp4". Das ist mit der 0 gekennzeichnet. Und da willst du den Stream 2 haben. Den gibt es aber nicht.
    Du zeigst praktisch auf etwas Leeres.


    Als Beispiel wie du Map verstehen musst:



    Deine InputsDeine Streams (Index)
    0 (in.MP4)0 (Video Stream)
    1 (Audio Stream 1)
    2 (Audio Stream 2)
    3 (Untertitel Stream 1)
    4 (Untertitel Stream 2)
    1 (Dummy.wav)0 (Audio Stream)
    2 (Untertitel.srt)0 (Untertitel Stream)



    usw.


    An sich selektierst du nur mit map aus solch einer Liste.


    Bei in.mp4 hast du die Audio Streams schon mit -an gekillt. Die sind also nicht mehr da. Daher kannst du sie nicht mit map 0:1 und map 0:2 ansprechen. Die sind einfach nicht mehr da.


    WICHTIGER HINWEIS: Du arbeitest mit einem MP4 Container. Dieser versteht kein PCM WAV Audio. Erzeuge entweder eine passende leere AAC oder MP3 Audio Datei indem du die Dummy WAV umwandelst.
    ODER du nutzt als Ausgabe ein MKV Container.


    An sich müsste es so aussehen:
    Dummy1 und Dummy2 sind identisch.


    Code
    ffmpeg -i "in.mp4" -an -c:v copy -i "dummy1.wav" -c:a copy -i "dummy2.wav" -c:a copy out.mkv


    ODER

    Code
    ffmpeg -i "in.mp4" -an -c:v copy -i "dummy1.aac" -c:a copy -i "dummy2.aac" -c:a copy out.mp4

    Hier wird jetzt folgendes gemacht:
    Vom Video "in.mp4" werden alle Audio Spuren gekillt. Der Videostream wird mit aktuellem Codec kopiert (das macht das -c:v copy).


    Dann wird eine Audiospur Dummy1 angehangen (Diese hat im File Out.mp4 die Position map 0:1)
    Dieser Stream wird mit aktuellem Codec kopiert.


    Dann wird zum Schluss die Audiospur Dummy2 angehangen (Diese hat im File Out.mp4 die Position map 0:2)
    Auch dieser Stream wird kopiert.


    Im Endeffekt sind alle Streams kopiert. Außer die die entfernt wurden.



    Hältst du die Reihenfolge nicht ein, muss -map genutzt werden.
    Auch hier ein Beispiel:


    Code
    ffmpeg -i "in.mp4" -i "dummy1.aac" -i "dummy2.aac" -map 0 -an -c:v copy -map 1:0 -c:a copy -map 2:0 -c:a copy out.mp4

    Statt es mit einem Befehl den Stream zu zerfleddern (Was bei FFmpeg ewig dauert), würde ich das genau so in Angriff nehmen wie dein Vorposter und alles einzeln machen. Am besten alles in eine Batch Datei kapseln und gut ist. (Das geht schneller, da jeder Stream einzeln behandelt wird)


    Denn dein Problem war ja:

    Das Problem ist aber, dass wenn ich das erste Skript benutze, die Encodierung des Videos sofort beginnt und der Sound scheinbar gleichzeitig bearbeitet wird.


    Und das umgehst du somit.


    Sprich in der Batch Datei sollten folgende FFmpeg Befehle stehen:
    1x FFmpeg Befehl was sich nur um das Video kümmert und Audio Spuren ignoriert.
    1x - 999x FFmpeg Befehle die sich eine Audiospur nach der anderen vornehmen und die Videospur ignorieren.
    1x FFmpeg Befehl das die gesamte Show in einen Stream verkapselt. (Video und Audio Copy Modus aus mehreren Quellen)



    Machst du alles in einem FFmpeg Befehl wird auch alles gleichzeitig verarbeitet, da FFmpeg gleichzeitig auch ein Pipeline Tool ist. Theoretisch kann man Videos samt Audio an ein anderes Consolen Tool pipen lassen. z.B. an x264 oder SoX oder Lame MP3 Encoder oder oder oder...


    Man kann FFmpeg am Anfang oder ans Ende eine Piping Kette setzen. Das ist egal.


    Daher mache am besten alles in einer Batch Datei die eins nach den anderen ab arbeitet. Wichtig ist das das Muxing am Ende steht.
    Und du kannst mir glauben das wenn du alles einzeln machst das gut 10x schneller ist, als wenn du alles gleichzeitig machst.


    (In diesem Zusammenhang sei erwähnt, dass ich den eigentlichen Inhalt der Soundspuren nicht brauche - sie müssen nur vorhanden sein. Den Sound selber nutze ich aus der Originaldatei, nicht aus dem Proxy. Falls es also irgendeine absurde Einstellung gibt, die die gleiche Anzahl an Soundspuren erstellt, wie der Input vorgibt, sie jedoch leer lässt und dadurch überhaupt keine Zeit dafür geopfert werden muss, wäre das auch eine Alternative!)

    Lege dir am beste selbst ein Dummy WAV File an. z.B. mit Audacity. Die Länge ist völlig banal.
    Du kannst diese dann als Zweit Input nutzen bei FFmpeg. Achte darauf das du via -map, die WAV an die richtige Index Position setzt. Ignoriere gleichzeitig aber auch die Audiospuren der Hauptquelle.


    Sieht dann ungefähr so aus: ffmpeg -i "Hauptquelle.mkv" -an -i "DummyWAV" -map 0:1 -c:a copy -map 0:2 -c:a copy


    Ist jetzt aus dem Kopf und es kann sein das das mit der -map Angabe noch geändert werden muss.


    Theoretisch läuft das halt so:
    Von der Hauptquelle werden die Audiospuren ignoriert (das wird mit -an gemacht. Kann sein das du da auch schon mit -map arbeiten musst)


    Hinzugefügt wird die Dummy Audio Spur an als Spur 1 und Spur 2, die einfach nur kopiert wird. Da sie nicht lang ist, sollte das auch fix gehen.


    Bei -map ist wichtig zu wissen:


    -map Q:I


    Q = Quell Index. Sprich welche Quelle angezapft werden soll. Der erste Input währe 0, der 2te 1 usw.
    I = Index. Index der Quelle. Sprich wenn der erste Input 3 Indexe hat sieht das so aus: 0:0, 0:1, 0:2
    Hat die 2te Input Quelle mehrere Indexe sieht das so aus: 1:0, 1:1, 1:2 usw.


    In vielen Fällen sitzt bei Videos auf dem Index 0 einer Quelle immer die Video Spur (Außer bei Trotteln die 0 Ahnung haben und sowas z.B auf den 1 oder 2ten Index setzen. Vergiss sowas. Videospuren kommen immer auf Index 0)
    Danach folgen Indexe mit Audiospuren
    Dann die Indexe mit Untertiteln
    Und zum Schluss andere Meta Daten wie z.B. Font Dateien, Miniaturbilder usw.


    Probiers dir erst mal aus. Wie gesagt, ist jetzt alles aus dem Kopf geschrieben. Habe jetzt auch nicht wirklich Zeit zu prüfen oder konkrete Skripte zu liefern. Aber so sollte es ablaufen und vor allem zügig. Wenn ich Zeit haben sollte, kann ich mich ja noch mal mit befassen. Probiere aber selbst erst mal aus. Vllt. bekommste das ja so hin.
    Für FFmpeg gibt es ja Hilfe im Netz wie Sand am Meer. ^^

    es gibt in obs seit langem in den ausgabe einstellungen unter ausgabemodus "einfach" mit utvideo / pcm? das ganze in ein avi container zu klatschen. das ist das was ich bisher gemacht habe.
    das demuxen dauert aber einfach EEEEEEWIG.

    Warum willst du es denn demuxen wenn du es so aufnimmst? Der Sinn dahinter erklärt sich mir noch nicht.


    Die meisten Tools können die Spuren alle direkt laden.


    Selbst Audacity kann alle Audiospuren aus einer AVI Datei direkt laden.


    MeGUI und selbst Staxrip können via AVISynth die Spuren alle direkt laden.


    Da muss also nix demuxt und auch nix Indexiert werden unbedingt.



    handbrake demuxed auch nicht. (keinen schimmer was die da im hintergrund nutzen)

    Handbrake läd direkt alle Streams aus den Container. Der erkennt die Streams.
    Kannst du bei MeGUI und Staxrip via AVISynth machen, weil die darauf basieren. Muss man halt ein wenig Ahnung haben von AVISynth. Und das ist nicht viel.


    So könnte man das in AVISynth schon mal zerlegen:

    Code
    v1 = AVISource("Video.avi", true, vtrack=0, atrack=1)
    a1 = v1.KillVideo
    a2 = AVISource("Video.avi", true, vtrack=0, atrack=2).Killvideo
    v1 = v1.KillAudio



    Jetzt müsste man noch eine Ausgabe erzeugen. Kommt drauf an was du möchtest.
    Du kannst auch beide Audiospuren mischen lassen und dann mit samt Video ausgeben.
    Sieht dann ungefähr so aus:

    Code
    v1 = AVISource("Video.avi", true, vtrack=0, atrack=1)
    a1 = v1.KillVideo
    a2 = AVISource("Video.avi", true, vtrack=0, atrack=2).Killvideo
    v1 = v1.KillAudio
    a = MixAudio(a1, a2, 0.5, 0.5)
    AudioDub(v1, a)

    Und das wars dann auch schon.


    Du kannst auch einzelne Spuren ausgeben lassen, indem du einfach die Variable in Zeile 6,7 oder 8 angibst. Dann hast du halt nur die eine Spur.
    z.B. wenn du da nur a1 hinschreibst, dann hast du nur Audiospur 1.



    Wenn du dein Audio via Audacity abmischen möchtest gibt es ein Plugin dafür damit du aus der AVI direkt in Audio Streams laden kannst.

    Code
    v = AVISource("Video.avi",false)
    a = WAVSource("Audio.wav")
    AudioDub(v, a)

    Danach kannst du über MeGUI oder Staxrip entscheiden welchen Video- und Audiocodec du nutzen möchtest.


    Ist also recht simple.


    Und kein Demuxen mehr von nöten.


    ich weiß nur das megui und staxrip erst mal ewig rummachen um das video zu demuxen.

    Wenn du ihnen eine MKV hinlegst, dauert das schon, weil die MKV Dateien indexiert werden müssen. Und je größer so eine MKV ist, desto länger dauert der Kram.


    Zudem ist es normal für MeGUI und Staxrip alles in Spuren zu zerlegen. Das ist eine normale Vorgehensweise um sicher zu stellen alle Streams zu 100% bearbeiten zu können. Gerade bei DVDs oder BluRays hat sich das bewährt.


    DVDs haben meist MPEG2 Video Streams und MP2 bzw. AC3 Audio Files.
    BluRays mit ihrem H264 Video Streams und DTS oder AC3 Audio Files.


    Und das muss halt demuxt werden. Weil du es da mit Formaten zu tun hast die man einfach nicht direkt verarbeiten kann.


    z.B. kann Audio zu leise sein, dann wird meist Normalisiert.
    Oder du hast es mit Multichannel Audio zu tun. Also Raumklang und willst es in Stereo umwandeln. Auch da bietet es sich an erst alles zu demuxen.


    MeGUI und Staxrip sind ja nicht für Let's Plays gedacht gewesen ;D
    Zumal das kein Video Bearbeitungs Tool ist. xD


    wenn ich mit staxrip encode bietet es mir als preset nur "quality" an. es gibt aber in nvenc diverse andere presets wie "highquality" und "lossless" zb.
    ich kann ja staxrip mit meiner eigenen parameter zeile "füttern" ich bin mir aber nicht sicher ob staxrip dan trotzdem mit "quality" anstatt "highquality" oder "slow" arbeitet

    Nutze Staxrip nicht und weiß daher grad was da alles für Tools mit geliefert werden.


    Jedoch sollte beachtet werden das Angaben zwischen einem normalen H264 Encoder und NVenc etwas anders sind.


    Mich würde ja mal so aus Neugier interessieren welche Abenteuerliche Settings da gemacht werden von deiner Seite aus ^^

    optionen wären also megui oder staxrip.
    bei beiden hab ich das problem das die utvideo aufnahmen erst mal ewig demuxen
    (das dauert meist länger als der eigentlich encoding prozess)

    ?(


    Was macht ihr bloß, das man sowas sagt? ^^


    1.) UTVideo in einer MKV Datei ist schon mal ne pure Vergewaltigung. Kann man machen, sollte aber in der Regel in einem AVI Container rein.
    UTVideo ist in einem AVI Container am schnellsten geöffnet und bearbeitbar.
    Würde man deine MKV remuxen, ist das ja doppelt gemoppelt.
    Zumal MeGUI und auch Staxrip das demuxen wollen nach dem Indexieren, weil sie MKV Container nicht direkt via AVISource laden können, sondern über Sonder Filter wie z.B. FFMS oder LSmash. Und das ist halt langsam.


    2.) Demuxen dauert nie lange, es sei denn der Rechner arbeitet extrems an irgendwas anderem. Demuxen ist nix anderes als das die Datei in einem Video heraus kopiert wird. Dies sollte in der Regel eigentlich nur mit Audiospuren gemacht werden, da Videospuren den meisten Speicher belegen und eine Kopie dessen Sinnbefreit wäre.
    In der Regel werden die Audiospuren extrahiert und ein Temp angelegt um Video und Audiospuren zu laden. So macht man das halt bei DVDs, BluRays.



    Alternative zur Aufnahme:
    AVI Aufnahme mit WAV Tonspur


    Das wäre dann eine bessere Chance. Weil dann kann man gleich loslegen mit dem Encodieren oder dem Bearbeiten. Ohne irgendwas demuxen zu müssen. ^^


    Wenn das OBS via FFmpeg schon kann.


    Ansonsten 2te Alternative:
    Nimm das für was OBS auch ausgelegt ist. Entweder H264, NVENC oder VCE. Das wären auch Codecs die du problemlos in MKV unterbringen kannst oder gar in MP4.

    Naja eine höhe Bitrate sieht runter gerendert immer noch besser aus als eine niedrige Bitrate runtergerendert. Zumindest bilde ich mir dies ein.

    Das ist keine Einbildung, sondern auch ein technischer Fakt. Darüber hatte ich auch geschrieben. Lossless Aufnahmen ist die maximalste Bitrate die man nutzen kann für ein Video. Hohe Bitraten ergeben natürlich große Dateien. Darum sieht das auch besser aus, wenn YT das dann kodiert, als wenn YT ein Video bekommt was schon vorher verlust Kodiert aufgenommen bzw. unterirdisch kodiert wurde.


    Und schon sind wir wieder bei der Tatsache warum einige halt so aufnehmen. Technisch halt absolut korrekte Vorgehensweise.


    Optisch gesehen gebe ich dir halt recht, das es übertrieben ist. Zumal man davon ausgehen kann das eure Zuschauer eure Videos nur ein mal schauen. Es schauen nur sehr sehr seeehr selten mal welche ein Video zwei mal an. Ist einfach so.


    Also fallen technische Sachen wie Qualität auch nicht so derbe ins Gewicht. Es sollte halt nur eine gesunde Optik aufweisen. Sprich wenn da im Video nur Pixelbrei auftaucht oder Ghosting Effekte, sollte man es überdenken. Weil das wäre schon Schwerwiegend.

    Kommt halt immer drauf an was man mit dem Video vor hat zwecks Bearbeitung.


    Für eure 0815 Let's Plays reicht es in der Tat absolut aus mit einem Verlust Codec aufzunehmen.
    Weil ihr bearbeitet kaum etwas, oder es schaut eh kaum einer ein zweites mal das selbe Video.


    Daher bin ich auch voll deiner Meinung.


    Aber mich wundert es das du mit ner 100000 Bitrate (kbits oder mbits konnt ich jetzt nicht entnehmen) aufnimmst, wenn YT dir das doch eh auf 45000 runter schraubt. Dann reicht dir doch auch 60000 ;D Nur mal so von der Logik her. ^^

    Aber merkst du bei den 400GB Dateien einen wirklich merklichen Qualitätsunterschied nach dem Hochladen? Hatte bei den Einstellungen in OBS auch mal etwas rum probiert aber,sehr großen Unterschied konnte ich jetzt nicht feststellen

    Die Fragen dich bei über 400 GB aufnahmen habe sind. Ist das vor der Bearbeitung?
    Zweite Frage ist: Wozu? Youtube haut das sowieso runter in der Qualität.

    1. Das ist vor der Aufnahme und muss erst bearbeitet werden. Keine Sau läd 400GB auf YT hoch.
    2. Youtube kodiert das neu, jedoch sei anzumerken das je besser die hochgeladene Quelle war, desto besser ist das neu kodierte Video auf YT.


    Da er verlustfrei aufnimmt, stehen ihn mehr Option Freiheiten zur Verfügung zwecks Bearbeitung.
    Denn je öfter man etwas neu kodieren lässt mit einem Verlust Codec wie H264, dann geht immer mehr die Qualität runter.


    Technisch gesehen ist das also die bestmöglichste Variante, wenn man noch Bearbeiten möchte.
    Dann braucht man nämlich nur einmal richtig enkodieren und hat dann das Video was man hochladen möchte.


    Wenn man aber Verlustbehaftet schon aufnimmt und dann noch mal bearbeitet und das noch mal kodieren lässt, dann ist das doppelt gemoppelt und hat somit eine schlechtere Bildqualität.


    Das ist eine technische Tatsache.


    Wie man das dann optisch empfinden mag liegt bei jedem selbst. Der eine ist so zufrieden, der andere mag halt lieber das andere.


    Er hat zwars mehr Speicherplatz verbraucht, aber hat halt kein Bildverlust und hat somit wie gesagt mehr Optionen für ein Qualitativ hochwertiges Endergebnis. Selbst für YT.

    Also ich hatte tausendmal mehr Probleme mit Windows 7 als mit Windows 10. Ich denke, viele Ablehnungen kommen aus der Ecke 'kenn ich nicht, mag ich nicht'.

    Das ist das übliche Klischee bei Usern. Das war früher auch schon so.


    "Wieso brauch ich Win95? DOS und Win3.1 sind viel stabiler."
    "WinXP brauch doch keiner, weil soviele Bugs, da bleibe ich lieber bei Win98 / WinME"
    "Win7 ist mir zu blöd, XP ist viel stabiler."
    usw.


    Und jetzt haben wir das halt bei Win10 ^^


    Erst heulen sie rum, dann irgendwann wechseln die meisten, weil nix mehr läuft was auf dem Markt ist. Und dann auf einmal sind se zufrieden mit dem OS. xD


    Als Microsoft XP und Vista abgeschossen hatten, haben wie aus Geisterhand auf einmal alle ein neues OS gehabt und waren damit dann zufrieden xD


    Einfach nur abwarten.... Wenn Microsoft mal Win7 dicht macht zwecks Support und auch andere Entwickler den Dienst für das OS einstellen, dann wechseln die meisten automatisch.


    Einige werden auch eventuell vorher wechseln, weil auch die Spiele werden ja wohl kein Halt machen. Und wie gesagt DirectX 12 ist nur ein Beispiel.

    Nutzt du auf einem aktuellen Windows10 einen Chrome oder Firefox von 2010 dann ist auch hier ein Sicherheitsrisiko was deutlich größer ist als wenn der Browser immer aktuell gehalten wird, ist also quatsch (wie es gerne von "möchtegern" ITlern gebracht wird) das ein veraltetes System die Schwachstelle #1 ist wenn man keine Updates macht...

    Wenn es Spürbare Updates sind wird man halt um Updates nicht drum herum kommen.


    Irgendwann ist halt mal der Tag da wo dann vllt. Internetseiten auf irgendwas neues aktualisieren, was dann nur neue Browserversionen darstellen können.


    Und wenn man dann noch Pech hat, gibt es keine Browserupdates mehr für das jeweilige alte OS.


    Gutes Beispiel ist. z.B. Win Vista. Das kann z.B. keine Youtube Seiten mehr richtig darstellen, weil Browser Updates für das OS eingestellt sind und auch sonst jeglicher Support zum erliegen gekommen sind. Gleiches für XP, etc...


    Und ob du nun Updatest oder nicht. Der Tag X wird halt kommen wo auch für Win 7 die Lichter aus gemacht werden. ^^


    Sind ja nicht nur Browser und Internet Sachen das Problem. Auch Spiele und Co. werden auf Sachen schon aufgebaut die Win7 gar nicht kann, die aber Win10 schon drauf hat. Denken wir mal nur an DirectX 12.

    VLC hat sein eigenes Dekodierungs Werkzeug unabhängig vom System dabei.


    Und der Win10 Hauseigene Player nutzt das in Win10 schon enthaltene Hauseigene H265 Dekodierer. Da kann aber sein das es für andere Programme gesperrt ist, bzw diese dies nicht nutzen können und anfangen eigene zu nutzen.
    Bei Vegas kann ich mir denken das die schon wieder ihr eigenes Dekodierungs Werkzeug dabei haben.


    Da H265 ja so ziemlich in der Kinderstube noch steckt, ist eventuell das Zusammenspiel unter den Programmen noch nicht 100%ig.


    Wie gesagt... kann sein das es an der Dekoder Geschichte liegt. Kann aber auch sein das es andere Gründe hat.
    Eine Ferndiagnose ist halt immer sehr schwer zu bewerkstelligen mit den wenigen Infos.



    Dachte, dass man mit H265 vielleicht noch ein wenig was an Qualität rausholen kann, ohne das die Dateien zu groß werden, wollte es einfach mal ausprobieren.

    Für Lets Player ist H265 ungeeignet. Hat einfach zu wenig Mehrwert für euch.


    - Zu lange Encodierungs / Dekodierungs Zeiten
    - Qualität ist genauso wie bei H264
    - Das einzige was H265 besser macht ist das man gleiche Qualität für ein wenig weniger Speicherplatz bekommt. (Sprich bessere Kompressionsmöglichkeiten)


    Kann man mit VP9 gut vergleichen, was ja das Äquivalent zu H265 ist.


    Auf die paar MB die du da einsparen würdest, wäre mir der persönlich die Nachteile wegen Wartezeit und Technischen Krimskram zu blöde sich da irgendwie zu bemühen. ^^ Mit H264 hat man eigentlich keine Probleme, es funktioniert und so ziemlich jede blöde Software kann damit was anfangen heutzutage.


    Wenn du bei H264 bleibst ist es das beste was du machen kannst zwecks Leistungs- und Qualitäts Verhältnis.

    Mal so am Rande eine Frage: Warum H265? Der frisst doch erst recht extrem viel Leistung bei der Aufnahme und der Dekodierung.


    -


    Wenn ein Video nicht ordentlich schnell dekodiert werden kann, ist irgendwo eine Bremse drin. Das kann an verschiedenen Sachen liegen das das Video bei der Darstellung wie eine Diashow abläuft.


    Müsste man prüfen welche Filter geschaltet werden bei der Dekodierung.
    Auch kann man prüfen ob ein Video über GPU oder CPU dekodiert wird. Kann nämlich sein das wenn das Video extrem komprimiert ist oder zu groß ist (Bildauflösung, FPS, etc.) das es über die CPU nicht anständig verarbeitet werden kann.
    Am besten Dekodierungs Filter prüfen.


    Wenn man FFDshow drauf hat, dann kann man das schon über die Videodekoder Konfiguration nachschauen.
    CMD Befehl dafür wäre: C:\Windows\SysWOW64\rundll32.exe "C:\Program Files (x86)\ffdshow\ffdshow.ax",configure
    Sollte aber als Schnellstart Link irgendwo existieren.


    Dort kann man dann prüfen welche Formate über welchen Dekodierungsfilter laufen.
    Auch kann man das Tool als Diagnose verwenden, wenn man es über MPC-HC laufen lässt. Da kann man dann prüfen welcher Dekoder gerade genommen wird und wie schnell das durchgejagt wird. Auch Farbraum und Co lassen sich dort dann prüfen.
    Weil wenn man z.B. ein 4K Video macht mit einem Farbraum ala YUY2 oder noch krasser mit YV24, dann ist da halt auch Sense und das Video endet ebenfalls als Diashow in den meisten Fällen.


    Bei der GPU Unterstützung ist halt die Frage ob diese dann auch wirklich bei der Dekodierung genutzt wird. Das gilt es halt zu prüfen.
    Kann nämlich an sein das Ganze und wird dann doch nicht genutzt, weil das Problem irgendwo anders liegt. ^^

    AVIload wird nicht so funktionieren, weil das ist eine von mir erstellte Funktion die ebenfalls in das Skript hinein müsste. Die Angaben die du da siehst sind Parameter die der Funktion übergeben werden. So stehen die Parameter für AVIload folgendermaßen:
    AVIload(Pafd des Videos in Anführungszeichen, Bildschnitt für Links, Oben, Rechts, Unten, Pixel Typ als String [Auto, RGB24, YV24, YUY2, YV12, Y8], Angabe für FPS Rundung als String [Auto, Igno., Manueller FPS Wert als Bruch], FPS Zähler Wert, FPS Nenner Wert)


    Um das zu verwenden benötigst du halt die Funktion dazu. Die wird aber durch den SSM individuell generiert. Je nachdem welche Einstellungen du getätigt hast.


    Würde daher vorschlagen das du diese Option vergisst und es im SSM lässt. ^^


    -


    Standard kannst du aber AVISource verwenden für AVI Files. http://avisynth.nl/index.php/AviSource
    FFVideoSource und FFAudioSource muss in Kombination genutzt werden und braucht das Plugin FFMS2.DLL http://avisynth.nl/index.php/FFmpegSource#Function_Reference
    Dann gibt es noch L-Smash: http://avisynth.nl/index.php/LSMASHSource


    FFMS2 als auch L-Smash wirst du brauchen, wenn du vorhast andere Dinge in AVISynth zu laden wie z.B. MP4, MKV, etc. pp.



    Darauf kannst du eine Batch aufbauen die solch ein Skript generiert. Denn ein AVISynth Skript kann nicht von sich aus erkennen ob in seinem Pfad eine Videodatei existiert oder nicht. Und schon gar nicht das AVISynth das automatisch in sein Skript schreibt. ^^


    Aber mit einer Batch Datei kannst du das bewerkstelligen oder man kann programmieren und schreibt sich ein kleines Tool dafür (Was eleganter wäre als eine Batch). ^^



    Theoretisch müsste die Batch oder das Tool folgende Aufgabe erfüllen:
    - Prüfung ob keine, eine oder mehrere AVI Dateien im Ordner sind
    - Sind AVI Dateien vorhanden muss für jede dieser Dateien ein Skript angelegt werden
    - In jedem der Skripte muss dann die jeweilige AVI Datei (Am besten mit Pfad) von der Batch/Tool eingetragen werden



    Um das in Batch umzusetzen wird das echt kompliziert. Wenn nicht gar unmöglich, da die Schleife für Dateinamen und Skripterstellung mehrer Dateien mit 2 Schleifen gelöst werden müsste und das würde bei einer Batch Komplikationen ergeben.


    Aber ganz easy ist das z.B. schon mit QB64 zu regeln (Kostenlos): https://www.portal.qb64.org/


    Funktioniert Tadellos. Die EXE Datei muss du mit QB64 erzeugen und in den Ordner kopieren wo du deine Videos hast.


    Beim Ausführen, wird der Skript für jede AVI Datei erstellt die sich im Ordner befindet.


    Kann man noch ausbauen. z.B.
    - einen Absoluten Pfad für die Dateinamen mit in den Skript schreiben lassen
    - Die Skripte dann in ein extra Ordner verschieben


    So hätte man eine bessere Übersicht.


    Man kann das auch Optisch über das Programm ausgeben lassen. Aber so hast du schon mal ein Muster. ;D