macOS Catalina broke Audiobooks, here’s my workaround
Introduction
When Appel released macOS Catalina (10.15) at the end of the September not only did they break 32-Bit applications on macOS but they also broke audiobooks on the Mac for a lot of people. So what happened?
Among the things Apple is changing is that they have “retired” iTunes and broke it up into distinct applications. Namely:
- Music
- Books
- TV / Movies
- Podcasts
While the Music.app still retains the ability to select where you want to store the files and edit the tags, for the Books app they omitted this. The storage location for the books you have in the application is now hard coded to a location on your local drive, and not in “user space” either. It’s just stored deep within the OSs guts.
~/Library/Containers/com.apple.BKAgentService/Data/Documents/iBooks
This is not configurable, and that’s fine if you only have a handful of audiobooks, but if you have a large collection you’re quickly going to run out of storage space.
Why did Apple do this?
This of course is a good question. I can speculate though.
Lifetimes
Apple is currently in their “third phase” of their life.
Phase 1: Computer Company
In the first phase they build and sold you computers, with some software thrown in. This period lasted essentially from the start of the company until around 2007 when Apple introduced the iPhone.
Phase 2: Mobile Device Company
With the introduction of the iPhone and iOS Apple started shifting away from the computer / desktop model and more towards a mobile device model. This is also seen in the way their computers changed. Back in 2013 I could still replace the HDD in my MacBook, in my current one? No chance. This is essentially a very large mobile device that at the end of their life will have be thrown out, just like the phone.
Phase 3: The Service Company
Around 2016 Apple started to enter the next phase, that of a service company. It started with the push of iCloud and the introduction of Apple Music. Both of these are subscription services and provide Apple with a continuous revenue stream. To be fair, they aren’t the only one. Adobe has gone down this road, so has Microsoft and a lot of smaller developers. The idea here is that there is predictable revenue, especially in a time where hardware sales are stagnating or falling as devices have gotten “good enough” for most people. I maybe upgrade my computer now every four years and my phone every three. Maybe. It really depends if I see the reason for this.
So what does that have to do with how Books works?
Simple. There are two ways you can “legally” obtain Audiobooks for the Books app:
- The Apple Audiobook store
- The Audible book store (Apple acts as reseller and had integration with Audible for at least 15 years.
In both cases there is no need for you to store large amounts of books on the drive. You listen to maybe one or two books at a time and most machines have more than enough space to hold those.
Because these books are already tagged and prepped you also won’t need to modify the ID3 tags, so why would you need that functionally in the app?
So what now?
I was aware of this limitation back during the Beta phase and was wondering if Apple was going to fix it before the release, the answer is: No. I also do not expect Apple to fix it. They do not want you to load your own audiobooks, they want to be the man in the middle and get their pound of flesh in the market.
So, the only answer is to leave the Apple eco system behind and go…..
Let there be Plex
My solution to the problem is both simple and complicated: Plex.
For those who don’t know, Plex is a media server software and player. The basic version is free and it has quite an extensive skill set. Unfortunately one thing it does not directly support are audiobooks, even though this has been requested repeatedly all the way back to 2013, but because Plex is at it’s core Open Source there are people who have figured out a way to make use of it.
For me Plex was the easiest way to approach this because my books are already sitting on a NAS an Plex was already running there, the challenge was as to how to get them onto my phone and manage them easily.
The ingredients
There are three things you will need to make this work well:
- Plex
- Prologue for iOS (more about this in a bit)
- Audiobook Binder
Between these three tools and a minor investment of time and money you’ll find yourself with a much better solution than iTunes can provide, or even the Books apps should Apple ever “fix” it.
Plex
The Plex installer is pretty straight forward, it runs on a variety of platforms. I am not going to go through here on how to install Plex itself, just how to make the Audiobook version work for you.
After you have installed Plex you should create a new Music Library, you can name it anything you like, I named mine “Audiobooks”.
As you set it up go into the advanced settings and make sure to have it read the ID3 tags of the files as well as not “suggesting” things from other libraries. I forgot to uncheck the second option on my first attempt and it resulted in Plex mixing music in with the books, which was more than confusing.
That’s pretty much it. After you’re done Plex will start indexing the files and build the library. Depending on how large it is and how many books you have this can take a while.
Once the scanning is done you can edit individual books if they are read wrong, I had some where the album cover was missing, I noticed a few I had duplicates on and a minority of them failed to read the ID3 tags, that then required some manual fixing.
The nice thing is that unlike with iTunes it is pretty evident when something is messed up and it’s relatively easy to fix in the web browser.
Prologue
Prologue is an iOS app that works with Plex and behaves exactly like the books app does on iOS. It allows you to play back the audiobooks with up to double speed, rate them and mark books as read. You can either stream the books or download them to the application.
One nice thing is that all the control for how books sync to the device are handled by the app. What that means is that you don’t need to jump through the truly horrible UI on iTunes to just remove a book from the device.
The application isn’t quite perfect, for example there is no easy way to just look at the books that you have downloaded, but I did had an exchange with the developer and it is coming. It costs CAN$9 if you want all the features.
Ratings you do in the app are syncing back to the Plex Server automatically, as well as marking books as read. So it’s easy to sort in Plex for books you haven’t read yet.
Audiobook Binder
This one is optional. What the application does is essentially “bind” your audiobooks. If you have multiple files it will create one continuous .m4b file for you. There won’t be any encryption on the files so it will play in Plex or any other player. The advantage with the single file is that they are easier to copy / maintain and remembering playback position works better with Plex.
The application is free, the only downside I have found is that it does not really write the tags necessarily in the way I like them (e.g. no track numbers), but that is easily fixed with an external ID3 tag editor (still looking for a good one that doesn’t cost an arm and a leg).
That’s all folks
It really is. Between these three tools I now have a much more flexible audiobook library. I wish Plex would add a real audiobook section to the server but I am not holding my breath. The request has been open for almost seven years now and there seems to be no attempt so far by Plex to actually add this. It’s a shame. But between Plex and Prologue this works very well. Interestingly enough downloading audiobooks to the phone is much faster than it ever was via iTunes.
Happy Listening