Skip to content

Audiobookshelf support (chapters, resume position, self-hosted alternative to paid apps) #484

Description

@jpdexter101-lang

I use audiobooks a lot and right now the only good option for listening from a self-hosted server is Bookcamp, and it only talks to Plex, and it's a paid subscription (~$1-2/month) for things like cross-device resume position and offline downloads. I'd love to see that same experience built into Linthra instead, backed by Audiobookshelf specifically, free and fully self-hosted end to end.

I don't want this to land as one giant PR. Same as the Linux port, I'd rather it come in as a few small, reviewable pieces.

What I want

  • Audiobookshelf as a real provider (connection, auth, library browsing)
  • Chapters as a first-class concept, not just long tracks, with a player that works just as well when a file has none
  • Multi-file books play straight through automatically, no tapping "next" between files
  • Real resume position that syncs across devices
  • Adjustable playback speed that also follows you across devices, not just a local toggle that resets per phone
  • Bookmarks, separate from resume position, since a listener deliberately marking a spot is a different thing from the app remembering where they stopped
  • Sleep timer, chapter navigation
  • Offline downloads

Suggested PRs

  1. Connection + library browsing — server URL, auth, HTTP client, list the library. No playback yet.
  2. Domain model + chapters + local playback — add chapters to the data model, get a book playing with chapter-aware seeking. Multi-file books load as one continuous queue so playback auto-advances between files with no manual tap, same as the existing queue behavior for music. Resume position local-only for now.
  3. Cross-device sync — resume position and playback speed, both synced as Audiobookshelf's own server-side user settings, not just local state.
  4. Audiobook player UI — speed control, chapter list/jump when available, always backed by a time scrubber and skip buttons so a chapterless file still has a real player, since plenty of real-world files (especially single-file torrent rips) have no embedded chapter metadata at all and Audiobookshelf's own scanner can't build chapters from just one unmarked file.
  5. Bookmarks — Audiobookshelf already has real bookmark endpoints server-side, separate from resume position.
  6. Offline downloads — may be able to lean on existing offline-cache infra, worth checking once in the code.

Important

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions