• 0 Posts
  • 3 Comments
Joined 3 years ago
cake
Cake day: July 29th, 2023

help-circle
  • My workplace originally had regular UPSes, just like the one you showed, one of the many that would only intervene when the power gets cut.

    It introduces a temporary power loss, in terms of some milliseconds usually, expecting the devices downstream to be able to handle them.

    I had a similar issue on my workplace’s server after a bad storm, then did some research about how to avoid issues when a UPS is present.

    Turns out that there is a whole another category of UPSes, namely Double Conversion UPSes, where the UPS is constantly charging a battery and the battery is constantly powering the load.

    Almost no outside factors can interfere with the load this way, and I’m certain it saved my ass both in the workplace and at home: just a few days ago we had some huge storms, hail, thunder, strong winds and such.

    Power would constantly go out and quicky come back up.

    The initial UPS failed for much less.

    Both my workplace’s server and my home server never felt any of it, cause they’re never directly connected to the power line (unless the UPS is in maintenance mode), and the peace of mind of knowing that they never feel any of that is priceless.

    It’s a good thing that I cannot count how many times they saved me lots of time, mostly because since their introduction I never had a power loss which I previously had with a regular UPS.

    The disadvantage? Much more expensive, since wattage matters more than ever as they have an inverter running 24/7.

    For my workplace I got one that costed about 900 euros, for me I got one that was about 400.


  • Preface: This is what I learnt about Subsonic and such. The informations below may not be fully correct but the core idea is there.

    An API is not a piece of software.

    It is merely a way to define how to make a software “do” an action, like search for a song title or download the song file for streaming/playback.

    Navidrome does not make use of anything from Subsonic, it merely implements (exposes) a Subsonic-compatible API.

    Knowing this information, anyone can run a web request to Navidrome and search for a song, and download/stream it, like they would already do for any other Subsonic-compatible provider:

    You can find a plethora of software that can leverage any Subsonic-compatible API provider to connect to that music library, from dedicated Web UIs to Android and iOS apps, which know how to download and stream songs and play them back.

    This mechanism gives the user the freedom to choose the backend and frontend, and the developers can just implement the part they prefer: for example, the Navidrome team does not have to build an Android or iOS App, whereas App developers don’t need to write a serverside application to manage the “real” music archive, decode tags, or even implement a search algorithm, as all this data can be asked via the API.

    Technically, Navidrome wouldn’t even need a Web UI.

    Over the years, the Subsonic API has been forked into OpenSubsonic API, which as far as I could tell, merely serves as a way to better define, and to further add new features into, an otherwise closed and possibly reverse-engineered API.