20

I've got a video in an MP4 container that I would like to replace the audio track in (not add another audio stream to, nor convert the audio format of).

Someone elsewhere online suggested to use VirtualDub to replace the audio track, but it wouldn't even open up the video file. Journeyman Geek suggested in chat that I use ffmpeg, but the documentation is pretty difficult for me to understand.

How can I accomplish this on Windows? I'll download/install external programs if I must.

31

I ended up scrutinizing the documentation for ffmpeg and worked out a solution:

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

  • 7
    RTFM strikes again! – martineau Jun 2 '13 at 8:17
  • Note that this does not preserve all metadata, such as 360 equirectangular (I haven't tested the extent). – Elaskanator Dec 29 '18 at 7:23
2

An addition to the current solution: If the audio file does not match the video container's format, just avoid the -acodec parameter:

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

Now, only the audio gets encoded in order to match the container.

1

There are several free software for this:

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.