Supporting S3 storage as a provider

Feature description:

S3 is very ubiquitous as a storage backend, as both self-hosted versions like Minio and cloud providers such as Backblaze and iDrive are very common. Symfonium should support it as a media provider.

Problem solved:

Right now, I have a few providers configured: a Navidrome instance running on a VPS, another Navidrome instance on my homelab, and a Nextcloud instance (WebDAV) running in a shared hosting environment.

Living in Asia, home internet is very expensive and unreliable, so my homelab sometimes suffers from speed and connection issues. Nextcloud’s WebDAV isn’t much better since it’s a shared environment.

The VPS is doing fine, but the price is higher than I’d like to spend on a music server. Nevertheless, I believe many S3 providers out there will outperform the VPS in terms of speed, since there is no additional software in-between Symfonium and the music.

The supported cloud providers are also not ideal since they require a subscription, and many users wouldn’t trust companies such as Google and Microsoft to not search through their files.

Brought benefits:

Advantages of S3:

  • cheap (for users with small collections at least)
  • fast
  • reliable
  • does not require a separate server

Users would have another option to store their music that may be cheaper, more performant and more convenient, depending on their situation.

Other application solutions:

This is the thing that perplexes me the most. I’m not an app developer by any means but S3 is so popular yet none of the music apps out there currently support it as a backend. It’s also simple enough for me to use as a storage solution that allows me to sync my Obsidian notes between devices. Symfonium can become the first and best music player to have the ability to play files directly from S3 storage.

S3 is not really meant for streaming files it’s more about security and encryption.

Range headers are discouraged and can cause huge performance issues in many cases. And AMZ changes on each read.

So to resume this is really not the best kind of provider to host music efficiently.

Can you explain it more simply? Not that I doubt there are technical limitations, I’m genuinely curious and would like to learn more.

On an unrelated note, I saw in 7.0 changelog thay pCloud is currently unavailable, have you considered IceDrive?

Hard to explain more simply :frowning:

IceDrive support webdav and have no API.

What Tolriq meant is that S3 is not intended for partially loading music files and playing them directly (i.e. streaming). S3 is a storage solution optimised for up- and downloading files fully. Also S3 triggers transactional costs, so if you access files or download something, it costs money. With an app like Symfonium, you might not be able to have as much control over file access as you would want to if every access might cost money.

If you would want to use S3 for storing your music, it would make more sense to have some file exchange tool on your smartphone that supports S3, then sync the music files from S3 to your device, and use the local provider in Symfonium.

2 Likes