Convert AVI to M4B — Free Online Tool

Convert AVI video files to M4B audiobook format by extracting and re-encoding the audio track to AAC, discarding the video stream entirely. This is ideal for converting AVI recordings of lectures, sermons, or spoken-word content into a bookmarkable, chapter-aware audiobook file compatible with Apple Books and podcast apps.

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

AVI is a video container that typically carries both video and audio streams. During this conversion, the video stream is completely discarded — M4B is a pure audio format and cannot carry video data. The audio stream (which in AVI is commonly MP3 via libmp3lame) is transcoded to AAC, the codec natively required by the M4B/MPEG-4 container. The output file is wrapped in an MPEG-4 container with the .m4b extension and the -movflags +faststart flag, which relocates the file's metadata index to the beginning of the file. This enables progressive playback and fast seeking, which is particularly important for long-form audiobook content. Any chapter metadata that may be added separately can be preserved by the M4B container, though chapter data is not extracted from AVI since AVI does not support chapters.

What Each Flag Does

Flag What it does
ffmpeg Invokes the FFmpeg tool. In this browser-based tool, FFmpeg runs locally via WebAssembly (FFmpeg.wasm) — no data is sent to a server. The same command can be run identically on a desktop FFmpeg installation for files over 1GB.
-i input.avi Specifies the input file, an AVI container which may contain both video and audio streams. FFmpeg reads all available streams from the AVI file; subsequent flags determine which streams are included in the output.
-c:a aac Sets the audio codec to AAC (Advanced Audio Coding), which is the required codec for M4B files. Since AVI audio is commonly stored as MP3, this flag triggers a transcode from MP3 to AAC — a necessary step because M4B's MPEG-4 container does not accept MP3 as a native audio codec.
-b:a 128k Sets the AAC audio bitrate to 128 kilobits per second. This is the default and is well-suited for speech-heavy audiobook content converted from AVI source material. Increase to 192k or 256k for music or higher-fidelity audio sources.
-movflags +faststart Moves the MPEG-4 container's metadata index (moov atom) to the beginning of the output M4B file. This is critical for audiobook use: it allows Apple Books, podcast apps, and other players to seek accurately and begin playback immediately without buffering the entire file first.
output.m4b The output filename with the .m4b extension. FFmpeg uses this extension to determine the output container (MPEG-4), and the .m4b extension specifically signals to Apple Books and compatible podcast apps that this file is an audiobook with support for bookmarking and chapter navigation.

Common Use Cases

  • Converting a recorded lecture or university course session saved as an AVI file into an M4B audiobook so students can bookmark their progress and resume listening on an iPhone or iPad
  • Transforming AVI recordings of sermons or religious talks into distributable M4B files compatible with Apple Books, enabling congregation members to listen with chapter navigation
  • Extracting the audio commentary track from an AVI-format video essay or documentary to create a standalone audiobook file for commute listening
  • Converting an AVI recording of a conference presentation or keynote speech into M4B for archiving in a podcast app with playback speed and sleep timer support
  • Repurposing legacy AVI video training materials into M4B audio files for learners who prefer audio-only consumption on Apple devices or podcast players that support M4B bookmarking

Frequently Asked Questions

No — M4B is a pure audio format and cannot store video streams. The conversion process strips the video track entirely and outputs only the audio, re-encoded as AAC. If preserving video is important to you, M4B is the wrong target format; consider MP4 or MKV instead.
It depends on the source. AVI files commonly store audio as MP3 (libmp3lame), so transcoding from MP3 to AAC is a lossy-to-lossy conversion and does introduce a second generation of compression artifacts. At the default 128k bitrate, the result is generally acceptable for speech content like audiobooks and lectures. For music or high-fidelity audio, consider raising the bitrate to 192k or 256k in the FFmpeg command using the -b:a flag.
Not automatically from the AVI source, because AVI does not support chapter metadata. However, M4B does support chapters natively, and you can inject chapter data into the output file using a separate FFmpeg step with a chapter metadata file (in FFmetadata format) after the initial conversion. This makes M4B a much better long-term container for structured spoken-word content than AVI ever could be.
The -movflags +faststart flag moves the MPEG-4 container's moov atom (the index of all media data) from the end of the file to the beginning. For M4B audiobooks, this is important because it allows apps like Apple Books or podcast players to begin playback before the entire file is loaded, and enables accurate seeking in long files. You can technically remove it for local playback, but it is strongly recommended to keep it for any file you plan to distribute or stream.
Replace the value after -b:a in the command with your desired bitrate. For example, use -b:a 64k for smaller files suitable for speech-only content, or -b:a 192k for higher quality audio. The default of 128k is a practical middle ground for spoken-word audiobooks. The full modified command would look like: ffmpeg -i input.avi -c:a aac -b:a 192k -movflags +faststart output.m4b
Yes, on Linux or macOS you can use a shell loop: for f in *.avi; do ffmpeg -i "$f" -c:a aac -b:a 128k -movflags +faststart "${f%.avi}.m4b"; done. On Windows Command Prompt, use: for %f in (*.avi) do ffmpeg -i "%f" -c:a aac -b:a 128k -movflags +faststart "%~nf.m4b". Note that this browser-based tool processes one file at a time; the FFmpeg command is provided precisely so you can handle bulk conversions locally.

Technical Notes

AVI (Audio Video Interleave) was designed as a synchronized audio-video container and has no native concept of audio-only output, chapters, or bookmarking. M4B, by contrast, is a purpose-built audiobook variant of the MPEG-4 audio container (essentially an AAC audio file in an .mp4 wrapper with a renamed extension and specific iTunes/Apple metadata conventions). Because AVI supports multiple audio tracks, only the first audio track is extracted by default in this conversion — if your AVI contains secondary audio tracks (e.g., a commentary track), you would need to specify -map 0:a:1 explicitly in the FFmpeg command to select a different track. AVI files do not support subtitle or chapter data, so none of that metadata carries over. The output M4B file will have an empty chapter list unless chapters are added in a post-processing step. ID3-style tags (title, author, album) can be embedded into M4B using FFmpeg's -metadata flag, which is useful when preparing audiobook files for Apple Books ingestion. File size will typically be smaller than the source AVI because the video stream is removed and AAC is generally more efficient than MP3 at equivalent bitrates.

Related Tools