Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[feature] : max cache size setting + music visible by oher app setting #138

Open
CypLef opened this issue Jul 16, 2024 · 1 comment
Open
Labels
wontfix This will not be worked on

Comments

@CypLef
Copy link

CypLef commented Jul 16, 2024

Hi,

It would be nice to have a max cache size setting (like in the old PA app?).
User can choose a max size, and if the cache become bigger than the max size, it automatically delete the first songs downloaded in the cache (avoiding if possible, to delete the songs "manually downloaded", prefering to delete the songs "downloaded by playing").

Another greate feature would be to have a "Make library visible by other app" setting.
-> downloaded song would be visible by other app (the default music app ...).

@icefields
Copy link
Owner

hello, thanks for reaching out about new features.
Let me explain what's the issue with them, and why at least one of them is not feasible:

Power Ampache 2 does not have a song cache like the original Power Ampache had, smooth song transaction and pre-loading are handled directly by the music player in this new iteration of the app, so there is no need to have that option. The only cache that Power Ampache 2 has is for images, which typically remains modest in size. The other persistent data consists in an internal database that keeps the metadata for albums/songs/playlists/downloaded-songs, used for offline mode and for increasing the app's data loading speed. This internal database also doesn't take up much space, even with my database containing approximately 15,000 songs, the storage footprint remains minimal, around 5MB.

Downloaded songs are not accessible to other apps and kept internally on purpose. Trusting the user handling downloaded songs would cause inconsistencies and bugs in case they edit, move or delete downloaded music.
The workaround would be to do a consistency check and a resync of the entire offline metadata-database at every app-start, which would be slow and resource-intensive. Basically I'd have to check every downloaded song at every app start, against the online database to synchronize song-plays, likes, stars, playlists the songs belongs to, and more. With the old Power Ampache I didn't care about any song stat or about synchronizing the songs with the server, so this wasn't needed.
You can export dowloaded song from the song contextual menu, as shown in the attached image.

This said, I will add a feature in the future to enable access to downloaded songs but will come with a warning for performance degradation, and at the moment it's a low-priority feature, since I'm currently working on multi-user features, widget and android auto.

image

@icefields icefields added the wontfix This will not be worked on label Aug 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants