BluRay (*.m2ts) zu MKV

    • Anleitung

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

    • BluRay (*.m2ts) zu MKV

      Hallo und willkommen zu diesem Tutorial.

      Dieses Tutorial erklärt, wie man eine BluRay zu einer MKV - Datei "verwandeln" kann. Die BluRay muss sich
      für dieses Projekt jedoch bereits auf der Festplatte des PCs befinden. (bzw. keinen Kopierschutz mehr besitzen)

      Außerdem wird bei dieser Anleitung ein bisschen ein Encoding-Grundwissen vorausgesetzt.
      (Dieses kann man aber leicht mithilfe von Google erwerben...)

      Die verwendeten Programme (grün) können entweder durch Google gefunden werden.
      Ihr könnt aber auch eine PN mit dem Titel: "MKV-Programmpacket|Nickname" (Nickname editieren) an mich schreiben,
      dann schicke ich Euch das komplette Programmpacket, diese Anleitung als PDF verpackt und ein paar Vorlagen.


      1. Transportstream demuxen
      1.1 Untertitel und Tonspuren demuxen
      eac3to downloaden und in einen Ordner entpacken/installieren.
      HdBrStreamExtractor (GUI für eac3to) downloaden und in das gleiche, obige Verzeichnis entpacken.
      • HdBrStreamExtractor.exe öffnen und bei "Input" das Verzeichnis *\BDMV\STREAM\ der BluRay anwählen.
      • Bei "Output" ebenfalls ein Verzeichnis angeben
      • Beim Videostream sollte unter "Extract as" nicht MKV (den Container) sondern das jeweilige
      Format (H264, usw.) ausgewählt werden. Falls nur MKV möglich ist, ist der Videostream MPEG-2.
      Handelt es sich um eine VC1-Videodatei, dann wählt hier ausnahmsweise MKV aus.
      • Bei den Audiostreams kann auch gleich gewählt werden, in welches Format konvertiert werden soll. Das erspart
      z.B. das nachträgliche umwandeln von DTS-HD in DTS 5.1, indem einfach unter "Extract as" DTS angewählt
      und bei "+ Options" der Befehl -core eingegeben wird. Weitere Options auf der Wiki Page
      • Ein Häckchen bei "Chapter" erstellt eine Textdatei, die anschliessend in MeGUI einfach angegeben werden
      kann.

      2. Programme vorbereiten
      AviSynth (neuste Alpha/Final-Version) downloaden und installieren
      • Wenn noch nicht installiert: Microsoft .NET Framework Version 3.5 oder höher ist notwendig
      MeGUI downloaden, installieren und starten
      • Der Updater startet und mit "Update" bringt man alles auf den aktuellsten Stand. Bei den anschliessenden Popups
      des Preset Importers ebenfalls alles anwählen und "Import" drücken (Rechtsklick – Check All)
      • Ausserdem wird Haali Media Splitter und ffdshow (neuste beta Version) benötigt
      RemoveGrain downloaden und die dll's ins das AviSynth-Verzeichnis unter "Plugins" in einen
      neuen Ordner ("RemoveGrain" kopieren. (Bsp.: unter C:\Programme\AviSynth 2.5\plugins\RemoveGrain\ ) entpacken.
      RemoveGrain wird verwendet, um grobe Filmkörner zu entfernen.

      3. Untertitel vorbereiten (optional)
      • Untertitel von Blu-Ray-Filmen werden im *.sup-Format abgespeichert. Um sie einzubinden, müssen sie zuerst
      in *.idx/*.sub konvertiert werden
      BDSup2Sub downloaden und in ein Verzeichnis entpacken. Falls kein Java Runtime Environment (JRE) installiert
      ist, muss zuvor die aktuelle Version installiert werden
      • Die entpackte BDSup2Sub.jar öffnen. Mit "File" -> "Load SUP" die gewünschte Untertitelspur auswählen.
      • Nach Bedarf "Convert Resolution" anwählen und die Richtige Auflösung wählen (wenn oben und unten 140px
      weggecroppt werden, "1080p- (1440x1080)" markieren.)
      • Mit "File" -> "Save/Export" die Konvertierung in SUB/IDX starten.

      4. Projekterstellung mit DGIndex
      • Als nächstes muss festgestellt werden, welche Dateiendung der demuxierte Videostream besitzt. Dazu in das
      Verzeichnis wechseln, in dem HdBrStreamExtractor die Tracks demuxt hat:

      Dazu betrachten wir die Dateiendung:
      .264, .h264 und .avc --> 4.1 AVC
      .mpv, .mpg, .mpeg, .m1v, .m2v, .mkv (wobei beim demuxen nur .mkv auszuwählen war) --> 4.2 MPEG-2
      .mkv (wobei wir nun .mkv gewählt haben, weil nur .vc1 zur Verfügung stand) --> 4.3 VC1

      4.1 AVC - Video
      DGAVCDec downloaden und in ein Verzeichnis entpacken.
      • Anschliessend die DGAVCDecode.dll in das AviSynth-Verzeichnis "plugins" kopieren. (Bsp. "C:\Programme\AviSynth 2.5\plugins\")
      • Die entpackte DGAVCIndex.exe ausführen, mit F2 den AVC - Film von eac3to öffnen und mit F4 das Projekt als *.dga im
      selben Verzeichnis abspeichern.

      4.2 MPEG-2 - Video
      DGMPGDec downloaden und in ein Verzeichnis entpacken
      • Anschliessend die DGDecode.dll in das AviSynth-Verzeichnis "plugins" kopieren. (Bsp. "C:\Programme\AviSynth 2.5\plugins\")
      • Die entpackte DGIndex.exe ausführen, mit F2 den MPEG-2 - Film von eac3to öffnen und mit F4 das Projekt als
      *.d2v im selben Verzeichnis abspeichern

      4.3 VC1 - Video
      • Dafür FFmpegsource downloaden (stable-Version) und in ein Verzeichnis entpacken.
      • Anschliessend die ffms2.dll (im Ordner ohne -mt-) in das AviSynth-Verzeichnis "plugins" kopieren. (Bsp. "C:\Programme\AviSynth 2.5\plugins\")

      5. Avisynth Script erstellen
      5.1 Für alle Videostreams bzw. DGIndex-Projekte habe ich Beispiele für avs-Skripte, welche ich euch unter dem "MKV-Programmpacket" zukommen lasse.
      Wählt nun das passende Skript zu eurem AviSynth-Projekt aus. (z.b. das "avc_progressive.avs" für AVC - Filme)
      5.2 Für alle ohne das "Programmpacket". Ihr müsst wohl oder übel schnell mal das passende *.avs - Skript erstellen.

      nachfolgenden Text kopieren und in eine Textdatei speichern:

      5.2.1 bei AVC - Film...

      Quellcode

      1. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\DGAVCDecode.dll")
      2. AVCSource("D:\track.dga")
      3. #Filter:
      4. #Source is Progressive -> do not anything
      5. #crop( 0, 140, 0, -140)
      6. #Auflösung original 1920x1080
      7. #crop im Beispiel oben und unten je 140 ergibt 1920x800
      8. #Lanczos4Resize(1920,800) # Lanczos4 (Sharp)
      9. Undot() # Minimal Noise
      10. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\RemoveGrain\RemoveGrainSSE2.dll")
      11. RemoveGrain(mode=2)
      Alles anzeigen

      ...und als "avc_progressive.avs" speichern.


      5.2.2 bei MPEG-2 - Film...

      Quellcode

      1. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\DGDecode.dll")
      2. Mpeg2Source("D:\track.d2v")
      3. #Filter:
      4. #Source is Progressive -> do not anything
      5. #crop( 0, 140, 0, -140)
      6. #Auflösung original 1920x1080
      7. #crop im Beispiel oben und unten je 140 ergibt 1920x800
      8. #Lanczos4Resize(1920,800) # Lanczos4 (Sharp)
      9. Undot() # Minimal Noise
      10. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\RemoveGrain\RemoveGrainSSE2.dll")
      11. RemoveGrain(mode=2)
      Alles anzeigen

      ...und als "mpeg2_progressive.avs" speichern.


      5.2.3 bei VC1 - Film...

      Quellcode

      1. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\ffms2.dll")
      2. FFVideoSource("D:\track.mkv")
      3. #Filter:
      4. #Source is Progressive -> do not anything
      5. #crop( 0, 140, 0, -140)
      6. #Auflösung original 1920x1080
      7. #crop im Beispiel oben und unten je 140 ergibt 1920x800
      8. #Lanczos4Resize(1920,800) # Lanczos4 (Sharp)
      9. Undot() # Minimal Noise
      10. LoadPlugin("C:\Programme\AviSynth 2.5\plugins\RemoveGrain\RemoveGrainSSE2.dll")
      11. RemoveGrain(mode=2)
      Alles anzeigen

      ...und als "vc1_progressive.avs" speichern.


      6. AviSynth Scripte anpassen
      Anmerkung: Das Zeichen # leitet einen Kommentar ein. Text nach dem # bis zum Zeilenende wird nicht berücksichtigt!
      • Das passende Skript in das Verzeichnis kopieren, in dem sich das *.dga,*.d2v-Projekt - bzw. bei vc1 die *.mkv - befindet,
      mit einem Texteditor öffnen und anpassen (am Beispiel hier: dga_progressive.avs):
      1. Pfad zu den 2 LoadPlugins und zu dem *.dga-Projekt
      in der Zeile AVCSource("D:\track.dga") anpassen.
      2. (optional) Die Crop-Parameter müssen aus DGIndex herausgelesen werden.
      (Funktioniert aber leider nicht bei VC1 - Videos).
      Dazu öffnet man den Film mit der passenden
      DGIndex.exe, wählt "Video" -> "Cropping" -> "Enable
      Cropping Filter" und liest danach die Pixel (Beispiel: Top 140, Bottom 140) für das Cropping ab.
      2.1. (optional) crop(0, 140, 0, -140) [ links, oben, rechts, unten ] anpassen.
      2.2. (optional) Lanczos4Resize(1920,800) anpassen. (Dieser Wert ergibt sich aus der Auflösung,
      den der Film haben soll (z.b. 1920 x 1080) abzüglich der Croppinggrößen (2x140 in der Höhe)).
      (Wenn ihr Croppen wollt, dann müsst ihr dies machen und auch im *.avs das "#" vor dem crop-Befehl und
      Lanczos4Resize-Befehl entfernen. Ansonsten könnt ihr dies auch so lassen. Jedoch habt ihr dann schwarze Ränder bei euren Endprodukten...
      zu VC1: Hier müsst ihr die Croppinggrößen selbst irgendwie heraussuchen, oder ihr lasst das croppen weg, wenn Ihr diese Größen nicht wisst.)
      4. Speichern und Editor schliessen. Das avs-Skript ist erstellt.

      7. Abarbeitung in MeGUI
      • MeGUI starten, Mit "File" -> "Open" die im Kapitel 5 und 6 erstellte avs-Datei öffnen.
      • Preview-Window betrachten und danach schliessen
      • Im Reiter "Input" bei "File format" den Container MKV wählen.
      • Meine Encoder Settings sind im "Programmpacket" enthalten. Diese sind so konfiguriert,
      dass eine sehr gute Bildqualität erreicht wird. Dabei wird die Dateigrösse ignoriert. Importieren
      kann man sie einfach über Ctrl+I. Natürlich kann jeder seine eigenen Settings erstellen oder voreingestellte
      verwenden.
      • Nach dem Import kann das gewünschte Profil bei "Encoder settings" ausgewählt werden
      • Um etwas zu der Konfiguration zu sagen, hier einige Bemerkungen zu "Encoder settings“ > "Config":
      1. Im Reiter "Main" empfiehlt es sich bei "Threads" anzugeben, wie viele Cores der Prozessor besitzt. Wählt
      man 0 (= Auto), dann wird das automatisch gemacht. Der x264 Videokodierer ist sehr ressourcenhungrig,
      es empfiehlt sich ein aktueller Dual- oder Quadcoreprozessor
      2. Die einzelnen Parameter haben Auswirkungen auf Encodiergeschwindigkeit und Qualität des Films.
      Im Internet kursieren sicher ein paar Dokumente über die Einstellungsmöglichkeiten von MeGUI.
      Das Encodieren dauert zwar mehrere Stunden, aber es ist möglich, schon vor der Fertigstellung in die MKV Datei hineinzuschauen
      • Mit "OK" den Config-Dialog schliessen und danach auf den "AutoEncode"-Butten rechts unten klicken
      • Beim Container wieder "MKV" wählen und noch einen Haken bei "Add additional content" machen
      • "Queue"-Button drücken und der "Adaptive Muxer" öffnet sich
      • Unter "Audio 1" die mit eac3to demuxte AC3/DTS-Tonspur wählen und die Language/Name-Felder ausfüllen
      • Möchte man eine zweite Audiospur: Rechtsklick > "Add track"
      • Gegebenfalls "Delay" (Verzögerung) eintragen (wird in der Regel automatisch gemacht und ist meistens 0ms)
      • Bei "Subtitle" funktioniert das Ganze ähnlich und es können hier die mit BDSup2Sub erstellten *.idx Dateien
      geöffnet werden.
      • Das evtl. vorhandene Chapter File kann unter "Chapters File" ausgewählt werden.
      • "Queue" drücken und im Reiter "Queue" erscheinen die Jobs. Mit "Start" kann das Encoden losgehen!

      Das Encoden kann schoneinmal 20 Stunden in Anspruch nehmen... Also müsst ihr Zeit haben.
      Doch dafür habt ihr dann eine hochwertige MKV mit ca. 7GB (je nach Ton [AC3 oder DTS 5.1])
      und ihr könnt die 50 GB BluRay vom Rechner löschen.

      Hinweise:

      Es kann auch vorkommen, dass das Encoden fehlschlägt.
      • Oft hilt folgende Zeile zusätzlich am Ende des .avs - Skripts:
      "ConvertToYV12()" - ohne ""
      • Ansonsten sollte man es, auch wenn man kein VC-1 vorliegen
      hat, mit FFVideoSouce & vc1_progressive.avs probieren. (Vorher natürlich
      die Pfade anpassen.)

      Bei Fragen --> PN oder hier im Thread...
      Bei Rechtschreibfehler --> PN

      Viel Spaß!

      mfg fox(fux)

      Dieser Beitrag wurde bereits 9 mal editiert, zuletzt von fox(fux) () aus folgendem Grund: Hinweise hinzugefügt