Audio-Spuren in MKV vertauscht: Reparieren ohne Re-Encoding?

  • Ich habe hier ein *.MKV video mit zwei Audio-Spuren:


    Track 1: offiziell: deutsch - tatsächlich: englisch
    Track 2: offiziell: englisch - tatsächlich: deutsch


    Wenn ich in VLC die Audio-Spur auf "englisch" wechsele höre ich deutsch.


    Da ist also offensichtlich was falsch gelaufen beim Encoden.


    Wie kann ich jetzt nachträglich die MKV video Datei "reparieren" ohne das MKV vollständig zu re-encoden?


    Die Zuordnung audio track<--->Sprache steht doch irgendwo im Video Datei Header (könnte ich mir vorstellen).
    Da müsste man doch irgendwie ein Bit um-patchen können?


    Oder vielleicht mit irgendeinem Tool (Avidemux, Xmedia Recode) das machen?


    Wie geht das am einfachsten?

  • Einfach den .mkv File nochmal in mkvmerge werfen und die Audio Tracks neu sortieren (hoch/runter buttons) und das Ganze neu muxen.

  • In der Regel genügt es, die Flags zu tauschen, also z.B. Deutsch auf default und beim Rest default löschen. Das lässt sich per Skript mit mkvpropedit einfach automatisieren. Um hier noch die Sprache umzustellen:

    Code
    1. mkvpropedit video.mkv --edit track:a1 --set language=ger --set flag-default=1 --edit track:a2 --set language=eng --set flag-default=0