Audiobookshelf: Stream, sync, and listen to audio books and podcasts yourself
The perfect combination of server and mobile apps - pretty, simple and open source

audio bookshelf is a fantastic way to listen to audiobooks and podcasts across multiple devices. On the smartphone via app, in the browser via a nice web interface - and of course always beautifully synchronized! And since the whole thing is also multi-user capable, it is a great family server. Or shared server. Club server…
Features
Audiobookshelf describes itself quite aptly: “A self-hosted audio book and podcast server with smartphone apps.” That should be enough for some, but for everyone else: The project consists of two parts, the server application and a client app. You can install the server at home on any Linux computer, such as a NAS, a Raspberry Pi or another device that preferably runs 24/7. With appropriate port releases the server can of course also be used outside of your own LAN. As a Docker container version, Audiobookshelf also runs directly under Windows.
The Server & Hosting offers a simple web interface to build a library and stream media. On the one hand, Audiobookshelf works like a traditional media center and reads files from a local folder structure. On the other hand, the service works as a podcatcher, i.e. manages podcasts and downloads episodes. So it's always about locally available files.
The Smartphone App provides a similar look, also allows you to search and subscribe to podcasts and has some really nice functions. For example, there is of course a sleep timer to stop playback after a while. The clever thing: you can interrupt the timer by shaking your cell phone.
The most important Audiobookshelf feature is certainly the Synchronization. The progress is compared every few seconds, so that seamless switching between all connected devices is possible.
But beyond that there are all sorts of things Little things for setting. Audiobookshelf can handle multiple users as well as multiple libraries, useful for separating podcasts and audio books or children and adults. Other features:
- Metadata tools
- Statistics
- Notifications via Apprise
- backups
- chromecast
- Playlists
The Android app is officially in beta status, the iOS app is even described as “early beta”. However, the Android version sometimes works perfectly here.
install servers
The provides detailed instructions for various systems Github page, This is about Debian, Ubuntu and their derivatives.
First you need the dependencies (curl, gnupg) and the Personal Package Archive (PPA) of the project, i.e. the package source:
sudo apt install gnupg curl
curl -s https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg |\
sudo apt-key add -
sudo curl -s -o /etc/apt/sources.list.d/audiobookshelf.list https://advplyr.github.io/audiobookshelf-ppa/audiobookshelf.list
On newer Ubuntus you can see the message apt-key is deprecated come. We have an article about it here. The solution in brief:
sudo apt install gnupg curl
curl -s https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg |\
sudo gpg -o /usr/share/keyrings/foobar-archive-keyring.gpg --dearmor
sudo curl -s -o /etc/apt/sources.list.d/audiobookshelf.list https://advplyr.github.io/audiobookshelf-ppa/audiobookshelf.list
Here apt-key is simply replaced by gpg.
Then you can install as usual:
sudo apt update
sudo apt install audiobookshelf
The service starts automatically if you want to restart manually:
sudo systemctl restart audiobookshelf.service
By default, Audiobookshelf listens to the Port 13378. So open the URL of the server in the browser, for example 192.168.178.200:13378.
Set up library
When you first call it up, you first have to specify a root user:

Once in the interface, a library is created over Add your first library:

In the following dialog you then give it a name, select the media type and can optionally activate things like automatic updates under Settings and Schedule. But the point is important New folder path. Selecting using the button tends not to work, so you have to specify the path manually, for example /media/my-usb-disk/media or similar.

An empty folder is ideal for podcasts. Audio books and other inventory media should preferably be in the usual folder structure Artist/Album/Track be available, properly tagged and have cover images.
You will then find the libraries at Settings/Libraries and you can start the scan there. Depending on the inventory, it may take a few minutes until the library is filled.

About Search you investigate podcasts, that you want to subscribe to.

In the subscribe dialog you can change the metadata in advance and activate the automatic download.

However, by default you will only find empty podcast subscriptions! If you old episodes want to load, calls up the settings of the podcast, for example via the pen icon in the library view.

Submit Episodes a start date and a limit - about Check & Download New Episodes Old titles (but of course new for the library...) are then downloaded.

This completes the basic setup.
Set up app
Setting up the app is much easier: install it first from Google Play. The first time you call up you have to connect again via the URL of the server including port:

You immediately end up in the existing library and can continue listening to the programs you have started.

Other features
By default you have only one so far Users – with admin rights. Of course, it is better to create additional users for pure consumption who are only allowed to consume, if necessary only individual libraries. This even makes sense for individual users: for security reasons, you can also use a simpler password.

You can find a great feature at Settings/Listening Sessions: All completed and ongoing sessions are logged here - certainly useful for power users at least.

Also Playlists can be created - which are only visible to you, not to other users.

Auf dem Smartphone There is also another feature to discover: You can add local media to the app here and use Audiobookshelf as a player for everything.

At the end of the day, Audiobookshelf is one thing above all: an all-round convincing user experience with stylish interfaces and clean synchronization.
Perfect Audiobookshelf is of course not. For example, on one system there was a bit of a problem with the dialog for the media path and podcasts could not be subscribed to because the server was not allowed to create folders for the podcasts. But ultimately it was just small things on a test system. My real installation on my Cubi home server, however, runs completely without any problems. A perfect match for that Homemade NAS.
More on this topic: Podcast.
Could it be that the description for installing with the new gpg variant is incomplete? Applies to https://www.tutonaut.de/apt-key-deprecated-die-loesung/. In order for apt to find the key, it has to be in the list. Or am I wrong? It would be more correct in my opinion
curl -s https://advplyr.github.io/audiobookshelf-ppa/KEY.gpg | sudo gpg -o /usr/share/keyrings/audiobookshelf-ppa.gpg –dearmor
echo deb [arch=amd64 signed-by=/usr/share/keyrings/audiobookshelf-ppa.gpg] https://advplyr.github.io/audiobookshelf-ppa ./ | sudo tee /etc/apt/sources.list.d/audiobookshelf.list
Not entirely wrong, not entirely right: The specification is optional - without an explicit signed-by specification, apt simply uses all keys that are trusted. This could probably become a bond, but it is still an option. My Ubuntu Server 22.04 doesn't even throw out any notices about it.