Looking into the future, if we want a standalone desktop/mobile app with tauri, we might as well implement a library of local music handled entirely by frontend. I think this could be a benefit. Especially on mobile devices.
A local library of course has some implications. Listenings wouldn't be saved to the database, also they wouldn't be scrobbled. They will be always private as they couldn't be federated or even shared between the instance users. And probably many more functionality would be cut out from them.
This can be achieved in Chromium based browsers with File System Access API and on Firefox/unsupported browsers we might show a message that it is (or will) be available in a standalone app.
Chromium based browsers
Here we can use fileHandle.getFile() to get a file Blob on which we might call
.arrayBuffer() to achieve an ArrayBuffer instance which we can then easily change into the Web Audio API source node with entire song preloaded.
Tauri gives us its own file system API with readBinaryFile() method that returns Uint8Array which is a middlestep between conversion from ArrayBuffer to Web Audio API source node, so it will also work like a charm.