Audiobookshelf is all you need for audiobooks and podcasts
I've been an audiobook fan for quite a few years now. I've also been a podcast listener since their inception. My search for a way to have the listening position synced across all of my devices along with an easy to use interface in a self-hosted package has finally come to an end.
I present to you Audiobookshelf. Your one stop shop for everything spoken word. It's a server you can deploy with Docker along with a native Android and iOS app that caters to your remote listening needs.
The docker compose yaml file for the server is as follows:
services:
audiobookshelf:
image: ghcr.io/advplyr/audiobookshelf:latest
ports:
- 13378:80
volumes:
- </path/to/audiobooks>:/audiobooks
- </path/to/podcasts>:/podcasts
- </path/to/config>:/config
- </path/to/metadata>:/metadata
environment:
- TZ=Europe/Athens
The /audiobooks
bind mount should point to a directory with specific structure in order to help the program recognize your audiobooks. Podcasts get populated after you add them, so no special treatment needed there.
Regarding the import of audiobooks, not only do you get support for multiple formats, you also get great tagging results if the audiobook you own has an Audible entry. When you are adding a new audiobook and you paste the Audible ASIN code and hit search you'll get all the tags your entry needs. The trick to get the ASIN code is to visit the audiobook page on Audible and copy it from the URL bar. Here's an example of what you have to copy :https://www.audible.com/pd/NameOfYourBook/B0CW23CC7L
the part in bold is what you need.
Following are some screenshots from the Android app and the server app that explain most of the main features.
Along with the above functionality you get download for offline listening and the ability to sync your listening position once you get back to wifi.
The documentation for audiobookshelf can be found here.
If you've made it this far I'm wondering why haven't you jumped over to your docker host in order to try it out yourself. Cheers!