Audio & Video

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:

audiobookshelf login.
First login to Audiobookshelf

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

create bib button.
Create 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.

bib configuration.
Basic configuration of the library

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.

first library in the picture.
Manually triggering the scan

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

podcast search.
Search podcasts

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

Audiobookshelf-podcast-config.
Configure and subscribe to podcast

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.

entries in library.
Call up podcast configuration

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.

Get old podcast episodes.
Old episodes can be scanned manually

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:

configure app.
Registration of the app on the server

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

app screenshots.
Audiobookshelf library and player on smartphone

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.

user management.
Creating users makes sense!

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.

session information at a glance.
Listening sessions ensure transparency

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

playlist setting.
Playlists are only visible to creators

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.

local median on the smartphone in audiobookshelf.
Local media on your smartphone

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.

Mirco Lang

Freelance journalist, Sauerland exile, (fairly old) skateboarder, graduate computer scientist, retail salesman, open source nerd, Checkmk handbook writer. Ex-Saturn'ler, Ex-Data-Becker'ler, Ex-BSI'ler. First contact with computers: ca. 1982 - a friend's big brother's C64. If you want to read more about open source, Linux and craft stuff and support Tutonaut here: About Coffee sponsorship via Paypal.I'm always happy. In advance: Thank you! Do not miss: cli.help and VoltAmpereWatt.de. New: Mastodon

2 comments

  1. 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

    1. 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.

Leave a Comment

Your e-mail address will not be published. Required fields are marked with * marked

This website uses Akismet to reduce spam. Learn more about how your comment data is processed.

Back to Top button
Close

Oops!

Please deactivate your ad blocker.