Convert MKV to AAC

Converting MKV to AAC produces a bare stream of audio frames with no container around it, which is what an ingest pipeline or an embedded decoder usually means when it asks for a .aac file. The complication is on the Matroska side: an MKV master often carries four or five soundtracks and an AAC stream has room for one, so the useful question is which track you are about to get.

  • Where it runs In your browser. The file is never uploaded.
  • Lossy Some detail is traded for size. AAC cannot hold everything an MKV can.
  • File size limit Up to 100 MB per file, free, without an account.
  • Worth knowing Only the first soundtrack is kept. A film with a second language or a commentary track loses it.

Up to 100 files at once. Mixed formats are fine.

A multi-language master meeting a one-track format

A Matroska master built for distribution carries what distribution needs: the original language, one or more dubs, an audio description, sometimes a mix-minus or an interpreter feed. Five audio tracks in one file is entirely ordinary and it is the reason the master is Matroska rather than anything else.

An ADTS file has room for exactly one. That is not a limitation of this tool but of the format: an elementary stream is a run of self-contained frames with a header on each, and there is nowhere in the design to put a second run. So the conversion has to pick, and everything below is about making sure it picks the track your delivery specification named.

The track that is taken is the first one, in file order

When the MKV holds several audio tracks, the first one declared in the file is converted and the rest are discarded. That is file order and nothing else: Matroska’s own "default track" flag is not read, no sorting by language is applied, and the track a player would have started with is not necessarily the one you get.

On material assembled by a ripping or muxing tool the two frequently differ, which is how a commentary or a descriptive audio track ends up in a delivery slot that asked for the original language. Run MediaInfo or `mkvmerge -i` over the file first; both print the tracks in order with their language codes, and it turns a guess into a check.

How to make sure the right MKV track is the one converted

Two routes, both short. The direct one is to extract the track you want with MKVToolNix — it will pull a single audio track out of a Matroska file without decoding a sample — and convert that single-track file here, at which point there is nothing to choose between.

The indirect one is to convert the MKV to an M4A instead — one of three audio targets on this site that keep every soundtrack, along with Ogg and Opus — and to take the track you need out of that in a tool that lets you select. It costs an extra generation of compression, so it suits a check or a transcript rather than a delivery master.

What the ID3 block at the front of the stream will do to a parser

If the MKV carries tags — a title, a date, a comment written by whatever produced it — they are written into the output as an ID3v2 block ahead of the audio frames. This is a normal thing for a .aac file to contain and essentially every real decoder skips it without comment.

It matters here because this reader’s consumer is often not a real decoder but a script. Anything that assumes byte zero is an ADTS sync word will read the tag as garbage and either reject the file or resynchronise somewhere unhelpful. If the ingest is that kind of parser, clear the tags out of the MKV before converting, or strip the ID3 header afterwards — it is a fixed-length prefix and trivially removable.

The masters that produce no AAC at all

Some files stop with a message saying nothing in them could be converted. That is the browser declining to decode the soundtrack, and with the picture discarded there is no other track to fall back on, so the conversion refuses rather than writing an empty file.

The codecs behind it are always the same: AC-3, E-AC-3, DTS and Dolby TrueHD. Those are what disc-sourced masters carry, and no browser ships a decoder for them — DTS and TrueHD are not recognised as codecs at all by the reader. Material from a camera, a capture card, a stream or a download tool is AAC or Opus and is never affected, so the split is entirely predictable once you know where a file came from.

Sample rate, channels and the parameters a delivery cares about

The sample rate and the channel count come across unchanged, so a 48 kHz stereo master produces a 48 kHz stereo stream. That is the answer a delivery specification usually wants, and it is the answer this gives without a setting to get wrong.

There is one fallback worth knowing about. Where a track has a channel layout or a rate the encoder cannot configure, the conversion resamples to standard parameters rather than failing outright — which is the right behaviour for a person and the wrong surprise for a pipeline. Verify the first file of any batch against the spec before running the other ninety-nine.

Why a delivery master deserves a remuxer rather than this page

The audio is decoded and encoded again here, every time, including when the MKV already holds AAC. For a listener that is a shrug. For a master that has already been through a chain of encodes it is another generation stacked on the ones before it, and there is no setting that avoids it.

MKVToolNix and ffmpeg will both copy AAC packets out of a Matroska container into an ADTS stream without decoding a single frame, in seconds, with the result bit-identical to what was inside. Where the file is a deliverable, that is the correct operation and this page is not. Where it is a transcript source, a check, or one file on a machine with nothing installed, this is faster than the download.

Running this on material that must not leave the building

The decoding and the AAC encoding both happen inside the browser tab, on your own processor. Nothing carrying the file is sent anywhere, there is no account, and the network tab will confirm it in ten seconds. For unreleased masters under an agreement, that is frequently the difference between a usable tool and one that is out of the question regardless of how good it is.

The free tier accepts an MKV up to 100 MB, measured going in. Delivery masters are usually far past that, which puts most of this reader’s real work on the desktop — an honest limit for a browser tab rather than a nudge towards a subscription. Where the file fits, everything above applies unchanged and nothing is queued behind anyone else.

How to take one AAC track out of an MKV

  1. Run MediaInfo or `mkvmerge -i` over the MKV and note which audio track is declared first.
  2. If that is not the track you need, extract the right one with MKVToolNix and use the result here.
  3. Convert, then check the head of the .aac file if your consumer is strict about ID3 blocks.

MKV and AAC: a shelf of soundtracks against a single stream

MKV compared with AAC
MKVAAC
Full nameMatroska VideoAdvanced Audio Coding
File extension.mkv.aac
Media typevideo/x-matroskaaudio/aac
CompressionLossy — file size is bought with qualityLossy — file size is bought with quality
First published20021997
Published byMPEG
SpecificationMatroskaISO/IEC 13818-7
LicensingOpen standardOpen standard
Standing todayCurrentCurrent
Audio channelsup to 48
Opens in a browserSome browsersEvery browser
Considered insteadMP4, WebMMP3, OPUS

Opening the result

AAC opens in every current browser. MKV has narrower browser support than that. If the file is going onto a web page or into a form, that is usually the whole reason for the conversion.

VLC reads both MKV and AAC, so there is a way to check the result against the original without a second tool.

What each format is for

MKV was published in 2002. The specification is Matroska, and it is worth reading if the file has to outlive the tool that wrote it.

AAC comes from MPEG and dates from 1997, specified as ISO/IEC 13818-7. VLC, FFmpeg and iTunes all read it.

MKV to AAC: choosing the track, tags and delivery

Are my MKV files uploaded anywhere?

No. This conversion runs entirely inside your browser, so the file never leaves your device. You can confirm it yourself: open the network tab of your browser's developer tools and convert something. You will see the page load, plus the analytics and advertising the site is paid for with — and nothing carrying your file. The engine behind this particular pair is mediabunny, a wrapper around WebCodecs, which borrows your device's own hardware decoders; your browser fetches it once and caches it.

Can I choose which audio track becomes the AAC?

Not from this page. An ADTS file holds exactly one soundtrack, and the one taken is the first declared in the MKV — file order, not the track Matroska flags as default. If the delivery names a language, reorder or extract the track with MKVToolNix first and convert the single-track result here.

How do I check which track is first?

MediaInfo lists tracks in file order with their language codes, and `mkvmerge -i` prints the same thing in one line. Both take seconds and both are worth running before a batch, because a ripping tool’s ordering is not something you can reason about from the outside.

Why is there an ID3 block at the front of my .aac file?

Because the MKV carried tags — a title, a date, a comment — and they are written ahead of the audio frames. It is legal and almost every decoder skips it, but a strict or hand-rolled ADTS parser that expects the first byte to be a sync word will choke. If your ingest is that parser, strip the tags from the MKV before converting.

Does the sample rate change?

No. Whatever the source track ran at is what the AAC runs at, so a 48 kHz master stays 48 kHz. The exception is an unusual channel or rate combination the encoder cannot take, where the conversion falls back to standard parameters rather than failing — worth verifying on the first file of a batch rather than the hundredth.

Is the AAC copied rather than re-encoded when the MKV already holds AAC?

No. Every track is decoded and encoded again, which costs a generation. For a delivery master that is a real objection, and the right answer is a desktop remuxer: MKVToolNix or ffmpeg will lift the same AAC packets out of Matroska and into an ADTS stream without decoding anything.

Some of my masters produce nothing at all.

Those are the ones whose audio is AC-3, E-AC-3, DTS or Dolby TrueHD. The browser has no decoder for them and, with the picture discarded, there is nothing left to write, so the conversion refuses rather than producing an empty file. Disc-sourced masters hit this constantly; camera and capture-card material never does.

More about these formats