(gelöst) mkvmerge, zwei MKVs aneinanderhängen

Sound, Digitalkameras, TV+Video und Spiele.
Antworten
guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

(gelöst) mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 25.01.2018 09:30:24

Ich krieg's nicht gebacken. Das Kommando

Code: Alles auswählen

mkvmerge -o kompl.mkv eins.mkv +zwei.mkv
liefert kein brauchbares Video. An der "Klebe"stelle bleibt das Bild stehen, bzw. zeigt nur noch Artefakte. Der Ton scheint weiterzulaufen. Gleiches Ergebnis bei Verwendung der GUI. Da ich nicht weiß, was mit "privaten Konfigurationsdaten" (s.u.) gemeint ist, weiß ich auch nicht, was ich an den GUI-Voreinstellungen ändern könnte.

Meldung:

Code: Alles auswählen

»eins.mkv«: Der Demultiplexer für das folgende Format wird benutzt: »Matroska«.
»zwei.mkv«: Der Demultiplexer für das folgende Format wird benutzt: »Matroska«.
create pack at 944
»eins.mkv« Spur 0: Das Ausgabemodul für das folgende Format wird benutzt: »AVC/h.264«.
»eins.mkv« Spur 1: Das Ausgabemodul für das folgende Format wird benutzt: »MP3«.
create pack at 940
»zwei.mkv« Spur 0: Das Ausgabemodul für das folgende Format wird benutzt: »AVC/h.264«.
»zwei.mkv« Spur 1: Das Ausgabemodul für das folgende Format wird benutzt: »MP3«.
Für Datei Nummer 1 (»zwei.mkv«) wurde keine Zuordnung zum Anhängen der Spuren angegeben. Stattdessen wird die Standardzuordnung 1:0:0:0,1:1:0:1 benutzt. Bitte behalten Sie diese Tatsache im Hinterkopf, falls Mkvmerge mit einer Fehlermeldung bezüglich ungültiger »--append-to«-Argumente abbricht.
Warnung: Die Spur Nummer 0 aus Datei »zwei.mkv« kann vermutlich nicht korrekt an Spur Nummer 0 aus Datei »eins.mkv« angehängt werden: Die privaten Codec-Konfigurationsdaten stimmen nicht überein (Längen: 42 und 42). Bitte stellen Sie sicher, dass sich die resultierende Datei über ihre gesamte Laufzeit korrekt abspielen lässt.
Zum Abbruch kam's beim Multiplexieren nicht. Was mit unterschiedlichen "privaten Konfigurationsdaten" gemeint ist erschließt sich mir nicht. Die konkreten Angaben sehen für mich so aus, als widersprächen sie der vorangehenden Behauptung.

ffmpeg listet diese Info zu den beiden Dateien:

Code: Alles auswählen

Input #0, matroska,webm, from 'eins.mkv':
  Metadata:
    ENCODER         : Lavf57.83.100
  Duration: 00:05:14.38, start: 0.000000, bitrate: 2448 kb/s
    Stream #0:0: Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 1k tbn, 100 tbc (default)
    Metadata:
      ENCODER         : Lavc57.107.100 libx264
      DURATION        : 00:05:14.383000000
    Stream #0:1(unknown): Audio: mp3, 48000 Hz, stereo, s16p, 192 kb/s (default)
    Metadata:
      ENCODER         : Lavc57.107.100 libmp3lame
      DURATION        : 00:05:14.383000000

Input #0, matroska,webm, from 'zwei.mkv':
  Metadata:
    ENCODER         : Lavf57.83.100
  Duration: 02:06:35.24, start: 0.005000, bitrate: 2514 kb/s
    Stream #0:0: Video: h264 (High), yuv420p(progressive), 1280x720 [SAR 1:1 DAR 16:9], 50 fps, 50 tbr, 1k tbn, 100 tbc (default)
    Metadata:
      ENCODER         : Lavc57.107.100 libx264
      DURATION        : 02:06:35.240000000
    Stream #0:1(deu): Audio: mp3, 48000 Hz, stereo, s16p, 192 kb/s (default)
    Metadata:
      ENCODER         : Lavc57.107.100 libmp3lame
      DURATION        : 02:06:35.213000000
Ich sehe keine Unterschiede.
Zuletzt geändert von guennid am 26.01.2018 20:33:52, insgesamt 1-mal geändert.

Benutzeravatar
CH777
Beiträge: 1186
Registriert: 27.05.2008 16:37:17

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von CH777 » 25.01.2018 13:37:37

guennid hat geschrieben: ↑ zum Beitrag ↑
25.01.2018 09:30:24
Was mit unterschiedlichen "privaten Konfigurationsdaten" gemeint ist erschließt sich mir nicht. Die konkreten Angaben sehen für mich so aus, als widersprächen sie der vorangehenden Behauptung.
"private Konfigurationsdaten" (blödsinnige Bezeichnung) bedeutet hier die Videoparameter, also codec, Auflösung, Framerate usw. Aber ich kann da jetzt auch keinerlei Unterschiede erkennen, meiner Meinung nach müsste das funktionieren...

EDIT:
Versuch doch nur so zum Spaß mal

Code: Alles auswählen

ffmpeg -f concat -i eins.mkv -i zwei.mkv -c copy kompl.mkv

guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 25.01.2018 16:22:44

Code: Alles auswählen

[concat @ 0x55a4a23c25c0] Line 1: unknown keyword '?Eߣ?'
eins.mkv: Invalid data found when processing input
Keine Ahnung, was für'n Keyword er da gefunden hat. :roll:

MaGe
Beiträge: 670
Registriert: 01.06.2014 17:12:16

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von MaGe » 25.01.2018 19:03:01

guennid
einen habe ich noch, zwei verschiedene videos. :mrgreen:

Stream #0:0: Video: h264 (High), yuv420p(progressive), 720x576
+
Stream #0:0: Video: h264 (High), yuv420p(progressive), 720x404

Erstelle eine Datei mylist.txt mit allen Dateien

file 'mein-1.mkv'
file 'mein-2.mkv'

Code: Alles auswählen

 ffmpeg -f concat -safe 0 -i mylist.txt -c copy output.mkv 


gruss MaGe
Wir müssen uns vor der Klimaerwärmung nicht fürchten.
Uns rottet die soziale Kälte viel früher aus.

Benutzeravatar
CH777
Beiträge: 1186
Registriert: 27.05.2008 16:37:17

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von CH777 » 25.01.2018 19:27:01

MaGe hat recht, -f concat erwartet eine Textdatei als input.

guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 25.01.2018 23:57:30

Und wie erstelle ich jetzt diese Textdatei?

Keine Ahnung von file, die manpage ist mir zu Englisch
MaGe hat geschrieben:Erstelle eine Datei mylist.txt mit allen Dateien

file 'mein-1.mkv'
file 'mein-2.mkv'
Wo ist da jetzt die mylist.txt?

rendegast
Beiträge: 14848
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von rendegast » 26.01.2018 01:21:15

Schreibe
file 'mein-1.mkv'
file 'mein-2.mkv'
in eine Datei myfiles.txt und übergebe '-i myfiles.txt' an ffmpeg.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

NAB
Beiträge: 5502
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von NAB » 26.01.2018 01:23:28

guennid hat geschrieben: ↑ zum Beitrag ↑
25.01.2018 09:30:24
Warnung: Die Spur Nummer 0 aus Datei »zwei.mkv« kann vermutlich nicht korrekt an Spur Nummer 0 aus Datei »eins.mkv« angehängt werden: Die privaten Codec-Konfigurationsdaten stimmen nicht überein (Längen: 42 und 42). Bitte stellen Sie sicher, dass sich die resultierende Datei über ihre gesamte Laufzeit korrekt abspielen lässt.
Die Bildwiederholraten der beiden Video-Spuren stimmen nicht überein. Das klingt auf den ersten Blick überraschend, weil sie beide mit 50fps angegeben werden, aber intern wird das als großer Ganzzahlbruch gehandhabt und sowas wie 50000/1000 und 50050/1001 sieht auf drei Stellen gerundet beides aus wie 50,000.

Was man da machen kann? Weiß auch nicht genau. Kommt anscheinend darauf an, woher es kommt.
Hier:
https://forum.doom9.org/archive/index.php/t-129920.html
ist wohl beim Muxen was schief gelaufen.
Hier:
https://forum.videohelp.com/threads/376 ... uring-Join
hat wohl x264 beim 2-pass was versaut.

Wie auch immer, ich würd's mit MaGes Tipp versuchen, also zurück zum Thema:

Guenni, eine Textdatei erstellst du so:

Code: Alles auswählen

echo "file 'eins.mkv'" > mylist.txt
echo "file 'zwei.mkv'" >> mylist.txt
:wink:
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 26.01.2018 20:31:37

Tja Jungs, was soll ich sagen? Das hat's jetzt gebracht! Vielen Dank an alle Mitwirkenden :THX: und insbesondere an MaGe mit dem enscheidenden Tipp! :THX:

Film ist gerippt!
Wenn ich jetzt noch wüsste, was ich da eigentlich gemacht habe, wäre es perfekt. :wink:
Das Kommandozeilenwerkzeug file(1) »errät« den Dateityp und drückt in Worten aus, welche Art von Daten eine Datei enthält.
(1) https://packages.debian.org/de/stretch/file Geht ja vielleicht auch auf Deutsch noch'n bisschen ausführlicher. Im Netz bisher weiter nichts Deutschsprachiges gefunden.

NAB
Beiträge: 5502
Registriert: 06.03.2011 16:02:23
Lizenz eigener Beiträge: MIT Lizenz

Re: (gelöst) mkvmerge, zwei MKVs aneinanderhängen

Beitrag von NAB » 26.01.2018 20:45:05

Was du da genau gemacht hast, weiß ich auch nicht. ffmpeg hat dir die beiden Filme mehr oder weniger gewaltsam aneinandergeklebt. Du solltest genau hingucken, ob die Tonspur noch passt.

Und ich vermute, du bist einer Namensgleichheit aufgesessen. Es gibt den Befehl "file". "file" bedeutet nichts weiter als "Datei" ... selten blöder Name für einen Befehl. ffmpeg möchte gerne, dass du die Namen der einzelnen Filmdateien mit dem Schlüsselwort "Datei" kennzeichnest - auf Englisch, also "file". Damit ist nicht der gleichnamige Befehl gemeint und ffmpeg führt diesen Befehl auch nicht aus (vermute ich).
Never change a broken system. It could be worse afterwards.

"No computer system can be absolutely secure." Intel Document Number: 336983-001

guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: (gelöst) mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 26.01.2018 21:45:46

selten blöder Name für einen Befehl
Das scheint so in Mode zu kommen: siehe "ip". :wink:
NAB hat geschrieben:Du solltest genau hingucken, ob die Tonspur noch passt.
Passt.
NAB hat geschrieben:ffmpeg möchte gerne, dass du die Namen der einzelnen Filmdateien mit dem Schlüsselwort "Datei" kennzeichnest.
Dass "Datei" auf Englisch "file" heißt, soweit reicht ja mein Englisch gerade noch. :wink: Deine Erklärung kommt mir ziemlich abenteuerlich vor. ffmpeg sollte doch anhand des Namens eigentlich erkennen können, ob man im eine Datei andreht oder nicht. 8O Mal gespannt, ob sich da noch jemand meldet.

Benutzeravatar
CH777
Beiträge: 1186
Registriert: 27.05.2008 16:37:17

Re: (gelöst) mkvmerge, zwei MKVs aneinanderhängen

Beitrag von CH777 » 27.01.2018 12:56:35

Man kann in dem Textfile noch diverse andere Parameter angeben (siehe hier), und die Inputfiles werden deshalb mit file gekennzeichnet.

guennid
Beiträge: 11844
Registriert: 31.10.2002 19:15:35
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: bei Marburg

Re: (gelöst) mkvmerge, zwei MKVs aneinanderhängen

Beitrag von guennid » 28.01.2018 10:33:36

Einleuchtend!

Nicht einleuchtend finde ich, dass das so tricky sein musste, um zwei files aneinanderzuhängen, die ffmpeg selbst als "identisch" formatiert auswies (und an denen ich als Benutzer dann ja auch gar nichts mehr ändern musste).

Dass die Dateiinhalte bei sowas "passen" müssen, ist eh klar. Ich habe sowas auch mit Video-Dateien schon mit einem simplen cat erfolgreich durchgeführt - war dann aber möglichesweise AVI, erinnere ich nicht mehr genau. Kann es sein, dass das MKV für den Bohai verantwortlich ist?

Antworten