[Usability] Easy way to play current audiobook #389

Closed
opened 2026-04-24 23:19:32 +02:00 by adam · 3 comments
Owner

Originally created by @lkiesow on GitHub (Jan 5, 2023).

If you open the app to start listening to the audiobook you are currently listening to, you first need to click on the audiobook, then scroll to the play/stream button to start playback.

It would be much nicer if the Audiobookshelf app would remember the current audiobook and would automatically load the player for that book in the minimized form at the bottom of the screen.

The currently active audiobook should be that last audiobook being listened if the book's progress is less than 100%. I don't think it would be helpful to load the player for a book if the progress is already 100% and I don't think it is helpful to load the player for older books, even if they aren't finished. I would just consider the last book the user listened to.

This would effectively mean that I can launch the app and simply hit play to continue.

Originally created by @lkiesow on GitHub (Jan 5, 2023). If you open the app to start listening to the audiobook you are currently listening to, you first need to click on the audiobook, then scroll to the play/stream button to start playback. It would be much nicer if the Audiobookshelf app would remember the current audiobook and would automatically load the player for that book in the minimized form at the bottom of the screen. The currently active audiobook should be that last audiobook being listened __if__ the book's progress is less than 100%. I don't think it would be helpful to load the player for a book if the progress is already 100% and I don't think it is helpful to load the player for older books, even if they aren't finished. I would just consider the last book the user listened to. This would effectively mean that I can launch the app and simply hit play to continue.
adam added the enhancement label 2026-04-24 23:19:32 +02:00
adam closed this issue 2026-04-24 23:19:32 +02:00
Author
Owner

@advplyr commented on GitHub (Jan 6, 2023):

This is how it used to function and that data was returned from the server when you initialized the socket.

So if you were listening on your desktop in the browser then switched to mobile it would automatically open that audiobook.

This got dropped because we need to refactor how playback sessions are stored on the server. It got deprioritized and rather then update it it was easier to remove it.

We can either implement this so that it would open up whatever you were listening to on any other device like it was before.
Or we can just store this information locally on the device and have it device independent, which I think is the better option.

@advplyr commented on GitHub (Jan 6, 2023): This is how it used to function and that data was returned from the server when you initialized the socket. So if you were listening on your desktop in the browser then switched to mobile it would automatically open that audiobook. This got dropped because we need to refactor how playback sessions are stored on the server. It got deprioritized and rather then update it it was easier to remove it. We can either implement this so that it would open up whatever you were listening to on any other device like it was before. Or we can just store this information locally on the device and have it device independent, which I think is the better option.
Author
Owner

@benonymity commented on GitHub (Jan 11, 2023):

I believe Ron already implemented this on iOS to some degree; on opening the app if there was a playback session open in the app it would be automatically opened in the minimized player. Not sure if that has parity with Android, or if you're talking about automatically opening a book played on another device/from the web UI, maybe that's something worth implementing.

@benonymity commented on GitHub (Jan 11, 2023): I believe Ron already implemented this on iOS to some degree; on opening the app if there was a playback session open in the app it would be automatically opened in the minimized player. Not sure if that has parity with Android, or if you're talking about automatically opening a book played on another device/from the web UI, maybe that's something worth implementing.
Author
Owner

@lkiesow commented on GitHub (Jan 12, 2023):

I would prefer a generic solution.
I was thinking about something like this:

  • User opens app (no player is loaded yet)
  • App loads data from /api/libraries/lib_.../personalized
    • If device is offline, this step will be skipped, and we continue with the next step
  • Get first item from shelf “Continue Listening”
    • Stop here if no such item exists
  • Open player for this item
    • Do not automatically start playback

That should not be hard to implement and as a user, you can always just open the app and hit play to continue whatever you were listening to last

@lkiesow commented on GitHub (Jan 12, 2023): I would prefer a generic solution. I was thinking about something like this: - User opens app (no player is loaded yet) - App loads data from `/api/libraries/lib_.../personalized` - If device is offline, this step will be skipped, and we continue with the next step - Get first item from shelf “Continue Listening” - Stop here if no such item exists - Open player for this item - Do not automatically start playback That should not be hard to implement and as a user, you can always just open the app and hit play to continue whatever you were listening to last
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/audiobookshelf-app#389