- Dart 92.1%
- C++ 3.6%
- CMake 2.8%
- Ruby 0.4%
- Swift 0.4%
- Other 0.7%
auDAV
A cross-platform player for audiobooks stored on NextCloud/WebDAV.
For when you manage your own audiobooks and just want a clean, non-invasive way to listen across devices.
Usage scenario
You have a collection of audiobooks stored on a NextCloud/WebDAV server.
You want to:
- Listen on multiple devices (phone/tablet/desktop)
- See how much of a book you've listened to
You don't want to:
- Lose your place
- Install complex server apps
Features
Progress map
See which parts of a book you’ve listened to
- Great for dense or non-fiction books where you jump between chapters
- Visualize each chapter as a series of blocks showing played/unplayed segments
Detailed bookmarks
Take notes while listening and jump back to any point easily
- View all bookmarks in one place
- Content of notes is searchable
Themes
Match your own vibe
- Light/dark modes
- Multiple colour schemes
- Slider to adjust book cover styles, from fully decorative all the way down to a simple text list of titles
Rich metadata display
Know what you're listening to
- auDAV works to extract details from text/info files, chapter streams, and embedded metadata
Unix-style philosophy goals
Tread lightly Stay in your lane
- Doesn't manage users or move files around --- NextCloud/WebDAV is the tool for those things
- auDAV never writes anything outside its own lightweight working folder:
{YOUR_AUDIOBOOKS_FOLDER}/.audav_audiobook_listener/
To delete the app from the server just delete the folder
Requirements
- A WebDAV server to which you have login details
- On that server, a folder containing audiobooks (organise subfolders however you like within it)
- A device for listening on (with auDAV installed of course!)
Beta Release
This release is a late Beta --- the app is fully usable, but you may hit some minor quirks.
- Some [file format + book/chapter length] combinations can cause seeks to take a long time
- To keep things lean some types of info are only loaded when a book is opened
Install and setup
1. Install and open auDAV
Install on the device you want to listen from: phone, tablet or desktop
2. Enter your WebDAV settings
Either tap the link on the first page or tap the button in the top-right corner twice to change settings:
Watch out for typos! Some providers might throttle your connection for a few hours if you repeatedly try to log in with bad credentials
- Server URL: In NextCloud you'll find this under Files Settings - WebDAV - WebDAV URL
- WebDAV Username + Password: These are encrypted and stored locally on your device
- Audiobooks folder: Relative path on the server to the folder which has all your books in it, eg mine is simply
000-AUDIOBOOKS
3. Scan your server
Go back to the main page and the app will start scanning your server for books. This may take a while, it depends on how many books you have and how fast your internet connection and server are.
4. Start listening
After the scan, you will see a list of your books --- tap one to open it and start playing.
Tips/FAQ
Isn't WebDAV a bad choice for this?
WebDAV is absolutely not the right tool for this job (streaming and jumping around inside large audio files of all kinds of formats).
Nevertheless, I have NextCloud and a load of audiobooks, so here we are.
Tap twice for settings
The icon in the top-right is dual purpose. First tap opens the quick chooser panel. Second tap opens the settings page.
Sometimes seeking is very slow!
With a large book or chapter, when doing a long seek (eg you are currently at 00m 21s and you seek to 4h 10m 12s) you will sometimes experience a very long wait while the internal player gets enough data from the server. This can even take more than a minute in some cases. During this time the user interface will inidcate that seeking is happening, but there might not be any updates eg the buffering bar might not be changing.
In these cases, please try to be patient as the seek will work. If anything has truly gone wrong you'll get an error message or some other feedback. So if it just seems to be taking ages, try to trust it, it will happen.
This is out of my control, inherent to the combination of certain audiobook formats and WebDAV servers. It shouldn't happen too often --- in my sampling of well over 100 books in all kinds of different formats it only happened in a handful of situations, where chapters (or entire books in a single file/chapter) were many hours long (and therefore file sizes were several hundred MBs).
As a user, were this to happen with a book which I wanted to do lots of seeking and jumping around in, I'd consider trying to compress the book into a smaller file size.
Re-Scan when you add or move books
If you add new books to your server or rearrange them into different folders, open the app and press the 'Re-scan library' button.
Chapter segments
As you listen to part of a chapter or book, the app will periodically save your progress. Any unplayed segments of the book will be displayed as a button. Tapping those buttons will skip to the relevant segment.
In this way you can see an overview of how much of a book you've listened to. Open any book and the played/unplayed segments will be displayed, both in the playlist, and seperately as a book overview underneath the book cover image.
Book Map – overview of listening progress across all chapters
One-line explanation:
A visual map showing which parts of each chapter you’ve listened to, even if you jump around.
Linux desktop setup
If you're using the Linux version of the app you might need to install some dependencies. Full desktop distros will have some/all of this already but if you drive minimal you might need them.
Dependencies
media_kit dependencies On Debian 12 Bookworm VM I needed to install some MPV-related stuff (this allows all the audio-related functionality):
sudo apt install libmpv-dev mpv
For flutter_secure_storage (which stores the WebDAV/NextCloud login details securely) on Linux I also needed gnome-keyring.
sudo apt install gnome-keyring
If you want to build auDAV yourself or explore the code, see BUILDING.md.