audiobookshelf icon indicating copy to clipboard operation
audiobookshelf copied to clipboard

[Enhancement]: RSS feeds for audiobooks

Open samdoshi opened this issue 2 years ago • 9 comments

Describe the feature/enhancement

Similar to issue #553, would it be possible to serve an audio book as an RSS feed so that it could be integrated with an existing podcasting app?

And if that is possible, could it also be extended to collections?

samdoshi avatar May 19 '22 11:05 samdoshi

Yeah we can do this. It would need to show as a list of audio tracks. I'm not sure how it would work for collections if you have multiple audiobooks with many audio tracks.

advplyr avatar May 19 '22 12:05 advplyr

Books should be relatively easy. You don't have to include <pubDate>, though I'm not sure which order files should be listed in. It would mean that I could use Overcast on my Apple Watch to listen to my library books when out on a run, I imagine there are other devices that are unlikely to get a dedicated app, but will have the option of a podcast player.

Collections are maybe too complicated though. One use would be to have a 'listening queue' collection. But as collections can be re-ordered that might cause a lot of problems with podcast clients.

Thanks for the fast response.

samdoshi avatar May 19 '22 13:05 samdoshi

What I mean is the audiobooks will show as each audio file is an episode. So imagine I have 2 audiobooks in a collection, each audiobook is 25 audio files. The RSS feed for that collection would be shown as 50 episodes. If your audiobook collection is all single audio files then this would look great since each episode would be the full audiobook, but if you have multi-track audiobooks then this might look chaotic.

Is that how you were thinking of the collection RSS feed also?

advplyr avatar May 19 '22 13:05 advplyr

Is that how you were thinking of the collection RSS feed also?

I think so. So if you had "book 1" with 2 files, and "book 2" with 3 files you'd have:

  • Book 1, file 1
  • Book 1, file 2
  • Book 2, file 1
  • Book 2, file 2
  • Book 2, file 3

in your RSS file.

But as I said, I'm not sure how well podcast clients will cope with the list changing.

samdoshi avatar May 19 '22 15:05 samdoshi

Yeah that's right, I'm not sure if that would throw people off or what they would expect.

What do you mean with the list changing? Podcast clients just make periodic requests to your RSS feeds and display whatever is in the feed. If you change the order or add/remove audio tracks then the next time the podcast client makes the request it will show those changes.

advplyr avatar May 19 '22 15:05 advplyr

Thanks for adding the feature, I've tested it in Apple Podcasts.

If you change the order or add/remove audio tracks then the next time the podcast client makes the request it will show those changes.

I'm just wondering what happens if say, you have 3 books in a collection and only download the first 2 files of book 1, but then re-order the list to place book 1 at the end (or remove it and re-add it). Would the podcast client respect the new order, or would it leave the 2 downloaded files at the top of the list.

samdoshi avatar May 20 '22 18:05 samdoshi

That's a good question. You can test that behavior now by creating an RSS feed for an audiobook, then changing the order of your audio tracks. I would be curious to know what the results are for that, and how long it takes before they refresh the RSS feed.

advplyr avatar May 20 '22 19:05 advplyr

While a per-book RSS feed is understandable, I think a master RSS feed would be awesome.

I am new to AudioBookshelf, but I set it up today trying to find a more convenient solution to what i have been doing for years: Adding my audiobooks to a self-hosted podcast feed (using Podcast Generator) so that I can listen in a regular podcast app. It is very convenient for many reasons.

Podcast apps like Overcast (my preferred player) displays chapters, which makes it a very capable audiobook player, allowing me to mix books into my regular podcast queue, and also take advantage of "smart speed" enhancements that skips silence in the audio, speeding things up by another ~30%.

So, I would like a master RSS feed that I could subscribe to once in a podcast app, that would be updated with each new book as they are added.

Audible files are usually a single file, so it works great, but for books that come in multiple files I need to combine multiple files into a single file, which I do, because it is worth it to have one book = one episode. Multiple files/episodes for a single book isn't as clean, but it would work, and if someone is interested in cleaning up a particular book, and wants 1 book = 1 episode, they can always just combine their files manually. (Audiobookbinder is one simple option, but I think i saw a dev feature that does something like that too.)

Anyway, a master RSS feed for all books would be awesome.

pbassham avatar May 23 '22 21:05 pbassham

Maybe the experimental M4BMerge feature could get involved in this in a way that resolves the issue with collection based rss feeds?

cassieesposito avatar Jun 23 '22 03:06 cassieesposito

While a per-book RSS feed is understandable, I think a master RSS feed would be awesome.

I am new to AudioBookshelf, but I set it up today trying to find a more convenient solution to what i have been doing for years: Adding my audiobooks to a self-hosted podcast feed (using Podcast Generator) so that I can listen in a regular podcast app. It is very convenient for many reasons.

Podcast apps like Overcast (my preferred player) displays chapters, which makes it a very capable audiobook player, allowing me to mix books into my regular podcast queue, and also take advantage of "smart speed" enhancements that skips silence in the audio, speeding things up by another ~30%.

So, I would like a master RSS feed that I could subscribe to once in a podcast app, that would be updated with each new book as they are added.

Audible files are usually a single file, so it works great, but for books that come in multiple files I need to combine multiple files into a single file, which I do, because it is worth it to have one book = one episode. Multiple files/episodes for a single book isn't as clean, but it would work, and if someone is interested in cleaning up a particular book, and wants 1 book = 1 episode, they can always just combine their files manually. (Audiobookbinder is one simple option, but I think i saw a dev feature that does something like that too.)

Anyway, a master RSS feed for all books would be awesome.

Have you been able to get the individual book feeds to work with Overcast? I keep getting a timed out error.

wraith1385 avatar Nov 28 '22 01:11 wraith1385

Have you been able to get the individual book feeds to work with Overcast? I keep getting a timed out error.

AFAIK Overcast caches RSS updates via their own servers, so I think you need your RSS feed to be on the public internet. I ended up using iCatcher for audiobooks on my iPhone/Apple Watch.

samdoshi avatar Dec 09 '22 11:12 samdoshi

Have you been able to get the individual book feeds to work with Overcast? I keep getting a timed out error.

AFAIK Overcast caches RSS updates via their own servers, so I think you need your RSS feed to be on the public internet. I ended up using iCatcher for audiobooks on my iPhone/Apple Watch.

Thanks, I ended up joining their discord and someone told me that. So I put a reverse proxy in front of my deployment and only turn on the port forwarding for the few minutes it takes me to add the feed to overcast and download the file to my phone.

wraith1385 avatar Dec 09 '22 18:12 wraith1385

I am looking forward to this feature.

semihselcuk avatar Dec 17 '22 00:12 semihselcuk

Opening RSS feed for collections added in v2.2.12

This closes the original issue. Anything else for this can be put in a new issue.

advplyr avatar Jan 08 '23 17:01 advplyr

So I put a reverse proxy in front of my deployment and only turn on the port forwarding for the few minutes it takes me to add the feed to overcast and download the file to my phone.

I might be interested in consuming audiobooks via Overcast, @wraith1385, do you mind sharing what port needed to be opened/forwarded?

Piste avatar Jan 28 '23 21:01 Piste

So I put a reverse proxy in front of my deployment and only turn on the port forwarding for the few minutes it takes me to add the feed to overcast and download the file to my phone.

I might be interested in consuming audiobooks via Overcast, @wraith1385, do you mind sharing what port needed to be opened/forwarded?

It'll honestly depend on your setup. My Nginx covers 13378 and forces SSL, so then in my port forwarding, I use a custom port on the outside and just forward it to 443 on my nginx / audiobookshelf box.

wraith1385 avatar Jan 28 '23 23:01 wraith1385

Thanks for responding <3 My issue was actually with omitting to "open" the RSS feed in the GUI. The reverse proxy config was done properly.

Piste avatar Feb 01 '23 18:02 Piste