Convert OGA to M4B — Free Online Tool

Convert OGA audio files (Ogg container with Vorbis, FLAC, or Opus audio) to M4B, the MPEG-4 audiobook format that supports chapters and bookmarking with AAC-encoded audio. This is especially useful for turning open-format audio collections into Apple Books or podcast-compatible audiobook files.

FFmpeg Command

Copy this command to run the same conversion locally with FFmpeg on your desktop. Download FFmpeg

Free — no uploads, no signups. Your files never leave your browser.

Estimated output:

Conversion Complete!

Download

How It Works

OGA files store audio in an Ogg container, typically encoded with Vorbis, FLAC, or Opus. M4B uses the MPEG-4 container with AAC audio — a completely different codec — so the audio stream must be fully re-encoded during this conversion; there is no possibility of a stream copy. The Vorbis or Opus audio is decoded to raw PCM and then re-encoded as AAC at 128k bitrate by default. The output is wrapped in an MPEG-4 container with the -movflags +faststart flag applied, which moves the file's index (moov atom) to the beginning of the file. This is important for M4B files used in streaming or progressive download scenarios, such as podcast feeds or audiobook delivery. Chapter metadata present in the OGA file will be carried over into the M4B container, which natively supports chapter markers — a key feature for audiobook navigation.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg binary. This is the command-line tool that powers the in-browser conversion via FFmpeg.wasm (WebAssembly) — the exact same command runs identically on your local desktop installation.
-i input.oga Specifies the input file — an OGA file containing audio in an Ogg container, typically encoded as Vorbis, FLAC, or Opus. FFmpeg will auto-detect the specific codec inside the container.
-c:a aac Sets the audio codec to AAC (Advanced Audio Coding) using FFmpeg's built-in AAC encoder. This is required because M4B's MPEG-4 container expects AAC audio streams, which are entirely incompatible with the Vorbis or Opus streams found in OGA files.
-b:a 128k Sets the target AAC audio bitrate to 128 kilobits per second. This is the standard default for M4B audiobooks and podcasts — AAC at 128k delivers clear, artifact-free speech reproduction while keeping file sizes manageable for long-form content.
-movflags +faststart Moves the MPEG-4 moov atom (the file's structural index) to the beginning of the output M4B file. This is essential for audiobook streaming and podcast delivery — without it, a player must download the entire file before it can start reading chapter markers or begin playback.
output.m4b Specifies the output filename with the .m4b extension, which signals to Apple Books, iTunes, podcast apps, and other audiobook players that the file supports chapter navigation and playback position bookmarking.

Common Use Cases

  • Converting a multi-chapter audiobook recorded and distributed in OGA/Vorbis format into an M4B file that can be imported directly into Apple Books or iTunes with chapter navigation intact.
  • Packaging a podcast episode originally exported in OGA format into M4B for distribution to listeners who prefer podcast apps that support chapter markers and bookmarking.
  • Transforming an OGA lecture recording into an M4B so students can resume playback exactly where they left off using the bookmarking feature on iPhone or iPad.
  • Converting an open-source audiobook downloaded from LibriVox or a similar platform (often distributed in Ogg Vorbis format) into M4B for compatibility with car audio systems and smart speakers that support AAC but not Ogg.
  • Preparing an OGA-format spoken-word or meditation audio file for submission to audiobook aggregators that require MPEG-4 container formats with AAC encoding.
  • Re-encoding a high-quality FLAC-in-OGA audiobook to AAC in M4B to significantly reduce file size for storage on mobile devices while retaining acceptable listening quality.

Frequently Asked Questions

Yes, if your OGA file contains chapter metadata, the conversion process will attempt to carry those chapter markers into the M4B container. Both formats support chapters, and FFmpeg maps chapter data between containers during remuxing. However, OGA chapter tags use Vorbis Comment formatting while M4B uses QuickTime-style chapter atoms, so complex or non-standard chapter structures may not transfer perfectly — it is worth verifying the output in Apple Books or a compatible player after conversion.
There will always be some quality degradation because this conversion involves transcoding from one lossy codec (Vorbis) to another lossy codec (AAC), a process sometimes called 'generation loss.' If your OGA file uses FLAC (lossless), the quality loss is limited to the AAC encoding step alone, which at 128k is generally transparent for spoken-word content like audiobooks. For music or high-fidelity content, you can raise the bitrate to 192k or 256k using the -b:a flag in the FFmpeg command to minimize audible artifacts.
Both M4A and M4B use the same MPEG-4 container and AAC audio codec, but the .m4b extension signals to audiobook-aware software like Apple Books and iTunes that the file supports bookmarking and chapter navigation. This means the player will remember your position when you stop listening and let you jump between chapters. An .m4a file with the same content would play fine but would lose the bookmarking behavior in most dedicated audiobook apps.
The bitrate is controlled by the -b:a flag in the command. To increase quality, replace 128k with a higher value such as -b:a 192k or -b:a 256k. To reduce file size — useful for long audiobooks — you can lower it to -b:a 96k or -b:a 64k, which is still quite acceptable for speech. The full adjusted command would look like: ffmpeg -i input.oga -c:a aac -b:a 192k -movflags +faststart output.m4b
The single-file command shown on this page must be adapted for batch processing. On Linux or macOS, you can run: for f in *.oga; do ffmpeg -i "$f" -c:a aac -b:a 128k -movflags +faststart "${f%.oga}.m4b"; done — this loops through every .oga file in the current directory and outputs a corresponding .m4b file. On Windows PowerShell, use: Get-ChildItem *.oga | ForEach-Object { ffmpeg -i $_.FullName -c:a aac -b:a 128k -movflags +faststart ($_.BaseName + '.m4b') }
Renaming the file would not work because OGA and M4B use completely incompatible container formats and audio codecs. OGA is an Ogg container holding Vorbis, FLAC, or Opus audio, while M4B is an MPEG-4 container expecting AAC audio streams. A player that opens an .m4b file expects to find MPEG-4 structure and AAC bitstream data; presenting it with Ogg framing and Vorbis packets would cause it to fail or produce garbled output. A full re-encode, as performed by this tool, is necessary.

Technical Notes

The OGA-to-M4B conversion is a full transcode — no part of the stream is copied as-is. The Ogg container is stripped, the audio is decoded from its source codec (Vorbis at quality 0–10 scale, FLAC losslessly, or Opus), and then re-encoded to AAC using FFmpeg's native AAC encoder at a target bitrate. The default 128k AAC bitrate is a reasonable choice for audiobook and podcast content; AAC is generally more efficient than MP3 at equivalent bitrates, so 128k AAC often sounds comparable to 160k or 192k MP3. The -movflags +faststart flag is non-optional for well-formed M4B files intended for streaming or podcast use — it relocates the MPEG-4 moov atom to the file header so players can begin decoding before the full file is downloaded. Metadata tags (title, artist, album, year) stored as Vorbis Comments in the OGA file are translated to iTunes-compatible MP4 metadata atoms by FFmpeg automatically, though field name mappings are not always one-to-one. OGA does not support multiple audio tracks, and neither does M4B as conventionally used, so no multi-track handling is needed. Note that M4B is marked as a lossy-only format in its specification for practical purposes — even though FLAC is technically allowed in an MPEG-4 container, audiobook platforms and Apple devices universally expect AAC, so using the AAC codec is the correct choice for maximum compatibility.

Related Tools