Wie ersetze ich das Audio in einer MP4-Datei, ohne es neu zu kodieren?

22

Ich habe ein Video in einem MP4-Container, in dem ich die Audiospur ersetzen möchte ( keinen weiteren Audiostream hinzufügen oder das Audioformat von konvertieren ).

Jemand anderswo im Internet schlug vor, VirtualDub zu verwenden, um die Audiospur zu ersetzen, aber es würde nicht einmal die Videodatei öffnen. Geselle Geek schlug im Chat vor, dass ich es benutze ffmpeg, aber die Dokumentation ist für mich ziemlich schwer zu verstehen.

Wie kann ich das unter Windows erreichen? Ich werde externe Programme herunterladen / installieren, wenn ich muss.

nc4pk
quelle

Antworten:

33

Am Ende habe ich die Dokumentation überprüft ffmpegund eine Lösung erarbeitet:

ffmpeg.exe -i input_video.mp4 -i replacement_audio.m4a -vcodec copy -acodec copy -map 0:0 -map 1:0 output.mp4

nc4pk
quelle
7
RTFM schlägt wieder zu!
Martineau
Beachten Sie, dass dadurch nicht alle Metadaten, wie z. B. 360 Equirectangular, erhalten bleiben (ich habe den Umfang nicht getestet).
Elaskanator
3

Ein Zusatz zur aktuellen Lösung: Wenn die Audiodatei nicht dem Format des Videocontainers entspricht, vermeiden Sie einfach den Parameter -acodec:

ffmpeg.exe -i input_video.mp4 -i replacement_audio.m4a -vcodec copy -map 0:0 -map 1:0 output.mp4

Jetzt wird nur das Audio entsprechend dem Container codiert.

SommerEngineering
quelle
2

Hierfür gibt es verschiedene freie Software:

und viele andere bei videohelp.com

T.Todua
quelle
MP4Box scheint sehr einfach zu sein und ich habe keine Möglichkeit gefunden, Audio zu ersetzen, aber MKVToolNix GUI ist einfach zu verstehen und leistet großartige Arbeit!
Vitas