audiobookshelf icon indicating copy to clipboard operation
audiobookshelf copied to clipboard

[Enhancement]: Support OPDS to allow eReaders to directly download books

Open adamshand opened this issue 1 year ago • 12 comments

Describe the feature/enhancement

It would be fabulous if Audiobookself supported OPDS.

OPDS is a simple, Atom based API which allows readers to browse and download books. It is supported by many readers including Aldiko, Moon, MapleRead, Marvin, FBReader etc and servers like Calibre Web and Jellyfin.

More information at: https://en.wikipedia.org/wiki/Open_Publication_Distribution_System

There is an extended version called OPDS-PS, which allows syncing of read progress between readers. Sadly, this currently only has very limited support.

https://wiki.kavitareader.com/en/faq/external-readers

adamshand avatar Jul 22 '23 02:07 adamshand

Does OPDS support syncing played status with the host? Every OPDS implementation I ever used with a comic server never synced the read status back with the server and was only stored in the client app.

Budlyte avatar Jul 23 '23 03:07 Budlyte

OPDS-PS supports this.

adamshand avatar Jul 24 '23 01:07 adamshand

Does OPDS support syncing played status with the host? Every OPDS implementation I ever used with a comic server never synced the read status back with the server and was only stored in the client app.

I don't know the specifics on the connection type and whether the sync in happening through OPDS but I am using Komga and Tachiyomi that supports read state and progress on the server side.

Jdiesel87 avatar Aug 03 '23 19:08 Jdiesel87

I would love this feature, currently I have to use another self-hosted app pointing at the same library to use OPDS and it would be very nice to include this feature in this app. The built-in ereader is ok, but there's lots of nicer ereader and comic book readers that can take advantage of OPDS

turnercore avatar Sep 13 '23 15:09 turnercore

Does OPDS support syncing played status with the host? Every OPDS implementation I ever used with a comic server never synced the read status back with the server and was only stored in the client app.

I don't know the specifics on the connection type and whether the sync in happening through OPDS but I am using Komga and Tachiyomi that supports read state and progress on the server side.

Tachyomi<->Komga isn't OPDS, it uses Komga's API I use that combo too, and it's great.

Budlyte avatar Sep 13 '23 21:09 Budlyte

Currently the gap is with the e-reader clients. A couple of them support OPDS-PS (like KoReader), but last I checked they don’t support downloading files, storing local progress, then synchronising later.

ABS’s API is wayy more feature rich than OPDS-PS.

The best solution at this point seems to be finding an ereader that runs Android, like the Boox. That way you can run audiobookshelf-app on e-ink natively. Interested to know if anyone has done this.

This is until either ABS creates an e-reader app, or other e-reader apps implement an Audiobookshelf integration.

Would love to see KoReader implement ABS.

KaiStarkk avatar Nov 11 '23 02:11 KaiStarkk

If OPDS is implemented, I think it would be a good idea to implement OPDS-PS, since progress tracking (which OPDS does not support) is a key feature of Audiobookshelf.

DDriggs00 avatar Feb 07 '24 16:02 DDriggs00

@KaiStarkk I have a Boox and tried ABS with it, and still found it to not be a great experience. I put everything in a folder structure that ABS likes as it is my main thing, and then I run Kavita on top of it which finds the ebooks and runs OPDS. Then I use the OPDS connection on Boox to get the ebooks. It's not as convenient as ABS, but the native ereader experience is so much better it's worth doing it that way, which is why having OPDS/OPDS-PS built in would be nice and something I'd always push for.

That said, if ABS had a nice enough ereader, or there was another app that used the ABS API, that would work too, although obviously not be as extensible. For an ABS ereader to compete with what is out there currently, it would need progress saving/syncing (ideally with the audiobook), notes/comments/highlight support, offline download support (very important), no motion or animations for the e-ink display, and probably some other features that a lot of ereader programs already have.

turnercore avatar Feb 08 '24 00:02 turnercore

As an avid audiobook listener, that is thankful everyday for ABS, I wonder if there aren't already ebook server/managers out there. Is calibre not good? Or Kavita? Komga?

The rest of us had nothing but booksonic for years, and I'd hate for something that has an alternative to detract from ABS's primary goal.

Budlyte avatar Feb 08 '24 01:02 Budlyte

As an avid audiobook listener, that is thankful everyday for ABS, I wonder if there aren't already ebook server/managers out there. Is calibre not good? Or Kavita? Komga?

The rest of us had nothing but booksonic for years, and I'd hate for something that has an alternative to detract from ABS's primary goal.

Ehh, telling people to go elsewhere is bound to raise hackles right, not a great angle.

The good thing is it's open source, so it's already democratic. The maintainer isn't a resource we're competing for, he'll do what he wants to do. If there's enough demand for other features, contributors can provide them.

KaiStarkk avatar Feb 08 '24 03:02 KaiStarkk

@KaiStarkk I have a Boox and tried ABS with it, and still found it to not be a great experience. I put everything in a folder structure that ABS likes as it is my main thing, and then I run Kavita on top of it which finds the ebooks and runs OPDS. Then I use the OPDS connection on Boox to get the ebooks. It's not as convenient as ABS, but the native ereader experience is so much better it's worth doing it that way, which is why having OPDS/OPDS-PS built in would be nice and something I'd always push for.

That said, if ABS had a nice enough ereader, or there was another app that used the ABS API, that would work too, although obviously not be as extensible. For an ABS ereader to compete with what is out there currently, it would need progress saving/syncing (ideally with the audiobook), notes/comments/highlight support, offline download support (very important), no motion or animations for the e-ink display, and probably some other features that a lot of ereader programs already have.

Yeah it's great that Boox supports OPDS natively.

KaiStarkk avatar Feb 08 '24 03:02 KaiStarkk

This feature would be great thing to have especially if you have multiple devices.

kabaga avatar Apr 29 '24 01:04 kabaga