Das Stereo-Downmixing einer MKV 5.1-Audiospur durch Handbrake führt dazu, dass „Center“ der rechte Kanal ist und praktisch nichts der linke Kanal ist

2

Daher habe ich Handbrake (Version 1.1.2) erfolgreich verwendet, um viele große MKV-Dateien in kleinere, iOS- und macOS-kompatible Videodateien umzuwandeln, die ich für eine Weile auf meinem iPhone und MacBook Air wiedergeben kann, ohne wirklich Probleme zu haben, bis zu diesem einen bestimmten Film.

Wenn ich es mit der Handbremse unter Verwendung der Standardeinstellungen „Allgemein“ von scheinbar jedem Typ konvertiere - Schnell, Sehr Schnell, HQ oder Super HQ -, führt das Heruntermischen von Audio aus 5.1 zu seltsamem Stereo, wobei im Wesentlichen das gesamte Audio auf den richtigen Kanal und den richtigen Kanal geleitet wird Der linke Kanal scheint einen Kanal zu haben, der nur - mangels eines besseren Begriffs - Hintergrundreste enthält. Gerade genug Ton, um nicht leise zu sein, aber absolut keine Musik oder Dialoge oder irgendetwas ist wirklich hörbar.

Ich kann es auf meinem MacBook Air auf VLC (Version 3.0.6) abspielen und bekomme über meine Lautsprecher den gleichen seltsamen Sound. Schwer rechts kaum noch etwas übrig. Aber wenn ich den Ton von VLC auf "Kopfhörer" stelle ... Wow! Es wird ein normaler Stereo-Downmix.

Was passiert und was kann ich tun, um dies richtig herunterzumischen? Ich hoffe, ich kann dies in Handbrake tun, aber wenn ich nicht davon ausgehen würde, müsste ich den AC3 aus dem MKV extrahieren, ihn in einem anderen Tool heruntermischen und ihn dann wieder in das MKV werfen?

Details der Audiospur hier mit ffmpeg -i:

Stream #0:1(eng): Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s (default) (forced)
Metadata:
  title           : English
  BPS-eng         : 384000
  DURATION-eng    : 01:36:42.624000000
  NUMBER_OF_FRAMES-eng: 181332
  NUMBER_OF_BYTES-eng: 278525952

Details der Audiospur, die hier verwendet mkvmerge --identifywird, sind:

Track ID 0: video (MPEG-4p10/AVC/h.264)
Track ID 1: audio (AC-3)

Details der Audiospur, die hier verwendet mkvinfowird, sind:

| + Track
|  + Track number: 2 (track ID for mkvmerge & mkvextract: 1)
|  + Track UID: 3241101187
|  + Track type: audio
|  + Forced track flag: 1
|  + Codec ID: A_AC3
|  + Default duration: 00:00:00.032000000 (31.250 frames/fields per second for a video track)
|  + Name: English
|  + Audio track
|   + Sampling frequency: 48000
|   + Channels: 6

Details der Audiospur, die hier verwendet exiftoolwird, sind:

Track Number                    : 2
Track Type                      : Audio
Track Forced                    : Yes
Audio Codec ID                  : A_AC3
Default Duration                : 32 ms
Track Name                      : English
Audio Sample Rate               : 48000
Audio Channels                  : 6
JakeGould
quelle
2
Ich vermute, dass der Eingang ein nicht standardmäßiges Kanallayout hat. In diesem Fall beschriftet der Demuxer das Gerät mit einem Standardlayout mit der gleichen Anzahl von Kanälen. Beim Rematrixing auf ein anderes Kanallayout ist das ausgewählte Rematrixing offensichtlich fehlerhaft. Kennen Sie das genaue Kanallayout des Eingangs?
Gyan
@ Gyan Ergibt Sinn. Haben Sie keine Ahnung, wie das Quelllayout der Eingabe lautet, aber kann ich den AC3 trotzdem über die Befehlszeile analysieren oder sogar live? Ich frage mich, ob es da draußen ein Tool geben würde, mit dem sich die Eingaben live abmischen lassen, sodass ich zum Beispiel nur die Kästchen ankreuzen kann, um zu sehen, welcher Track was ist.
JakeGould
@ Gyan Habe gerade eine Antwort gepostet, die die Schritte widerspiegelt, die ich unternommen habe, um dies zu beheben. Wenn Sie einen saubereren Weg kennen, können Sie uns gerne eine Antwort senden.
JakeGould

Antworten:

0

Der "Center" -Kanal war eigentlich "Richtig" und umgekehrt.

Das Austauschen führt zu einer richtig ausgewogenen, normal klingenden AC3-Datei.

Ich entdeckte dies basierend auf Gyans Kommentar . Ich entschied, dass ich dies nur beheben kann, indem ich einzelne Monospuren aus dem AC3 ausbaute, sie anhörte und dann den AC3 rekonstruierte, um das Audio-Layout zu korrigieren. Somit ist diese Entdeckung und die Lösung für dieses Mini-Chaos.

Trotzdem haben alle Schritte, die ich unten skizziere, für mich funktioniert, aber wenn jemand eine sauberere Möglichkeit kennt, dies mit einem Befehl zu tun, können Sie dies gerne als Antwort posten. Ich werde Ihnen den Ruhm geben, da dies buchstäblich die aufwändigste FFmpeg- und MKV-Manipulation ist, die ich je gemacht habe. Es war also ein Lernprozess.

Zuerst habe ich mkvmergeidentifiziert, welche Tracks welche sind in my_movie.mkv:

mkvmerge --identify my_movie.mkv

In dem Wissen, dass ich die AC3-Datei mit FFmpeg in eine Datei mit dem Namen extrahiert habe my_movie.ac3:

ffmpeg -i my_movie.mkv -map 0:1 -c:a copy my_movie.ac3

Dann nahm ich das my_movie.ac3und zerlegte es in 6 verschiedene Monospuren:

ffmpeg -i my_movie.ac3 -map_channel 0.0.0 front_left.wav -map_channel 0.0.2 front_right.wav -map_channel 0.0.1 front_center.wav -map_channel 0.0.3 back_left.wav -map_channel 0.0.4 back_right.wav -map_channel 0.0.5 lfe.wav

Dann habe ich diese Monospuren zu einer neuen AC3-Datei mit dem Namen rekombiniert my_movie_fixed.ac3:

ffmpeg -i front_left.wav -i front_right.wav -i front_center.wav -i lfe.wav -i back_left.wav -i back_right.wav -filter_complex "[0:a][1:a][2:a][3:a][4:a][5:a]amerge=inputs=6[a]" -map "[a]" my_movie_fixed.ac3

Dann habe ich die neu erstellte my_movie_fixed.ac3zu my_movie.mkvund nannte die resultierende Datei my_movie_fixed.mkv:

ffmpeg -i my_movie.mkv -i my_movie_fixed.ac3 -map 0 -map 1 -c copy my_movie_fixed.mkv

Es funktionierte! Der Klang ist sowohl bei der normalen Stereo-Wiedergabe in VLC als auch bei der my_movie_fixed.mkvKonvertierung über Handbremse hervorragend.

Das heißt, ich habe auch die Metadaten-Details für die Spur angepasst und sie wie folgt als Standard-Audiospur festgelegt mkvpropedit:

mkvpropedit my_movie_fixed.mkv --edit track:a2 --set name=English --set language=en
JakeGould
quelle