Video Production Stack Exchange is a question and answer site for engineers, producers, editors, and enthusiasts spanning the fields of video, and media creation. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Suppose that we have one video file in.mkv, which has two audio tracks, what is the most direct way to remux it into two separate mkv files with just one audio track?

Two streams is an example, the technique should work with 100 audio streams.

share|improve this question
up vote 0 down vote accepted

There are several ways to do that. The simplest, but not the best would be to run some sort of remuxing twice, each time taking just a single audio track. But since there is no re-encoding the speed will go down since the computer is forced to read the whole file twice (or more times if you have more audio tracks).

To accomplish the task with a single read using libav (ffmpeg will probably be the same):

avconv -i in.mkv -map 0:0 -map 0:1 -c:a copy -c:v copy out1.mkv -map 0:0 -map 0:2 -c:a copy -c:v copy out2.mkv

It is probably also possible to do that with gstreamer.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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