M4B Players for Mac and iPhone: What Plays It, Shows Chapters, and Keeps Your Place
An .m4b lands on your Mac, you double-click it, and something opens.
Whether that something is any good at playing an audiobook is a different question, and it has three separate answers hiding inside one word: supports. The rest of this page is the testing behind the table — which app fails where, and how to tell an app’s fault from the file’s. And when the file is the fault, AudioBo builds it with the chapter list in both places players look — the combination nothing on the table disagrees about.
The player that does everything is the one already on your Mac. Apple Books comes with macOS, your Mac hands the file to it without being asked, and it does all three things an audiobook needs: it plays, it lists the chapters by name, and tomorrow the book is still where you stopped. There is nothing to install and nothing to choose.
The other apps differ in two places, and only two: whether they show you the chapter names, and whether they remember where you left off. QuickTime Player does neither — it plays the file and puts you back at the beginning the next day. VLC shows the chapter names and picked my place back up four times out of five. IINA does both.
And if the chapters appear in one app but not in another, that is the file talking, not the app. Nothing is broken, and opening the file in a second player is the fastest way to find out which of the two you are dealing with.
Do chapters show in one app and vanish in another? That is the file, not the apps — and it is fixable. AudioBo builds the file with the chapter list written in both of the places players look for it, and marks the file as an audiobook rather than as music — the combination that leaves players nothing to disagree about.
It cannot make a player show something that player does not support, and it does not remove the protection from a book you bought from a store.
Three questions, not one
Pull the word apart and there are three capabilities, and no app has to have all of them:
- It plays the file. Audio comes out. Low bar. Almost everything clears it.
- It shows the chapter list. Titles you can read and jump between, not a flat scrubber over ten hours.
- It keeps your place. You quit, you come back tomorrow, and the book is where you left it.
The first is nearly free. The second depends on how the file was built as much as on the app. The third is what separates a media player from somewhere you can keep a book, and it is the one nobody puts in a feature list.
What I tested
Everything below is first-hand: one book, opened in four apps one after the other, each app asked the same three questions.
Four Mac apps, on macOS 26.6, in August 2026. The subject was a file I built myself: twenty minutes of audio, three chapters starting at 0:00, 6:40, and 13:20, titled Chapter One through Chapter Three, and carrying its chapter list in both formats an M4B can use, so that nothing in the results is the file’s fault.
Apps I did not run are not in the table. An honest four beats a fabricated twenty.
| Player | Plays it | Chapter list | Keeps your place |
|---|---|---|---|
| Apple Books 8.5 | Yes | Yes | Yes |
| IINA 1.4.4 | Yes | Yes, titles and times | Yes |
| VLC 3.0.23 | Yes | Yes, titles | Stores it; restored it 4 times in 5 |
| QuickTime Player 10.5 | Yes | No list, chapter skip only | No |
| Everything else | Not tested | Not tested | Not tested |
Apple Books
The one you already have, and the one macOS picks. I asked LaunchServices which application is registered to open an .m4b and got /System/Applications/Books.app — on a Mac where IINA, Music, and QuickTime Player all register for the same file type and lose.
Position is the interesting column, and Books keeps it in its library database rather than in your file. That is why a position survives quitting the app and restarting the machine — and why copying the .m4b to another Mac does not bring your place along with it. The file has no idea where you stopped.
Chapters it treats as chapters rather than as timestamps. The app ships strings for a chapter list, for next and previous chapter, and for a sleep timer whose option is to stop when the current chapter ends — which only means anything if the app knows where chapters begin.
Two things about Books surprise people and belong to other pages: it copies your file into its own storage on import — imported audiobooks live under the Books agent’s container with hashed filenames, so editing the original afterwards changes nothing you can see — and what Books itself offers you to change is Rename Book and Change Cover, and that is the list. Editing an M4B’s metadata, cover, and chapters is where that goes.
IINA
Free, open source, and the one I would point a Mac listener to if Books were somehow not an option.
Playback → Chapters listed all three entries as 00:00 – Chapter One, 06:40 – Chapter Two, 13:20 – Chapter Three — time and title in the same row, which is more than the other three give you. Clicking the third jumped playback there.
Then the part that matters. I quit at 13:24, and IINA wrote a one-line record for that file: start=804.076891. Reopening the same file gave me the chapter label “Chapter Three” and playback already moving, and quitting ten seconds later rewrote the record as 812.784049. It resumed and it did not ask.
VLC
The question people type into a search box is whether VLC plays M4B. It does, and it reads the chapters properly. Playback → Chapter listed Chapter One, Chapter Two, and Chapter Three by name. Driving the same file through VLC’s remote-control interface, the reported chapter index moved to 2 after a seek to 850 seconds — correct, since chapter three starts at 800.
The third column is where it gets complicated, and this is the one place my result disagrees with what compatibility lists tend to say.
VLC does record where you stopped. After every quit, the entry was sitting in its preferences: the file’s URL and the second I was on — 506 after one session, 703 after another. VLC’s own configuration file carries a setting for continuing playback where you left off, and on a clean install it is left unset.
Restoring that position is the inconsistent part. Across five reopens of the same file, VLC picked up where I had stopped four times, silently and without a prompt of any kind, and once started at zero with the correct number still stored in its preferences. Nothing on screen distinguishes the two cases until the audio starts.
Which is why the table hedges that cell. For a film, losing the mark costs you a scrub. For a nine-hour book with no chapter you can name as a landmark, it costs you the evening.
QuickTime Player
It plays M4B files, and that is the end of the good news for audiobooks.
View → Next Chapter and Previous Chapter exist and they work exactly. Two presses walked my file to 400.0 and then 800.0 seconds, the chapter boundaries to the decimal, and Previous Chapter walked it back to 400.0. So the chapters are read. But there is no list of chapter titles anywhere in the interface — you can move between chapters without ever learning what they are called.
And it does not keep your place. I left the file at 800 seconds, quit, opened the same file again, and got 0.0. For a two-minute clip, fine. For a book, that is not a player, it is a preview.
You probably do not need a new player
If what you want is to listen to an audiobook on a Mac, you are finished. Books is installed, macOS already routes the file to it, and it does all three things on the list — nothing here needs installing for listening’s sake.
The reason to keep a second player around is diagnostic, and it is worth the two minutes.
When two players disagree about the same file
This is the part that saves evenings.
If chapters show up in one app and not in another, that is a fact about the file, not about the apps. An M4B can carry its chapter list in two different places, and players do not agree on which one to read — so one untouched file can come up properly chaptered in VLC and completely flat in an Apple app, with nothing corrupted anywhere. Working out which case you have takes about ten seconds, and the anatomy of the format explains why two places exist at all.
Want to check it for yourself? Before you re-encode anything, open the file in a second player. If any player lists the chapters, the data is in the file and your problem is much smaller than it looked.
Building a file that behaves the same in all of them
The flip side of that rule is what it takes to produce a file no player can disagree about, and in plain words the list is short. Write the chapters down twice, in both of the places a player might look. Mark the file as an audiobook rather than leaving it marked as ordinary music. Put the cover picture inside the file instead of leaving it lying next to the file in the folder.
In the specifics: both chapter formats written, not one. The ftyp brand set to M4B rather than left as whatever the encoder felt like — my own ffmpeg test file came out branded M4A despite the .m4b extension, which is a good illustration of how quietly this goes wrong. Cover embedded rather than sitting beside the file as folder.jpg.
Every one of those is doable by hand, and ffmpeg will do all of them once you know each obligation exists and spell it out. Miss one and the file plays anyway, wrongly, with no error message anywhere.
What AudioBo writes in, so players stop disagreeing
That list is the whole of AudioBo’s job. You give it your audio and what comes back is one book that opens the same way in all four apps above — chapters there and named, cover showing, filed as a book rather than as music — without your having to know that any of those obligations existed.
It also carries a small player of its own, which matters more here than it sounds: you can hear a chapter boundary before you export rather than after, in the app that made the mark.
If you do want the mechanical version: it writes both the QuickTime chap track and the Nero chpl list into every M4B it builds, and brands the header M4B, which is the combination that leaves players nothing to disagree about.
There is one honest asterisk, and it is this page’s theme in miniature. Per-chapter cover images, added in 1.3.4, are always written into the file — and Apple Books on Mac draws only the book cover, which AudioBo’s own release notes say outright. A file can carry more than any single app chooses to show you, and no way of building it changes what a player is willing to draw.
The files that no player choice gets you past
One boundary. A file bought from a store can be wrapped in DRM, and a protected file plays in its vendor’s app or nowhere; switching players changes nothing. AudioBo does not remove DRM and never will. Converting M4B to MP3 on a Mac is where that argument is laid out properly, because that is where people meet it.
iPhone: playback is not the hard part
I did not test iOS players, and I am not going to describe apps I have not run.
What I can tell you is that on iPhone the bottleneck is almost never playback. Apple Books is there, the same as on the Mac. The difficulty is getting your own .m4b into it, which is a piece of platform design rather than a player limitation — why audiobooks do not sync from Mac to iPhone covers the failure modes, and the working method, step by step is on the blog.
Third-party iOS audiobook players exist. I have not run them, so there is no table for them here. If you try one, put it through the same three questions: does it play the file, does it show you the chapter titles, and is the book where you left it tomorrow morning. The third answer is the one that decides.
Common questions
Can VLC play M4B files?
Yes. VLC 3.0.23 played my test M4B and listed all three chapters by title under Playback → Chapter. It also records where you stopped: after every quit, the file's URL and the second I was on were sitting in VLC's preferences. Picking that position back up on reopen worked most of the time and failed once in five, silently, with the correct number still stored.
Do I need to install anything to play an M4B on a Mac?
No. Apple Books is already there, and it is what macOS hands the file to — I asked LaunchServices which app opens an .m4b and got Books back, on a Mac with three other registered candidates. Books plays the file, treats chapters as chapters, and keeps your position across quits and restarts. If listening is the whole goal, you are done.
Does QuickTime Player show M4B chapters?
It moves between them without ever showing them. View → Next Chapter walked my file to exactly 400 and 800 seconds, the two chapter boundaries, so the chapters are being read. There is no chapter list in the interface, and no memory of position: I left the file at 800 seconds, quit, reopened it, and got 0.0.
Which Mac player keeps your place in an audiobook?
Apple Books and IINA both do it silently. IINA wrote start=804.08 when I quit at 13:24 and came back playing from there. VLC stores the position reliably but restored it inconsistently in my tests. QuickTime Player does not do it at all — quit and reopen and you are back at zero.