Was ist das Problem mit der Handbremse?
Wenn Sie Handbrake verwenden, um von einem Containerformat in das andere zu konvertieren (in Ihrem Fall MKV in MP4), codiert Handbrake das Video neu. Siehe auch die entsprechende Funktionsanforderung , die das Passthrough von Videos aktiviert hätte:
Das Hinzufügen von Video-Passthrough ist leider nicht geplant. HandBrake ist als Video-Transcoder konzipiert. Es war nicht dafür ausgelegt, Durchgang zuzulassen.
Jedes Mal, wenn Sie Container mit Handbrake wechseln, wird Ihr Video neu codiert, was bedeutet, dass es a) Zeit braucht und b) Qualitätsverluste verursachen kann.
Muss ich neu codieren? Könnte ich nicht einfach den Container tauschen?
Da Passthrough nicht möglich ist, fragen Sie sich: Muss ich neu codieren? Wenn Sie nur den Container von MKV auf MP4 ändern möchten, müssen Sie normalerweise nichts codieren . Sie müssen nur den "Umbruch" um das Video ändern. Dadurch geht keine Qualität verloren, und der Vorgang wird viel schneller.
Sie können Container einfach mit FFmpeg austauschen - Sie müssen es nur anweisen, um die Video- und Audiostreams zu kopieren:
ffmpeg -i input.mkv -c copy -map 0 output.mp4
Es gibt auch Tools wie MP4Box, mit denen auch MP4-Container erstellt werden können - dasselbe gilt für MKV mit MKVtoolnix .
Es gibt jedoch eine große Einschränkung: Dies funktioniert nur, wenn die Audio- und Videocodecs im Zielcontainer (MP4) unterstützt werden, was beispielsweise für H.264 / H.265 und AAC der Fall ist, für viele andere jedoch nicht. Außerdem unterscheidet sich die Unterstützung des Untertitelformats für MP4 von MKV und ist tatsächlich stark eingeschränkt, sodass dieser Befehl möglicherweise fehlschlägt.
Wenn dieser Befehl nicht funktioniert und Ihre Eingabe die falschen Codecs für den Ausgabecontainer verwendet, müssen Sie wahrscheinlich neu codieren . In diesem Fall werden die Codecs an den Ausgabecontainer angepasst.
Um zu verstehen, warum dies erforderlich ist, müssen Sie den Unterschied zwischen Videocodecs und Containern kennen . Dies hilft Ihnen zu verstehen, warum das Ändern von Containern funktioniert und warum die Container MP4 und MKV eigentlich wenig mit Video-Codecs zu tun haben.
Warum ist das Neucodieren überhaupt schlecht?
Sie können (normalerweise) nicht die volle Qualität behalten, wenn Sie ein Video codieren, das bereits codiert wurde. Dies liegt daran, dass das Original bereits komprimiert wurde, indem Informationen weggeworfen wurden. Wenn Sie dies erneut tun, kommt es zu einem Generationsverlust .
Häufig möchten Sie Videos neu codieren, wenn sich beispielsweise ihre Abmessungen ändern, oder Sie benötigen eine bestimmte Bitrate, um Ihren Videostream zu komprimieren, oder Ihr Originalvideo verwendet einen Codec, den Sie aus irgendeinem Grund nicht wiedergeben können.
Wenn Sie also Ihr MKV-Video in Handbrake laden und es mit x264 neu codieren, das der H.264-Encoder Handbrake verwendet, speichern Sie es in einem MP4-Container. Sie verlieren an Qualität, egal was passiert, es sei denn, Sie stellen die Bitrate oder ein Qualitätsfaktor so hoch, dass man den Unterschied (wirklich) nicht sieht. Aber dann wird auch die Datei größer.
Im Idealfall würden Sie das Video in ein unkomprimiertes Video konvertieren, wodurch Sie keine Qualitätsverluste erleiden, aber selbst für ein paar Minuten Videomaterial Dateien mit einer Größe von einem Dutzend Gigabyte erhalten.
Okay, aber ich muss wirklich neu codieren!
Wenn Sie wirklich neu codieren müssen, stellen Sie sicher, dass Sie keine durchschnittliche Bitrate festlegen, sondern wählen Sie einen konstanten Ratenfaktor , der so etwas wie "konstante Qualität" ist. Genau wie bei "variabler Bitrate" für MP3: Es wird sichergestellt, dass die Bits für die Videoteile ausgegeben werden, die sie benötigen, und die Gesamtqualität wird verbessert - bei gleicher Dateigröße.
Normale CRF-Werte liegen zwischen 19 und 24, wobei niedriger "besser" bedeutet. Versuchen Sie es also mit einem Ratenfaktor von 19. Stellen Sie außerdem sicher, dass das Profil "Hoch" eingestellt ist, damit der Encoder alle Schnickschnackfunktionen verwenden und die Qualität für eine bestimmte Bitrate optimieren kann.