Show HN: MStream – A personal music streaming server
github.com
github.com
I want to do more work on the server, but I've been busy working on an audio format library in Rust to support the transcoding. Right now, the best option is to either exec() the ffmpeg command line tool, which is easy but has overhead and makes distribution more difficult, or use the libav* C libraries, which are quite complex and in my experience poorly documented. I've decided the best option is to make a cleaner, more minimal audio library that wraps reference encoder/decoder libraries.
How does mStream handle transcoding, if at all?
Here's a video of v0.1 of mStream Express being setup in under a minute: https://www.youtube.com/watch?v=IzuxYTaixpU
However, your statement is an `alternative fact` at best, and I am being generous.
Instead the webapp falls back to using aurora JS for codecs the browser doesn't support. This was mto support flac, but now browsers are starting to add flac support so it's not really that useful anymore
The audio streaming service is a pretty crowded market though. You could ask 10 different people to list their preferred solution and get 10 different answers.
Great alternative to ampache etc, very slick interface.
The hardest part is keeping music and especially playlists synced between devices, something that can be solved with syncthing or similar software. Playlists are very hard though with offline desktop clients (Musicbee)
It will take a while to scan the whole thing for metadata, but mStream handles scanning on a separate thread so you can stream it while that's being done.
I've listened to nearly all of it.
At 176K per second of uncompressed (CD-quality, anyhow) music, 1.4TB comes to just over 100 days. Several times that figure, with compression. That's a lot of music. More unique audio data than total amount that I've listened to on repeat for...probably about the last 5 years added together.
That's not saying that there aren't larger ones, that the collector would consider themselves unusual, that any value judgement should be implied, etc. Just that more than a couple months worth of unique audio data seems like "a lot" to me.
This looks a bit snazzier, though. I may have to give it a try.
I have an OSX install that syncs to my iPhone, and I have a Linux laptop and want the collection on all 3 devices.
it's like bidirectional rsync.
If you don't have access to your router, you can try mStream's auto port forwarding feature. It will use uPNP to try to automatically configure port forwarding
Also, any plans to write plugins for Spotify or Google Play back end?
And yes, it can run on a Raspberry Pi.
Is this used to control/queue music on a media server or will it play out of my phone?
The server hosts your files and has JSON based API to search through music. The server comes with SQLite built in and a webapp to stream on any device with a browser