Combine Audio and Video with ffmpeg

By  on  

We have audio.  We have video.  We appreciate each of those media on their own but you can create an awesome work of art if you combine the two.  After all, how could you watch a sports highlight video without setting the visuals to some obscure techno track?  Blasphemy.

My favorite A/V utility, ffmpeg, allows you to merge an audio file and a video file into one brilliant piece of art:

ffmpeg -i video.mp4 -i audio.m4a -c:v copy -c:a copy output.mp4

You can even use an animated GIF for the video piece:

ffmpeg -i video.gif -i audio.m4a -c:v copy -c:a copy output.mp4

Banter aside, there are many good cases for combining an audio track with a video track, many examples being seen on YouTube.  Happy media creation!

Recent Features

Incredible Demos

  • By
    MooTools HTML Police: dwMarkupMarine

    We've all inherited rubbish websites from webmasters that couldn't master valid HTML. You know the horrid markup: paragraph tags with align attributes and body tags with background attributes. It's almost a sin what they do. That's where dwMarkupMarine comes in.

  • By
    9 Mind-Blowing WebGL Demos

    As much as developers now loathe Flash, we're still playing a bit of catch up to natively duplicate the animation capabilities that Adobe's old technology provided us.  Of course we have canvas, an awesome technology, one which I highlighted 9 mind-blowing demos.  Another technology available...

Discussion

  1. Antoni

    There is a Firefox extension for this if anybody prefers UI over command line, https://addons.mozilla.org/en-US/firefox/addon/media-converter-and-muxer

  2. If you don’t want to re-encode audio and video, you can use following command:

    ffmpeg -i video.mp4 -i audio.m4a -c:v copy -c:a copy output.mp4
    

    It will execute a lot faster.

    • Updated! Thank you!

    • Bumpledink Scrotleworth

      You can specify to copy both at once like this:

      ffmpeg -i video.mp4 -i audio.m4a -c copy output.mp4
    • This works like charm and looks few flags shorter too.

  3. Hi David,

    Nice article. Would these same commands work efficiently on android too?

    We have a mute video to which we hope to add audio recorded from phone.

    Any guidance would be great.

  4. JC

    Can’t find ffmpeg in a zip file. Any other similar tool that opens in Windows?

  5. Kevin

    I’m not a programmer so I’m sort of confused and frustrated at what I’m looking at. I have no idea how to use this lol

  6. howard Johnson

    Here is an example batch file that you can drag the two files onto to do the joining, delete the two files and rename to the original. (drag by the mp4 file)

    @echo off 
    "C:\Program Files (x86)\ffmpeg\bin\ffmpeg.exe" -i %1 -i %2 -c:v copy -c:a copy d:\folder\output.mp4
    del %1
    del %2
    copy d:\folder\output.mp4 %1
    del d:\folder\output.mp4 
    pause
    
  7. Ravi Sharma

    where do we keep ffmpeg.exe file and that audio and video files to whom we merge.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!