I did this by making my own cloud. Simply run a mod server that uses icecast as its audio backend. Then just like that you can listen to streaming audio from anywhere.
I did the same like 2 years ago, but I am using Plex on my NAS.
That gives me both, flexibility and owning my music.
Only downside is that I don’t want to open ports to the outside, so I use WireGuard on my router.
I have a 512gb s22 ultra wifi only that was a handle down, the carrier radio was fried and they just sent a replacement... It's an amazing offline mp3 player loaded up with my 45k song Library. Using auxio from f-droid which handles it fine. Couldn't be happier.
Also have the full library loaded onto my nextcloud (selfhosted, behind wireguard) and my laptop. I try to avoid the streaming side of things because camping and road trips happen.
obligatory plug for Navidrome [0], a "personal spotify server" which is simple to set up and allows playback + offline caching on any desktop/mobile device. it's a really polished piece of self-hosted software.
although there is something refreshing about the simplicity and resiliency of OP's setup.
This is definitely admirable, for lack of a better word. It's frustrating how having been in the "streaming world" for a decade now, it put a stop to me getting music that I can own DRM-free which puts a pretty big wall in front of this optin for me.
It's kind of like we've been incurring debt all that time, and the "payments" are all deferred as long as you keep the subscription. But if I drop the subscription, suddenly I don't own any music newer than 2015, despite having paid $1200 -- it was just to rent music from Apple all that time.
Which kinda would be fine since I can afford it and it allowed me to get more music than I probably would have bought with a $1200 iTunes gift card.
But as you pointed out, Apple Music (and in my humble opinion Spotify and YouTube Music) both have modern-day UIs that are a horror show, only getting worse with each passing release. But the only choice is to keep subscribing to one, or rebuild your library at great money or time expense. :(
In my teens I started collecting CDs instead of tapes even though I didn't have a CD player, because I record them to tape on someone's player. So when I got my first PC and shitty little modem, I had a nice little stack of CDs to rip, as soon as that because feasible. (Actually, I remember ripping Rage Against The Machine's "Bullet in the head" to .wav in 1994, I think, and then deleting it because it took up most of the hard drive space). I've used audiograbber, EAC, Nero and a whole bunch of encoders. I must go back and find my earliest surviving rip and see what I used to encode it.
Anyway, none of what the author is doing is novelty to me, I stuck to my guns this past 30 years. I buy on Bandcamp or 7digital, or I rip charity store CDs. Occasionally, for really hard to find stuff, I download from YouTube or get a torrent, but only if I can't find it legally.
I've been running Musicbee on Linux/wine for a decade (I think). My last two DAPs were tiny, light-weight Hiby models.
I have had happily never actually paid for any music streaming service.
Is there a workflow of fetching individual songs and getting recommended songs? I'm now firmly in Spotify, I used to have whole albums and "scrobbled" my playlist to Last.fm.
Spotify, et. al., are wonderful for discovery but the chances your esoteric finds will stick around are precarious.
Their entire economic model relies upon providing the least amount of money possible to the rights holders. This seems to often mean removing access to "expensive" content in customer libraries.
I don't think it's a simple coincidence that some of the best tracks wind up getting removed arbitrarily. It's almost like I can trigger this to occur by listening to anything "not mainstream" too many times.
Interesting that they prefer syncing. I went the other way and stream everything, but locally. Music acquisition is 95% bandcamp (5% is Amazon or Qobuz or physical CDs I rip), the FLACs gets transferred to the N100 server in my living room, where it gets picked up by Navidrome[0]. Navidrome then streams it to the kitchen (via Music Assistant to a pi3 with USB-connected speaker), to my phone (via Symfonium), and to my browser (via the web app). The server has tailscale for remote access as well.
[0] Until recently I used Jellyfin, but the performance of Navidrome is far superior.
Same setup, minus the Pi. That includes originally starting out with jellyfin!
When on Jellyfin, I used to manually transcode the entire library to ogg and use syncthing to replicate it to my devices. Symfonium's ability to cache transcoded files is quite handy (although the initial backfill of ~20K songs took a few tries)
I have an offline music library that I use with Apple music app. It's the only way I can have Siri play playlists by name when using CarPlay; despite this functionality being broken for me since iOS 17 (have a longstanding bug report with escalation with engineers that have been saying they'd fix the bug for about 2 years now). Synchronisation is awful because it can't reconcile multiple copies of the library on different devices, so you're essentially tethered to one mac (or windows) for synchronisation.
Discogs is amazing. Virtually every second hand record store on the planet is on there, so you can search up virtually any CD that exists, buy it, and have it mailed to you in a few days. I buy so much stuff there.
I often wish there was a Discogs equivalent for DVDs, but there doesn't seem to be.
Interesting article, especially the Fiio, I did not know that.
So here is my 2 cents:
I self-host navidrome[1] for music and audiobookshelf[2] for audio books and podcasts as well as syncthing[3] for documents (e.g. ebooks).
For streaming music the navidrome browser web client is already pretty good, but for my portable devices I use Substreamer[4] (free but non open source) and DSub[5] (FOSS). These Apps can switch playlists into Offline Mode and sync automatically. This is especially useful with the smart playlist feature[6] of navidrome.
To add music, I rip bargain Audio CDs with EAC[7] to FLAC and then use beets[8] with a cronjob that runs every 30mins to automate the process of importing the files and converting them to MP3 V0[9] to make it compatible with all of my devices (e.g. Car USB Stick). Then I archive the FLACs to keep space requirements low.
For audio books I use the Audiobookshelf App to download the files and then use Voice[10] as a companion app to listen. This is because the Audiobookshelf app is not a native app and Voice just integrates better. I'm currently in the process of adding some of my missing features like Support for Media-Button Tap-Codes[12] and better file scanning[13]. For iOS I'd probably use Prologue[11].
For Syncthing there is a Fork on FDroid that is still maintained and for iOS there also is something...
For standalone music players you could try the following:
- Hifi Walker G7 mini (cheap)
- Hiby M300
- Shanling M0
- Fiio M11 Plus
- Sony NW-A306
Hope this helps anyone who is trying to own their music :-)
I'm considering this idea currently because ATM all the Pink Floyd albums on streaming platforms have names describing the image instead of the original artwork (I assume for the WYWH anniversary.) What it reminded me was that we don't own anything they host so I look forward to exploring this as well.
`yt-dlp -x --audio-format mp3 "URL"` does the trick for me, then I just load it on to my phone's mp3 player. These days, I also use a python script to quickly add the artist and name id3 tags, but I always just rename the file to "artist - songname.mp3" too
yt-dlp has a `--add-metadata` flag, it puts the channel name in the artist field, video name in the name field and gets the thumbnail as well, I think. Could be useful!
That echo mini looks fun, but what I'd really like is a small touch-screen linux device that can both play my bandcamp local files and run Spotify, but that I can lock down to no other apps (no distractions!).
Should I just build one out of a raspberry-pi + screen, or are there better options?
Depends what you consider "better". There seems to be small Chinese devices that can be delivered with either Android or Linux. E.g. search for Pipo X8R (can't say it looks very good, though). They also seem to sell Windows mini PC's - maybe some of them will run Linux without too much trouble.
There are also a number of providers of displays marketed for RPi, some with mounts to attach it at the back. E.g. see EYOYO on AliExpress or elsewhere. Here's one[1].
This certainly makes the "build one" option quite trivial, since for most it's just a matter of screwing the RPi in and attaching a couple of cables. I'm planning something similar when I get time, and suspect I'll end up with one of those monitors.
Friends: what suggestions do you have for offline voice-controlled music playing?
The music is on the disk, how can we get away from having to use Alexa or similar for listening music that is on our libraries using voice control? Thanks in advance.
35 comments
[ 2.9 ms ] story [ 54.9 ms ] threadalthough there is something refreshing about the simplicity and resiliency of OP's setup.
[0] https://www.navidrome.org/
It's kind of like we've been incurring debt all that time, and the "payments" are all deferred as long as you keep the subscription. But if I drop the subscription, suddenly I don't own any music newer than 2015, despite having paid $1200 -- it was just to rent music from Apple all that time.
Which kinda would be fine since I can afford it and it allowed me to get more music than I probably would have bought with a $1200 iTunes gift card.
But as you pointed out, Apple Music (and in my humble opinion Spotify and YouTube Music) both have modern-day UIs that are a horror show, only getting worse with each passing release. But the only choice is to keep subscribing to one, or rebuild your library at great money or time expense. :(
Anyway, none of what the author is doing is novelty to me, I stuck to my guns this past 30 years. I buy on Bandcamp or 7digital, or I rip charity store CDs. Occasionally, for really hard to find stuff, I download from YouTube or get a torrent, but only if I can't find it legally.
I've been running Musicbee on Linux/wine for a decade (I think). My last two DAPs were tiny, light-weight Hiby models.
I have had happily never actually paid for any music streaming service.
Their entire economic model relies upon providing the least amount of money possible to the rights holders. This seems to often mean removing access to "expensive" content in customer libraries.
I don't think it's a simple coincidence that some of the best tracks wind up getting removed arbitrarily. It's almost like I can trigger this to occur by listening to anything "not mainstream" too many times.
[0] Until recently I used Jellyfin, but the performance of Navidrome is far superior.
When on Jellyfin, I used to manually transcode the entire library to ogg and use syncthing to replicate it to my devices. Symfonium's ability to cache transcoded files is quite handy (although the initial backfill of ~20K songs took a few tries)
I often wish there was a Discogs equivalent for DVDs, but there doesn't seem to be.
So here is my 2 cents:
I self-host navidrome[1] for music and audiobookshelf[2] for audio books and podcasts as well as syncthing[3] for documents (e.g. ebooks).
For streaming music the navidrome browser web client is already pretty good, but for my portable devices I use Substreamer[4] (free but non open source) and DSub[5] (FOSS). These Apps can switch playlists into Offline Mode and sync automatically. This is especially useful with the smart playlist feature[6] of navidrome.
To add music, I rip bargain Audio CDs with EAC[7] to FLAC and then use beets[8] with a cronjob that runs every 30mins to automate the process of importing the files and converting them to MP3 V0[9] to make it compatible with all of my devices (e.g. Car USB Stick). Then I archive the FLACs to keep space requirements low.
For audio books I use the Audiobookshelf App to download the files and then use Voice[10] as a companion app to listen. This is because the Audiobookshelf app is not a native app and Voice just integrates better. I'm currently in the process of adding some of my missing features like Support for Media-Button Tap-Codes[12] and better file scanning[13]. For iOS I'd probably use Prologue[11].
For Syncthing there is a Fork on FDroid that is still maintained and for iOS there also is something...
For standalone music players you could try the following:
Hope this helps anyone who is trying to own their music :-)1: https://www.navidrome.org/
2: https://www.audiobookshelf.org/
3: https://syncthing.net/
4: https://substreamerapp.com/
5: https://f-droid.org/packages/github.daneren2005.dsub/
6: https://www.navidrome.org/docs/usage/smartplaylists/
7: https://pilabor.com/blog/2022/10/audio-cd-ripping-hardware/
8: https://beets.io/
9: https://boomspeaker.com/mp3-v0-vs-mp3-320/
10: https://github.com/PaulWoitaschek/Voice
11: https://prologue.audio/
12: https://github.com/PaulWoitaschek/Voice/pull/2960
13: https://github.com/PaulWoitaschek/Voice/issues/3044
Should I just build one out of a raspberry-pi + screen, or are there better options?
There are also a number of providers of displays marketed for RPi, some with mounts to attach it at the back. E.g. see EYOYO on AliExpress or elsewhere. Here's one[1].
This certainly makes the "build one" option quite trivial, since for most it's just a matter of screwing the RPi in and attaching a couple of cables. I'm planning something similar when I get time, and suspect I'll end up with one of those monitors.
[1] https://www.aliexpress.com/item/1005009871559093.html
https://xenodium.com/ready-player-mode
https://xenodium.com/a-tour-of-ready-player-mode
FLACs are forever. Rip to FLAC and follow 3-2-1 backup rule.
The music is on the disk, how can we get away from having to use Alexa or similar for listening music that is on our libraries using voice control? Thanks in advance.