M4A to OGG: Converting Apple Audio to Open-Source
Convert M4A (AAC) audio to OGG Vorbis for open-source compatibility, Linux use, or web delivery. Quality notes and step-by-step conversion guide.
M4A is Apple's container for AAC audio — the format iTunes, Apple Music, and iPhone Voice Memos write by default. OGG is the open, royalty-free alternative used heavily on Linux, in game engines, and anywhere developers want to avoid patent-encumbered codecs. The conversion is a lossy-to-lossy transcode, so it pays to understand what you gain and what you lose before running it.
When M4A to OGG Actually Makes Sense
The conversion is worth doing in a small number of concrete situations. If you ship audio in a game built with Godot, Unity, Unreal, or SDL_mixer, OGG Vorbis is the de facto standard — engines decode it without additional licensing. If you maintain a Linux audio library and want everything in formats your distro plays out of the box, OGG is the safe baseline. If you serve audio over the open web and want to avoid AAC's licensing complications for commercial streaming services, Vorbis sidesteps that entirely. Cross-platform sharing with Android and Linux users is another common reason — Android plays both, but OGG is still the more universally indexed format on F-Droid apps and open-source players.
If none of those apply, converting M4A to MP3 is usually the better move. MP3 has wider hardware compatibility than OGG, especially in cars, smart speakers, and older Bluetooth audio devices. iOS in particular still has patchy native OGG support — Safari can play it on macOS, but on iPhone you typically need a third-party player like VLC or Documents.
The Quality Cost: Two Generations of Lossy Compression
Both AAC (inside the M4A) and Vorbis (inside the OGG) are lossy codecs. Each one already discards perceptually masked information from the source. When you convert M4A to OGG, the encoder decodes AAC to raw PCM, then re-encodes that PCM as Vorbis. The PCM intermediate is intact, but the artifacts AAC introduced — pre-echo on transients, narrow stereo imaging on busy passages, slight high-frequency rolloff — are baked into the input that Vorbis sees. Vorbis then adds its own artifacts on top.
In practice this is fine for casual listening when the source is high-bitrate. A 256 kbps AAC from Apple Music transcoded to Vorbis q6 (~192 kbps) is hard to distinguish from the original M4A in normal conditions. A 96 kbps AAC transcoded to Vorbis q3 (~112 kbps) compounds the damage and starts to sound smeared on cymbals, sibilants, and reverb tails.
The rule of thumb: target a Vorbis quality at or above the original AAC bitrate. Match 256 kbps AAC with Vorbis q6–q8. Match 128 kbps AAC with Vorbis q4 or q5. Going lower than the source bitrate is when audible damage appears.
Step-by-Step in the Browser
The fastest route is the M4A to OGG converter. Drop the file into the page, pick a quality setting, and download the result. The conversion runs in your browser using WebAssembly FFmpeg — the audio never leaves your device, which matters if you are converting Voice Memos, interview recordings, or anything else you would not upload to a random server.
For a single file the process takes a few seconds. For a folder of tracks, batch the conversion locally instead of uploading them one by one.
OGG Vorbis vs OGG Opus: Clear the Naming Up Front
Both share the .ogg extension and both ride inside the Ogg container, but they are completely different codecs. Vorbis is the older codec, tuned for music at 96 kbps and above. Opus is newer (standardized in 2012) and beats Vorbis at almost every bitrate, especially below 64 kbps where it dominates. WebRTC, Discord voice, YouTube audio streams, and Telegram voice messages all use Opus.
If a tool says "OGG" without specifying, it usually means Vorbis. Game engines historically use Vorbis. New web projects should consider Opus instead — it is supported by every modern browser and produces smaller files at equivalent quality. See Vorbis vs MP3 for a deeper breakdown of where each codec wins.
The ffmpeg One-Liner
If you prefer the command line, this works on any system with ffmpeg installed:
ffmpeg -i input.m4a -c:a libvorbis -q:a 6 output.ogg
The -q:a flag takes a value from -1 (worst) to 10 (best). Quality 6 averages about 192 kbps and is a sensible default for music. For Opus instead of Vorbis, swap libvorbis for libopus and use -b:a 128k for a target bitrate.
For batch conversion of a folder:
for f in *.m4a; do ffmpeg -i "$f" -c:a libvorbis -q:a 6 "${f%.m4a}.ogg"; done
Browser Support Reality
OGG Vorbis playback in browsers is solid on Chrome, Firefox, Edge, and Opera across desktop and Android. Safari added Vorbis support in macOS 11 and iOS 17, but older versions still need a fallback. If you serve audio on the web and need universal playback, ship MP3 alongside Vorbis using the audio element's source list, or use Opus which has better Safari coverage on recent versions.
File Size and Bitrate Math
A typical 4-minute song from Apple Music (256 kbps AAC inside M4A) is about 7.5 MB. Re-encoded as Vorbis q6 (~192 kbps), the same song lands around 5.7 MB — slightly smaller because Vorbis is more efficient per kilobit. Re-encoded at q4 (~128 kbps), it drops to about 3.8 MB. Re-encoded at q8 (~256 kbps), it climbs to roughly 7.7 MB, near the original size.
For voice-only M4A (iPhone Voice Memos at ~64 kbps mono AAC), Vorbis equivalents at q3 (~96 kbps) or q4 (~128 kbps) preserve intelligibility while keeping the file small. Below q3 on speech, sibilants and consonants start to suffer.
If file size is the goal, OGG Opus beats Vorbis by a wide margin on speech — Opus at 32 kbps mono produces voice quality comparable to Vorbis at 64 kbps. Most modern OGG tools default to Opus for new encodes when available. See the OGG Vorbis vs MP3 comparison for more on Vorbis's positioning against MP3 specifically.
When to Skip the Conversion
If your only goal is iPhone or general consumer playback, leave the M4A alone — iOS plays it natively at full quality. If you need open-format compatibility but also broad device support, MP3 is usually the safer choice. Use OGG when the receiving environment specifically wants OGG: a game engine, a Linux daemon, an open-source media player. Read What Is M4A and What Is OGG for more context on each container.
Verifying the Output
After converting, spot-check the result before deleting the source. Open the OGG in VLC, foobar2000, or whichever player your downstream environment uses. Listen on headphones to a section with high frequencies (cymbals, vocal sibilants, reverb tails) — that is where transcoding artifacts surface first. If the playback sounds smeared, swirly, or noticeably duller than the M4A original, encode again at a higher Vorbis quality setting. Keep the M4A source file until you have verified the OGG works in production.
Run ffprobe on the output to confirm codec, bitrate, sample rate, and channel layout:
ffprobe -hide_banner output.ogg
A correctly converted file shows the audio stream as 'vorbis', the bit_rate close to your target, and the sample_rate matching the source M4A. If the sample rate dropped (44.1 kHz source becoming 22.05 kHz output, for example), the converter applied an unwanted downsample and the result will sound noticeably worse than the source — re-run with explicit -ar 44100 in ffmpeg to lock the rate.
For game engine workflows, also check that the engine's audio importer reads the metadata you need — loop points, cue markers, and channel layout. Vorbis comments are different from M4A's iTunes-style metadata atoms, and not every converter translates fields cleanly between them.