geigi / cozy

🎧 Listen to audio books 📚 on Linux
https://cozy.sh
GNU General Public License v3.0
1.1k stars 85 forks source link

booksonic support #26

Open HeaDBanGer84 opened 6 years ago

HeaDBanGer84 commented 6 years ago

It would be great if you could support booksonic API to play audiobooks and store last position. Would make it much easier to switch between devices.

geigi commented 6 years ago

This looks pretty cool! I'm definitley going to try this out :)

jacostag commented 4 years ago

subsonic api is a very nice standard, you have plenty of services running with this api like booksonic, navidrome, etc The basic features are: bookmarks sync and downloads (speed control is already implemented) I just do not want the issue to die, I do not think I am capable of creating the functionality, but the issue is here if someone one wants to take it

kd2flz commented 3 years ago

Just wanted to add that I think this would be a SUPER awesome feature and make Cozy, (which is already my favorite audiobook player on any platform) even more useful. I can imagine a world where you have Cozy installed on your desktop, as well as on a Linux Phone, and Booksonic on an Android phone, and the three all sync progress/ bookmarks etc.

geigi commented 3 years ago

Thanks for your input :) I have thought about this as well but there are still some things that I want to implement first in Cozy because a lot of people requested it.

But I'm interested in both of your opinions: I'm not quite sure if integrating booksonic in Cozy is the right thing to do or if it would make the application more complicated for the user and to maintain. How about a separate application only used for booksonic? Do people who use booksonic have all audiobooks in booksonic? If it was a separate application, would you use Cozy and the seperate booksonic application or would you switch to booksonic and it's clients completely? Would you use the local storage feature of cozy if it would have booksonic support?

kd2flz commented 3 years ago

I understand the need for simplicity from a UI/ developer angle. I like Cozy because it has a much better interface than the native Booksonic web interface. If there were a gtk-based native Booksonic app with similar UI features to Cozy, I would probably use that. If Cozy got booksonic support I would definitely make use of the offline feature as I mostly run container apps like that on my LAN. It's nice to have a way to "bring" the book with me - also when I go offline.

Hopefully this makes sense.


From: Julian Geywitz notifications@github.com Sent: Tuesday, November 24, 2020 10:52:37 AM To: geigi/cozy Cc: David Rhoads; Comment Subject: Re: [geigi/cozy] booksonic support (#26)

Thanks for your input :) I have thought about this as well but there are still some things that I want to implement first in Cozy because a lot of people requested it.

But I'm interested in both of your opinions: I'm not quite sure if integrating booksonic in Cozy is the right thing to do or if it would make the application more complicated for the user and to maintain. How about a separate application only used for booksonic? Do people who use booksonic have all audiobooks in booksonic? If it was a separate application, would you use Cozy and the seperate booksonic application or would you switch to booksonic and it's clients completely? Would you use the local storage feature of cozy if it would have booksonic support?

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/geigi/cozy/issues/26#issuecomment-733063515, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ALGVCJGA2I574M4PODURC53SRPJELANCNFSM4EBCRDCQ.

geigi commented 3 years ago

Thanks your input! This helps me a lot.

I'll think about how an integration into Cozy would work without making things to complicated. There is probably a way without the need of a separate application...

HeaDBanGer84 commented 3 years ago

If it is possible I would recomment to support multiple LibrarySources

By default Cozy uses LocalLibrary and scans your directory If you add another Library it calls the API instead of scanning the File system

Do build this Functionality your Library has to be defined as an Interface/abstract class and define some Method which could be called from other classes. This Implementation would be completely transparent for users because default behaviour would not change, but I guess it would mean a big code change. But In the future you could "easily" add additional Librarysources

geigi commented 3 years ago

This is exactly what I'm doing since a few months step by step as well as migrating to MVVM. Changes like this will be a lot easier in the future when this refactor is complete. Many parts in the latest version of Cozy are already refactored but some parts still need to be transformed.

Library sources are not a interface yet but books and chapters are in most places of the code.

jacostag commented 3 years ago

Hello, I think I have not much to add, but having multiple LibrarySources will be ideal, then if you or anyone wants to add a plex/jelly/booksonic library can be done without affecting the main application. All sources will use the same playback capabilities.

Thanks for the app, I love it

geigi commented 3 years ago

I thought about this a little bit and I think this might be out of scope for Cozy. A separate Booksonic only Client will make Cozy and the new app less complex and both apps will be more maintainable. The UX could also be specifically designed for each use case.