3 ms·
I think the secret sauce of network based audio server is streaming and whatever bag of tricks to smooth out perceived latency and fault tolerance. This can als
by alephnan 4y ago
I think the secret sauce of network based audio server is streaming and whatever bag of tricks to smooth out perceived latency and fault tolerance. This can also mean pairing it with a nice client.
I mean, you can just serve mp3 files over HTTP. The browser can download the whole file, and load it until whatever mp3 playing library there is.
This is exactly what I did for my first personal project that landed me an internship at FANG. My music player had a pretty nice UI at the time ( Yahoo music days ), but music players from professionals like Yahoo or Spotify ( web player released one year later ) is that they are resilient to network failure, rather than assuming the mp3 file downloaded it one go, that it would be fast, and you can just point your JavaScript library at it, now that it's cached by the browser and can be loaded into memory.
- izderadicka 4y ago"bag of tricks to smooth out perceived latency and fault tolerance." Agree - audioserve is now handling this with quite simple trick - just cache ahead couple of tracks/files from current folder (aka audiobook), so responsibility is move to client. Surprisingly this simple trick did work for me for years (as I'm intensive user of audioserve). It kind of depends on file/chapter duration - but for most common cases - which are beetween 5 mins to say 90 mins it did work fine. Historically only Android client was using this caching, but with new web client https://github.com/izderadicka/audioserve-web https://github.com/izderadicka/audioserve-web and broad Service Worker support in browsers it is also available in browser.
- logifail 4y ago> I mean, you can just serve mp3 files over HTTP. The browser can download the whole file, and load it until whatever mp3 playing library there is If you have the right container/encoding format (my experience is that it works well with mkv) you can even start watching a video file locally with VLC while wget is still downloading it via HTTP... works amazingly well.
- rakoo 4y agoYou don't even need to wait for the download to finish, the browser can stream it directly