The feature should enable Symfonium to automatically update read/write playlists in both directions.
For example: if I change a Jellyfin playlist on the server, Symfonium should automatically update the corresponding playlist in the app and include all changes.
On the other hand, updates that I make in the app should be pushed as soon as possible.
I personally think that syncing the playlist in the app before opening it, might solve some issues around conflicts.
The main problem is the lose of playlist changes.
I’m constantly adding songs to multiple playlists, on desktop and mobile.
If I forget to sync the app one time, I might run into the issue to either manually merge the playlists before replacing the old one, or more problematic I overwrite changes on the server/on the app.
Besides, manually syncing is not practical, especially if I have to sync 10+ playlists every time I switch to the app.
I guess a “Sync All” option would remove some headache but does not solve the issue of losing data.
It would make the app, for me and I guess others much more convenient to use.
Especially when switching from commercial music streaming providers that also do not require to manually sync playlists across multiple devices.
Other application solutions:
Finamp and the Jellyfin apps have solved this issue.
They both incorporate any changes (seemingly) instantly and all updates are done automatically.
For my use cases this is a good solution and I personally haven’t had troubles with this approach so far.
Additional description and context:
It might be worth considering to let users ‘pull-down’ playlists (e.g., with the thumb) when viewing them to refresh the playlist and fetch the latest version.
Screenshots / Mockup:
If possible please provide screenshots of your idea of the implementation or how other application do this.
Spotify is a special case they have a lot more data than the API of most of the providers I support.
Some don’t even have a last modified, and none have the list of changes so I need to do differential checks to find the actual changes and see if they are compatible with the locally made changes or not. And I can’t know what change was made when.
There’s song position to take in account when removing / adding / sorting.
I also just played around with Finamp and its offline mode.
Finamp in Offline Mode simply disables any changes of the playlist and it seems I cannot remove tracks from the playlist even in Online Mode - there is simply no ‘Remove’ button.
I see that Symfonium is an offline-first app but, as you suggested, a new playlist type that is immutable when offline would be highly appreciated!
Hi, thanks for your work, I have purchased the app. But I think your playlist design logic is very abnormal and strange😨. When I used symfonium for the first time, I was thinking about why the playlist sync logic is so complicated and cumbersome😨.
Now I understand that you are making a different offline-first app, But I think a lot of people’s usage is online-first, as evidenced by the existence of plexamp and finamp.
I hope symfonium has a mode selection, whether it is offline-first or online-first, I don’t know how to develop it, but I guess you could add a switch. The function of this switch is: automatically download content from the cloud when clicking to enter the playlist; automatically upload to the cloud after adding a song to the playlist😃
Well Symfonium is multi provider offline first, so no sorry, it makes perfect sense actually
And that’s actually why a lot of people do prefer this app because of this different approach that covers more needs and is wayyyyy more performant. All that at the expense of requiring a click to sync and choose who is the authority for the data at the moment. (Mostly due to lack of necessary API from the providers)
Even an online first app with multi provider support would not be able to auto sync a playlist that have content from 2 different providers
Now to cover the need of lazy people that want to avoid a click, I need to find a way that still allows all the features currently supported without making the whole concept even more complicated than it is.
Online only first means that the playlist feature will be slower by a large margin, because it will require to get the playlist content on access each time and match the content, and then users will complain that it’s slower now (And slower to add items to playlist, and slower to reorder) And then they will complain because they can’t edit the playlist when they are offline.
People always complains, but I prefer people complaining because they need a click than people complaining because something is slow or does not always work.
But again I know users know best and everything, but for 99% of users the time gained for all the actions vastly (I mean vastly vastly) compensate for the few required clicks. And a large will revert from any option I might add for this mode because it’s not worth it.
And yet you expect me to make it even more complicated
Thank you for your reply, in fact, plexamp and finmap perfectly meet my needs, but their ui and playback experience are very poor, that is to say, your symfonium is currently the only modern and daily-usable music app on Android.(as a private app supporting plex/jellyfin/subsonic)
I realize my needs are different from your app development philosophy, but, as said above, symfonium is the only option, I have no other choice
So can you please add a switch that supports switching to online first mode? I have paid🥺
The reason why I need synchronization logic like plexamp and finamp is: I have multiple devices >>> I can’t remember which device′playlist has changed on >>> So I need to “download from cloud” every time I use playlist to confirm that the playlist is not sync error
The reason for all this is because I have multiple devices and may change the playlist on any one of them, and I use it online like plexamp and finamp.
So symfonium’s current synchronization logic creates more trouble for me.
I understand that you are creating a different offline-first app. But, as I said before, symfonium is currently the only self-hosted music app available that has a good experience. So, I can’t switch to other online-first apps, so I hope you can add this feature, and I glad to hear that you are willing to add this feature to the to do list, thank you.
This is exactly my use-case. I am using jellyfin as my media provider on multiple devices. I also think manually clicking sync is very intuitive but I understand your reasoning. Just a suggestion: Is there any way to provide bi-directional sync for provider that support this in their API. (last modified date etc.)?
For example; if I want to use bi-directional feature in a playlist, I must only add songs from one provider.
I understand that this limitation is actually a design choice which enable the app to be offline-first. I just hope you find a way to remedy this. BTW, thank you for this awesome app. It is by far the best music client for selfhosted Apps.
I am new to this forum. I have recently started using Symfonium and it has quickly become my favourite music consumption app. Well done, keep up the good work.
I would like to add my vote to the “automatic playlist sync” feature request.
I am using Ampache as the sole provider, and stream the music through several clients (e.g. Symfonium, browser on PC1, browser on PC2, Amperfy app on iPad etc), and I often add tracks to different playlists on any client.
In Symfonium, whenever i want to add a track to a playlist, I have to manually sync that specific playlist first to make sure I have the latest version of it in Symfonium. This is cumbersome. It looks like i have to do this for every single playlist. I have tried if re-importing all playlists from Ampache (press “Import”, select my Ampache media provider, then select “Import all”) automatically syncs/re-imports all of them, but found that it did not, new tracks were missing on playlists and only appeared after manually syncing that specific playlist.
A “sync all playlists” button, or preferably a way of automatically keeping playlists in sync would be very much appreciated.
I read your posts above and understand that it is somewhat incompatible with your philosophy of Symfonium. But the feature has my vote, nonetheless.