I love self hosting useful apps. I wish finding more things was easier. Right now I self host a jellyfin server and home assistant. When I learned a subscription for home security was $75/mo I said “there has to be something out there” and there was. I pay the developer their $6/mo even though everything works without it.
Jellyfin has been amazing for physical media backups. It’s nice to experience old VHSes and DVDs in a user friendly way.
Check out https://selfh.st for finding things! Go to the Apps page. Their weekly newsletter is also good.
And now a podcast too!
nginx-proxy becomes almost a must have if you have multiple services and prefer remembering domain names instead of port numbers https://github.com/nginx-proxy/nginx-proxy
Most people will use nginx-proxy [0] or Traefik [1] for front ending home labs with LetsEncrypt certs... Beyond that people will protect them with things like Tailscale [2], Cloudflare Tunnels [3] or even just mTLS [4] for protected access.
Home labbing today has a lot of amazing software and it's hard to keep up!
And as for dashboarding [5] on top of all this there are a lot of options.
Also, for those new to the game who want an easier way to approach take a look at Tipi [6].
[0] https://nginxproxymanager.com/ [1] https://traefik.io/traefik/ [2] https://tailscale.com [3] https://developers.cloudflare.com/cloudflare-one/connections... [4] https://smallstep.com/blog/build-a-tiny-ca-with-raspberry-pi... [5] https://selfh.st/apps/?tag=Dashboard [6] https://runtipi.io/
Why not just have a main page on a single domain that has links to all the services? That way you only need to remember one domain name.
Of course, a service map comes handy, just another simple way of getting it done. What I meant with the proxy was using e.g. jellyfin.example.com and portainer.example.com instead of the ports. Not to mention that two apps might have the same default port.
For those with a multi-machine setup, like running the easy stuff on a 1L machine and having backupservice at multiple locations or the LLMs on a big setup that might even use WakeOnLan the proxy will keep you from having to remember the IPs as well.
Another reason to have a domain for each is to get TLS for each service in a standard way.
Easier to wire up services to each other with domain names, serviceA.domain.tld is obvious, domain.tld:1234 is not
There is also path based, e.g. domain.tld/serviceA, domain.tld/serviceB
Won't work for many services, either they do some websocket stuff or they make assumptions about the URL or whatever. Subdomains are the way to go.
You could do that as long as you protected that page from prying eyes.
Yeah? That would apply to NGINX Proxy too...
> When I learned a subscription for home security was $75/mo I said “there has to be something out there” and there was.
Can I ask what it was you found?
Frigate is worth looking at as well if you have RTSP cameras as part of your security solution.
Heck you can even cobble stuff together with Home Assistants and various door/window/presence/water/humidity sensors. I was able to build a notification system when doors, windows, or fence gates are open. Same with panic buttons that alert my SO if any of us need assistance when putting kids to bed without whipping out the phones.
All of that can be loaded into HASS using a $26 Sonoff Zigbee dongle and various Zigbee devices like Aqara and others.
I think they're referring to Home Assistant, that's what they found
Have you looked at Konnected? Really great if you already have a system installed but dead like I do.
I have tried every music playing option under the sun for the last 15 years and am now happily back to creating playlists on my computer and periodically syncing them to my phone's local storage. There is still no better experience than that.
Even more niche with headphones that have storage. Why would anyone not handpick music for those headphone with other than a 170bpm?
I tried this (among a bunch of others) about a year ago and landed on Gonic[1] for the server and Supersonic[2] on PC and Amperfy[3] on mobile. Yes it's a few different tools to maintain (plus beets etc), but it's the ideal set of features etc for me.
Self-hosting has been fun and I've started experimenting with local LLMs to build playlists which is helping discoverability.. or more /rediscovering/ artists that I haven't listened to in a while
[1] https://github.com/sentriz/gonic/ [2] https://github.com/dweymouth/supersonic [3] https://github.com/BLeeEZ/amperfy
Why did you chose gonic over navidrome[1]?
My stack [2] is: navidrome (music - subsonic server) substreamer (app) beets (music organization) EAC (audio cd ripping) audiobookshelf (audiobooks)
Most important part of navidrome are smart playlists[3], with these I didn't need AI support just yet...
I didn’t need a web client and Gonic shows the actual directory layout for the folder API. I have a few albums that requires gapless playback and most web players can’t accommodate them. My music library layout is mostly ‘collection/album-key/track-key.ext’ where album-key is something that uniquely identifies the album and make it easy to search for. For my main collection it’s’artist - year - album’ while for others it can be just ‘year - album’. Gonic shows the same layout to clients.
I think the folder structure like browsing is the main reason to ditch navidrome...
While I get the point, this is not an issue for my use case.
What I would love to see though is a "sync playlist to path" button in the web interface where it keeps the original folder structure. With this i could create partial lib dumps for my car usb stick or my family members. Maybe i submit an issue for this.
Another +1 for navidrome. I use along with play:sub on ios, and feishin with desktop , and couldn't be happier.
I also use Lidarr for PVR needs
I have chosen jelly over it because of the way navi stores music. I prefer to organize music in folders myself, and tag them with picard. Jelly then just shows everything nicely with 0 configuration.
https://github.com/epoupon/lms is another (Open)Subsonic compatible server that supports directory browsing commands. But actually few clients use them.
Navidrome can work with your folder layout, too.
I don't remember why I settled on Navidrome instead of the others, but I basically just told it "here's my music, now go play me something" and it all just worked. As far as I'm concerned, it doesn't manage organization at all.
> Navidrome can work with your folder layout, too.
Is that recent? When I was looking to replace libresonic I looked at Navidrome and it couldn't do that, and the developer indicated they didnt have plans to add that feature.
I also settled on Gonic. Mostly for this reason.
Do you mean "browse using your folder layout" as in "show that layout in the UI" as opposed to browsing by artist / album / playlist?
If that's the case, indeed, it doesn't seem to support that.
I thought you were talking about the actual on-disk organization, like iTunes would import and rearrange the files to its standard.
Yes, that!
Thanks for the clarification.
I've used navidrome since the beginning with my own layout, you just mount the folder in the container and it goes and indexes it.
Thats why I choosed Jelly. I do prepare music file a lot, so that is expected, but movies and series I do not and it works great to recognize them 99% of the time.
I did try Navidrome and used it for a while.. I honestly don't remember why I switched but I suspect the reason was probably more related to the client I was using at the same (Submariner on macOS) than the server-side.
+1 for navidrome. I’ve had better luck with the play:Sub app (iOS).
I think it’s important that these servers use a common API (subsonic), but it seems like the slickest apps are always targeted to one specific backend (plexamp, finamp, prism music).
I have both Gonic and MPD on my home server (an old mac mini running debian). It's connected directly via optical to my AVR and MPD can be controlled with the Rigelian app on my iPhone. Gonic is for Amperfy when I want to stream to the Homepod.
On my desk, I used to have a satellite instance of MPD for my desktop setup, but I copied over my library to an external drive and use that as my main instance (rsync to the server when I update it). I rarely play from my laptop (I control the others instead). but could use either the satellite config, a subsonic client, or a quick sshfs mount.
And for offline sessions, I have a DAP with a 512GB card and most of my collection.
I'll have to check out Supersonic for the desktop.
On Android I've been using Symfonium which is fantastic. https://play.google.com/store/apps/details?id=app.symfonik.m...
If you haven't seen it, discogs releases a huge dataset for free that I feel like is ripe for powering a cool music recommendation engine
I haven't! I just did a quick search, is this[1] what you're talking about.. or something else?
[1] https://discogs-data-dumps.s3.us-west-2.amazonaws.com/index....
Musicbrainz for the win.
Is there an Apple Watch app for this tech stack? That’s what my current (totally different) solution is missing.
I currently host icecast/ices. Does your above options allow multiple clients to listen to same stream. I see it mention jukebox mode.
+1 to Amperfy, I use it with the Music app on my Nextcloud. The App Store version is a bit barebones last I checked but the Testflight version feels like a completely different app, it’s just like Apple Music but self-hosted. Kind of like Apollo felt like an app Apple would make.
I'm hyped about Amperfy but it doesn't have gapless playback which is a hard must for me. Last time I checked, anyway. Looks like it's been committed recently though: https://github.com/BLeeEZ/amperfy/issues/96
Also it seems transcoding is mp3 only, whereas play:Sub can use (and seems to default to using) OPUS which is better in every conceivable way.
Edit: Trying gapless with the TestFlight - seems to work, however, it doesn't change the displayed track.
OK, I will ask. I presume you purchased all those music files that you host on that certain server, didn’t you? I will also assume that there is no tool that lets you acquire music MP3s (or some appropriate file type which is non-audiophile listenable) the Linux ISO way (without having to hunt them songs one by one), right? I am talking about someone already having a Spotify/apple music playlists/likes/favourites.
Also, these self hosted music services mean — no new music reco/discover, right? Not necessarily a bad thing. I was curious. Never done this.
How is the cost/spec need of this self hosting like? Does it have to be stand alone or it can live with other things like maybe an archiving/bookmarking service and small self hosted utilities like that (of course not all being used at once).
>OK, I will ask. I presume you purchased all those music files that you host on that certain server, didn’t you?
I self-host my music streaming with Plex, and I'll go ahead and admit to you that no -- not all of my music is paid for.
>Also, these self hosted music services mean — no new music reco/discover, right?
I've discovered more music, and more interesting music, through my Plex server in 6 months than I have on Spotify/Apple music in 6+ years. On the site where I get my music, I have downloaded thousands of albums - 75+% of which I have never heard in my life. I did this by downloading albums I liked, and then snatching all related albums on top, and then snatching all the albums collected by people who like the albums I like, and so on. And so I now have a collection of music all relatively close to my taste but FULL of stuff I've never heard in my life.
On top of that, this site also has ways to follow users and has a way to see albums that they enjoy. It has a top 10 board of the most popular albums on the site that day/month/year.
Then, on the Plex side, Plexamp (which I stream with) has many many ways to start "stations". "Time travel radio", Decade radio, Style (genre), Mood ("Ambitious radio", "Cerebral radio", "Passionate radio", etc.) and more such as algo-DJs with specific styles.
It's all much higher quality mechanisms for discovery than payola-weighted streaming algorithms and "curated" playlists.
What site is this? I miss some sites from 15+ years ago which let people post bootlegs.
Sounds like an interesting website. Would you mind sharing the link? Asking for a friend.
The successor to oink was what.cd (most would say), and this site is the successor to what.cd -- it starts with the letters 'Red' and is a synonym for 'erased'.
I love everything about this thread. I can't help but think about the context and what big part it plays here - imagine someone reads this in 1,000 years, they would have to know so many things on so many levels to understand it the way I did.
Roon (proprietary) has great music discovery features like this. They curate a structured database of all the people related to each act, recording, etc. every artist has an info page with lots of links, so you can trace collaborators across projects. They use the same data to power a really good radio and album recommendation features.
Self hosted music service doesn't necessarily imply new music discovery problems, because a lot of people still discover music the old non-algorithmic way, by being interested in certain genres, studying labels and artists and going through their albums, adding to their collection what they would love to hear again. Buying and owning the song/album somehow brings me more satisfaction than paying a monthly fee for a song library where I won't even listen to 99% of the tracks. Regarding the cost – it is most certainly magnitudes cheaper than renting music from spotify or apple music, but it is ofc more expensive in terms of attention.
The algorithms have never introduced me to a new song.
They always try to mash up things I've heard before, which is disappointing because I can often go to "similar artists" in Spotify and after drilling down a couple of levels, find new artists.
But Spotify will never suggest it until I listen to a song at least once and even then it will only recommended that one song.
I still do most of my discovery by looking at other bands on a related label, internet radio or, as mentioned, finding a band I like and browsing the similar artists.
What used to work for me was the "recommended" section under a playlist, as well as the discover weekly. I say "used to" because I haven't actually used to those in a long time for unrelated reasons.
The drawbacks to these is that they require time to go through them. AFAIK, the "automatically continue playing" feature doesn't pick from the recommended section, and it's hit and mostly miss. Furthermore, to use that section, you already need to have a manually created playlist.
The main drawback of the "discover weekly" approach is that it's strongly biased towards your recent activity, which in my case is random background music of the lofi type. I don't particularly care about this music as long as it's not distracting, so I don't care to discover anything, the randomly changing playlists by Spotify are enough. I would much rather these were excluded, so Discover Weekly would only consider what I listen to "intentionally". There's an "exclude from your taste profile" entry when right-clicking on a playlist. Never used this, don't know how it behaves.
However, all in all, I've discovered many songs and artists I hadn't known before, and many of those have become staples. So I can say that I'm pleased with at least some of Spotify's discovery mechanisms.
You can sort of achieve that the other way around by starting an incognito session when you put on background music. Haven't worked out how to do that for things with Spotify integrations though.
> The algorithms have never introduced me to a new song.
Nearly the same for me, the algorithm has introduced me to a new artist once, ever (and that was the old Google Play service which is no longer available).
Most of the time it creates playlists which are as someone described 'radio curated by the worst version of myself'.
My music discovery is via genre specific radio, a few review magazines, and exploring similar artists via reddit or allmusic.
They have for me, 10 years ago. Seems like the Spotify algorithm figured out that rehashing the same works better for engagement than recommending new stuff
Back in the days, there was a service called what.cd, which was really nice for music discovery. You had very dedicated music fans, great forums and a daily top 10 of most downloaded music. For many it was the fastest way of finding new interesting stuff.
I've heard rumors this kind of services still exist, but we never know if it's just an urban legend.
IMO the best places to find music at the moment other than friends are record stores, Bandcamp, and slsk.
I've found some decent stuff due to streaming services and algorithms but it's just so lazy and convenient.
RED and OPS are sadly not even a faint and distant shadow of WCD.
I know. But they are the best we have. Still much better than Spotify or the other streaming services.
honestly the best way to discover new artists for me is last fm. i can look who has similar taste and see what they like. Allways wanted to implement this somehow
I have not explored this in a long time. Moved to ListenBrainz. Will check it again.
For some people music is a hobby — looking for new stuff, buying and sorting it is their passion.
The worst thing you could do to me is tell me that I pay $5 a month and the rest of my musical journey is solved and gets decided by a corporate algorithm that pays emerging musicians and niche artists a starving wage.
To me Bandcamp has been the best thing since sliced bread - direct connection with artists/labels, high quality audio (in a dozen formats) and often the chance to buy physical media (I'm a vinyl person).
Digital crate digging is one of my hobbies!
Not OP, but gonic is very lightweight and takes little resources. It lives on a machine that serves a few websites and also hosts my photos with photoprism (by far the most resource intensive service on this server). It's a basic N100 machine with 8GB RAM.
As for my music, although I own a physical copy of most of it that I bought legally, I downloaded almost everything through bittorrent as is easier than ripping CDs.
A sizable part of my collection consists of things I was unable to buy because it's unavailable here or unavailable at all, though. Some albums I received from friends. I don't feel guilty about it, to be clear.
Yep. Same with Plex. I used to run it with 1.2 GHz dual core Intel Atom. I always encode to 128 kbps Opus when I stream my music and I'm not on Wi-Fi. It took about 300-500ms until the music started when I pressed play. The CPU usage was very low even when actively encoding.
The only thing that takes a bit more of CPU is if you have a huge music collection (I have about 2.5 TB), and you do the first metadata and album art scan over the collection. Otherwise you can run these systems with a potato.
> Otherwise you can run these systems with a potato.
Crikey: This gave me a laugh like none other in a while. For anyone else who doesn't get the reference, you can build a very basic battery from a potato, e.g., https://stemgeneration.org/potato-power/Now, I would love to see a YouTube video where someone tries to power a portable music player from a battery. Could a PiZero be done?
I have 700 via those tools but then my current Spotify/Apple Music list must be close to 1500 and I shudder at the thought of hunting the rest of 800 down on P2P here and there. So I was wondering is there a way to do it in one shot or few shots as a batch/automated process.
The „starr“ Apps generally allow importing lists to automatically hunt down the items on P2P and upgrade your local versions if better qualities are found. I’m not sure if it directly supports Spotify/Apple Music lists though.
Sadly I have almost stopped using pvt p2p or otherwise. I also never had anything other than a basic ruT setup. I guess it's about things like Radarr etc. I would not know where to begin with them. Will try to use something other user have suggested.
Streamrip on github
Bandcamp has a massive amount of _legal_ free / zero cost / €1 per album music if you spend the time digging. As a hobby DJ I really enjoy the digging aspect!
Please don't be so quick to assume all music is pirated by those with large audio collections.
Buying new tracks like when I was still using iTunes would be nice. Bandcamp comes close but I don't mind the extra step of downloading the zip file and running my script to have it in my music server. Where I also have plenty of digitalized CDs that I own.
Spec-wise, start cheap and upgrade the CPU/RAM when you hit limits. It's not like you'll use all those services at the same time. My home containers all run on a recently purchased HP Mini G2 that I upgraded from a 6100 to a 8-core 6700 and the RAM is an odd 24GB. It even has a rarely used minecraft server. Docker containers are bundled into proxmox instances per user or whatever makes the most sense.
> Also, these self hosted music services mean — no new music reco/discover, right?
Sure they can do. Mine gets suggestions from lastfm.
> How is the cost/spec need of this self hosting like?
Mine is a raspberrypi4 on my local network, probably less than 20€ of electricity per year. Hosts other things...
Some, ie Roon, allow you to play back both your local library and music from certain streaming services so you get the benefit from both
You don't do music discovery by blogs, music journalism, word of mouth, genre databases and so on? You're fully subservient to some algo an ad corp is using?
As for purchasing, many artists give away their works (e.g. "name your price") or don't deserve payment but should be archived and studied anyway (e.g. nazis, billionaires and so on). It's probably not that hard to build a Bandcamp crawler that fetches name-your-price-albums from specific genre tags.
For a few clients and simple browsing you can run an audio cast off a router or cheap SoC.
Why purchase he’s doing AI training /s
I've been using Plex (connecting via Tailscale) with their Plexamp music player.
It's been working pretty well, but I might have to give this a try to compare. Although, it's not clear from the GitHub README or the Apple App Store listing if the mobile app allows you to download music for offline listening.
Also using Plex and Plexamp, and very happy with that combo. Curious about why talescale is needed - I'm on a static IP, but I believe Plex also provides a forwarding service (?)
I think you were talking about Blackcandy in the second paragraph, but just to be clear, Plexamp does allow downloading for offline listening.
It's free, extremely easy (not that port forwarding is complicated) and you don't need to port forward.
I point DNS records on my personal domain to tailscale IPs so it some subdomains can only be accessed when connected to tailscale, I can do app.mydomain.com etc without exposing anything online.
Pretty much the same here;
- Cloudflare tunnel for public access
- Tailscale for private use and sharing over WebDAV
- Nextcloud for general file management
- Jellyfin for music and video streaming
Have this running in containers: https://github.com/gbraad-homelab.Nextcloud's WebDAV has issues with filenames or at least how it works. A large amount of files in non-'standard' characters wouldn't show up, so Ampache/Subsonic wouldn't work. This is why I tried Jellyfin.
Same here - Plexamp is working out great for self hosted music on-the-go. Was happy to contribute the small amount towards development.
Same, but Jellyfin.
Jellyfin and Finamp
Finamp is amazing, blows anything else out of the water
Finamp redesign beta is stable and awesome.
I tred it with Emby but I had so much music, it slowed down the search engine noticeably.
I’ve been searching for services that host personal music collections, but there doesn’t seem to be much available. I came across a product called Vox [1], which I might try. There are also plenty of self-hosted projects of varying quality (but I hadn’t seen Black Candy before).
I'd like a service where I can upload a large folder of MP3s, and it would help organize them into albums, perform useful processing like ReplayGain normalization, BPM and key analysis, etc. It should also have a good playlist manager and player for desktop and mobile.
Some existing services allow you to add your own music files, like MP3s, but this often feels like a second-class citizen. Services like SoundCloud are focused more on social interactions, which I don’t really need.
Have I missed any services like this?
There's some growing dissatisfaction around algorithm-driven music services like Spotify. Also, these services carry the risk of music disappearing for various reasons. I think a service allowing curation of own MP3 collections could appeal a significant fraction of all music lovers out there.
--
All you need is this:
1. Self-hosted web server with local file system access to your media.
2. One HTML page that I will generate for you. This page will contain a media player and a play list of your media files.
With this approach the solution is ridiculously simple, but you are at the mercy of the client device web browser for media codec/container support. For audio this is not so restricting but for video this is really restricting.
The application that generates that one HTML page for you is this: https://github.com/prettydiff/mp3-master-list
It is a Node.js application and you will need to run npm install in the application directory before the other commands will work.
Enjoy!
Navidrome has worked well for me for the last couple years. My collection (~80 GB) is pre-organized FLAC but Navidrome will transcode to MP3 if needed. I use Substreamer on Android to connect to it (Airsonic API/protocol) or the WebUI at home or work.
Just the right balance of simplicity and features for me.
How do you tell navidrome to serve "preorganized" flac. That is exactly my case.
AFAICT navidrome doesn't organize anything itself. In your config file, you just say:
MusicFolder = "/home/vlad/music"
And you're off to the races. The docs even say that this can be a read-only folder, which it is in my case.On the main docs page it says:
> Navidrome does not support browsing by folders, but simulates it based on the tags with a structure like: /AlbumArtist/Album/01-Song.ext
I don't think I have seen this tag simulation when I tried it around 2 years ago. But in any case, is this good enough? And does it recognize artists and songs from MusicBrainz like Jelly does flowlessly?
I don't know what you mean by "recognizing songs from musicbrainz", I've never used jellyfin to be able to compare. In my case, all files are tagged outside Navidrome.
All my players allow browsing by either Album Artist, Artist or Album. My folder layout follows this principle, so I'm happy with that.
But I can imagine layouts which don't adhere to this (classical music comes to mind), in which case I can see how not being able to get to the folders can be annoying.
Recognizing from MB is this: you have title1.mp3 and you can use MB fingerprint to detect song/album. Or song simply has subset of tags and MB fills up the rest, along with the links to MB details of artist/album where you can get tiny little details.
Discogs is a bit better in that, but its proprietary, so no.
Its anoying for me in any case.
I am more proficient with folders and have the number of tools to do so. Any GUI that streaming servers present is very unusable for me, I use it only for major happy case. Anything more advanced, I drop to the file system.
For Musicbrainz I use beets to import/organise the songs into my library directory structure.
For stuff not on mb I use fb2k as it has a fairly decent tagger and move it to the local external drive, which is synced to the server.
At home I usually just use fb2k to play to my sound system via an interface, and on the go I use play:Sub connected to the navidrome instance transcoded to 160k OPUS (initially over tailscale but now via portforward/cloudflare and soon cloudflare tunnel)
I use FB2k with picard and MB. If its not in the MB, I add it myself. With bookmarklests and picard this is very fast process.
Beets is too much work. I don't always have shell around nor I want to remote for this. This thing I use works on whatever machine I am currently.
I use jelly for convenience to connect to my media server when I am not at home. At home, I always use foobar2k which simply rocks for precise search and randomly generated lists (I even use SQL for this, via plugin). Its playing capabilities are far from any jelly like streaming server. Jelly is very bad at non-typical case, you can't even share a link to the current playlist and if left alone, after a day or two I have to reload jelly home page and go from there again, as anything that was left in the browser for a couple of days stops working until I reload from home.
I used to add stuff to MB but it's a bit involved as a process and honestly I'm too lazy a lot of the time. Picard is fine as a GUI tagger but I like foo.
If I can't pick what to listen to I quite like radiooooo, Radio Paradise, Radio Meuh, etc.
I use iBroadcast[0], it's a service dedicated exactly for this. Costs me a bit each year but I've felt it worth it. There's some differences to organising in iTunes like the handling of compilation albums that I'm not so fond of but you can see how it works on the free tier.
The browser client only does 128 kbps streaming but their mobile client can set the streaming quality (I have it at 256, max is 320) and I'm working on my own PWA client using their API that I've also set to 256, which would work on both mobile and desktop.
You can also set the browser client to stream the original file directly but browsers don't play most of my formats like ALAC so it just doesn't play anything then.
Thanks for the pointer!
From the "outside" this looks like such a strange product. The landing page is very obscure and, together with the name of the service, I would automatically think this is a super old school product (being generous) or some sort of weird scam (being overly critical). There are no docs or pictures or any further description of what the product looks like, I guess the authors expect people to sign up to see (it is free! :-).
Other than that, I wonder how they address their costs [0]. It seems free accounts have unlimited uploads. Anyway, I guess I'll have to give this a try to learn more about it.
EDIT: I found some pics by clicking in their facebook page, which in turn links to a news page [1] (...).
EDIT: This product is fascinating. Seems like they've been around for 12 years, have a bunch of loyal users, and support their product (?) via reddit (at minimal approve of the reddit channel since they link to it themselves!). I wish we could know more about the team behind it. Related: [2].
--
0: https://www.ibroadcast.com/premium/
1: https://ibroadcast.com/news/
2: https://www.reddit.com/r/ibroadcast/comments/1d1iaht/is_ibro...
Most self-hosted services metadata is only as good as the metadata on your audio files. I think using something like MusicBrainz Picard or beets to tag your media well is required, along with making sure that all files of a given album are in the same folder. (Plex has what seems like strict file naming conventions for music, but really all you need to do is make sure each album has all its files in one folder).
If you're interested in something more automated than having to use a program to tag your media, then I'm not sure what a good option is. Most people that don't use streaming services and have a digital music collection are tech-savy and don't mind going through the extra effort of tagging the media.
So here is my question, or one of them, as someone starting this whole journey: exactly what metadata do you want outside of artist, song title, album title? Because I can see there's a lot to be had. Embedded album covers, subgenre tagging, synchronized lyrics ... hyperlinks to Discogs and MusicBrainz, maybe? Tempo in BPM? Key?
ID3v2.3 or IDv2.4? Can you even do that to FLAC? And where do you get that metadata, using what tools?
I just don't want to be the guy who has to re-rip three thousand CDs because he did his workflow in a lazy or careless manner.
The cool thing about MusicBrainz Picard is that it puts not only an ISRC metadata tag on each file, but also a UUID for the MusicBrainz recording and for the MusicBrainz album id.
The idea here is that if you use something like MusicBrainz, you can actually retag all of your files in bulk if necessary because MusicBrainz Picard knows exactly what release each file belongs to. You can then configure MusicBrainz Picard to tag your files to your liking. It's a really great piece of software.
If you are tagging files manually, I think an ISRC tag is the bare minimum because it can allowed automations like MusicBrainz Picard to easily identify what each file is.
As for what version of ID3 or ID2, I'm not sure. It might depend on the software you use to play the audio files. The reason I personally use MusicBrainz Picard is because its MusicBrainz specific metadata is read directly by Plex, so even if the other metadata on the file is bad for some reason, Plex will match the MusicBrainz tagging with the correct release. I mean, Plex uses MusicBrainz internally for its metadata, so it's a safe bet for my purposes.
Besides artist, title, and album, I also make sure to include release year and genre (and I'm not really particular about genre definitions - about 90% of my music falls under "rock," "pop," "jazz," or "soundtrack"). I add album art, too. I started digitizing my collection 15 years ago, ripping from CDs and cassettes, and have never regretted not adding any more metadata.
Huge shout out to astiga which I've used for a year and a half. It'll run a streaming service for you out of cloud storage (eg s3, but also stuff like dropbox or google drive).
I'd love to self host but have a toddler and not much time, so astiga is a great "take my money and do it for me" kind of service!
[0] https://asti.ga
I’ve been wanting the same thing for a while now too. I’ve thought about trying to build it myself but the thought of requiring users to manage their own library seems too niche. A hosted, music-focused Plex competitor sounds awesome but also not sustainable. Surely the majority of those users who care about managing their music library are also happier owning their storage too, no?
Storage is tricky... I know how to self-host software and get storage but I find it too much of a hassle to do it for me only, so I just have a folder in a google drive, which I need to migrate from soonish.
Why do you think a Plex competitor would not be sustainable?
Look for "Storage VPS".
Then just run navidrome using docker-compose or microk8s
Subsonic and airsonic (the latter is a fork of the former).
A lot of talk here about different solutions. I wonder if there's a universal interoperable standard for self hosted music streaming these days? I'm still using the old Logitech Media Server (with some physical Squeezeboxen), but something a bit more featureful would be great. Especially with good indexing and search. And if it could interoperate so I could choose different clients and server, and wouldn't be tied to that software.
OpenSubsonic (https://opensubsonic.netlify.app) is the closest. It's a collaborative effort to extend and modernize the Subsonic API, which had become a sort of de-facto standard API. Navidrome, Gonic, LMS (Lightweight Music Server, not Lyrion/Logitech), and other servers implement the API, and Supersonic, Symfonium, and other clients consume it. (And it's backward compatible with the original Subsonic, so older Subsonic clients will work, just not support all the new features that have been added.
Same here, love Logitech Media Server... (and also the iPeng app.)
For reference:
UPNP/DLNA is supported on many devices, especially audio-related devices, though maddeningly not so much on desktop OSes.
The closest I know of is subsonic. Since it’s come and gone compatible apps have also worked with backends like airsonic and Navidrome.
I stick with that family because I don’t want to have to change apps (I use play:sub on iOS)
Not so much a planned standard, but Airsonic is about the closest thing. Many servers, clients, and third party tools are airsonic compatible. Navidrome, the current server I'm using is compatible for instance.
Large microsd cards are very cheap these days. Using all this cloud stuff seems like a waste of multiple resources. And if you ever don't have a good connection then it's worthless. I've given stuff like this a try and only found it worth it on internal networks.
Syncthing and local files are a much better strategy. Internet access is just too unreliable even when its ubiquitous.
What's the benefit in using a "self hosted streaming server", when I can just mount a network share and connect to a personal VPN when I'm out and about? This is what I've been doing for awhile and I've had zero issues. As far as I can tell it's secure.
Is it just to allow others to use the server with login credentials?
I find it easier to stream music from my phone, especially with a slow uplink and the real time encoding to a lossy format with the servers.
I guess this is the time I ask the question I ask whenever a new self-hosted media streaming server gets posted...does anybody know of any similar server for demoscene tracker files and/or retroconsole music format (bit tunes) hosting, transcoding and serving the stream?
chip-player-js [1][2] has more or less exactly what I'm looking for, and I'd be perfectly happy with it, but I can't seem to get any of the docker containers I find to build properly or the repo to build due to dependency issues (probably ignorance on my part) [3][4].
1 - https://chiptune.app/ 2 - https://www.mattmontag.com/music/chip-player-js 3 - https://github.com/mmontag/chip-player-js 4 - https://github.com/soltune/chip-player-js-docker
If you’re willing to pay for proprietary software, I’ve been incredibly happy with Roon for music organization. Handles 99% of albums I add without an issue, great multi-room support, best suggestions of any existing service (Rest in peace Google Play Music). They added remote streaming a few years ago and it’s all I use now.
Note that it is a $12.49 subscription, or $829.99 one-time. So you really need to love its featureset.
That's some serious price. If you're a professional music maker and need top-of-the-line audio production software, Ableton 12 Suite is ~600 EUR, and that's for making music, not consuming.
The audiophile market often seems to work like this. Insanely overpriced for marginal or nonexistent gains in quality.
I have friends that use Roon and say it's great, and has some nice features for room-based EQ, however I want to spend £0/mo standing cost (all extra goes to bandcamp).
They do not have a Linux player so the price tag is a bit hefty compared to Plex or the free options...
You can control the playback via a phone if you need to play music through a Linux system though.
Music playback via a PC isn’t really what Roon seems to be going for though, so much as allowing you to control music playback through proper audio systems via a PC or other device.
No last.fm scrobbling? I know what I'm doing this weekend!!
The UI looks nice but it doesn't look like there's CarPlay support unfortunately.
I don't use my car that often but when I do I want to be able to access my music library. Right now I'm stuck with Plex and Prism on iOS because other solutions are not good in that regard as far as I've seen in my testing.
Sounds like a good feature request for the open source developers
I run Jellyfin and Symfonium. Symfonium isn't free but it is feature filled and it seems to be a passion for the Dev.
All for other options in this area as it has taken me a few goes at finding something that works for me. Usually it is the client that is lacking.
Thanks for a tip to try out Symfonium. Seems to work great with Plex and Navidrome. I have a few issues with Plex for music, especially when it wants to convert DSF files into flac, which is fine but unnecessary. Plexamp on Android also sometimes fails to download full albums for offline playback.
Jellyfin I've tried a few times, but it still cannot encode and stream music as opus, which I find the best format when using low bitrates. Navidrome and Plex support opus by default.
I've started using Navidrome with Symfonium a few months ago. Navidrome is pretty good, but I'm very impressed with Symfonium. It's simple, responsive, and straightforward, but it's got a ton of options so you can fine-tune the client quite a bit.
Symfonium + Navidrome here (Plex running on raspberry pi couldn't stomach my music collection, and Jellyfin is even worse).
What I really like about Symfonium compared to other subsonic clients is that it keeps the db locally.
I have had Jellyfin running as a media server on an i7 gen4 PC that I have setup as a NAS as well. I first tried subsonic client and Nextcloud but I was only running it on an Odroid H2. I think the extra CPU performance helps.
I've been using Navidrome to great success, but will look into this. Any particular differences between the two?
Seems the theme going into the new year might just be self hosting things... This and this https://github.com/siyuan-note/siyuan are both on the front page of HN
> Your browser is not supported. Please upgrade your browser to continue.
With latest Firefox stable on https://demo.blackcandy.org. Is this right?
If you're on mobile, try switching the page to desktop mode.
I use mpd and ncmpcpp but arguably I don't need much in terms of features, I just play all the things on shuffle.
No point in using my phone as when I'm on the LAN, I don't need it, and when I'm out of it, it's counter productive to connect to it (because Canada still has third world mobile data rates) and better off replicating the entire library on-device.
I run multiple minidlna instances in Podman and let BubbleUPNP connect to them through Wireguard. Getting the multicast discovery to work was a bit challenging.
This is by far the nicest solution out there. All the others, plex, etc are resource hogs that want to transcode everything, unlike minidlna, which can run on a router, if needed, without docker, or all that jazz.
People might not like it because bubbleupnp is not open source, but it's a very nice piece of software nonetheless.
BubbleUPNP is so nice that I emailed the author to please consider taking yearly payments instead of the very lenient one-time price of less than €10.
Any tutorial or links on this?
Not at the moment - this would be a good topic for a blog I've been meaning to set up for 10+ years now.
There's also owntone, formerly forked-daapd. It implements DAAP, which is what iTunes/Apple Music uses.
Works with Rhythmbox, at least. IDK if there is a compatible Android client.
Owntone http stream works on any browser, ios, droid.
Works well enough i haven’t bothered to set up anything else.
Wireguard is pretty great for all this stuff.
Instead of streaming, it would be nice if the server kept flac than transcoded the library and automatically synced it to mobile devices.
Finamp app for Jellyfin can auto-download favourites/playlists/5 latest albums, transcoded by the server. It also mentions being able to lock albums to keep them available offline. Unsure if it syncs without opening the app though.
Couldn't you use a script to convert the files and then just use Syncthing [1] on both devices to keep them up to date?
Lyrion should get a mention. It's a brand fork of Logitech Media Server, aka squeezeboxserver aka slimserver.
It has multi-room, quite broad hardware support and support for Spotify, Chromecast, etc through plugins. There are also a few DIY devices you can run squeezelite on to add cheap, good players.
Wow! Complete with custom mobile player! That's quite a ways up from "set up a ssh tunnel home and use vlc", I may have to take this for a spin.
I'm probably missing something. Why self-host when for $10/mo. you can access a nearly unlimited catalog of music on Spotify with integration on phone, PC, car, Sonos, etc?
Because:
* You don't have any control, if some paperwork fucks up you can lose access (rarer with music but very common with video services)
* They don't have a lot of rare stuff, demos, EPs, singles, dubplates, etc.
* You can't choose which version of an album you want.
* If you run out of money for whatever reason you can't listen to music.
* Offline is unreliable.
* Screw having my taste and discovery defined by an algorithm
* Artists get fuck all money compared to buying stuff off of Bandcamp/buying CDs and ripping them, even if you still pirate a lot of stuff.
* They have questionable ethics as a company.
* No lossless.
* When you curate your own collection you develop in my opinion a deeper relationship with it.
I have to rent my home and most other stuff in life, music is one of the most important things in the world to me. I'm done with renting that.
You forgot disappearing music. Add a song to a playlist, switch countries (or who knows what), it becomes greyed out, or perhaps simply removed. Annoying.
Their tendency to add random music to my playlists is annoying. I think there's some control over it, but I'm too old to follow up on how it works this week.
I'm on the most expensive family plan they have, but would pay more to get those two fixed properly.
I do still buy music on albums and digitally, mostly as a backup exactly for the reasons you mention. But I can't afford to do that for everything I listen to.
Because a person might be willing:
-to directly support artists with buying the albums or songs at full price, rather than letting Spotify barely pay artists anything for their music (especially independent ones without industry connections)
-knowing you own your library and that once you’ve purchased media, there is nothing to take it away other than the sands of time taking back its silicate
-one does not need unlimited access to songs they will never hear, especially when natural discoverability on Spotify is so so versus trawling through sites like Bandcamp, Earmilk, RCRDLBL (I know it doesn’t exist anymore), or other places where new artists show their work in a way that Spotify doesn’t provide
> to directly support artists with buying the albums or songs at full price, rather than letting Spotify barely pay artists anything for their music (especially independent ones without industry connections)
You can't post an open source project on this site without half the thread speculating that you're a grifting sociopath. <1% are going to pay for music on here.
90% of statistics are made up
I am curious, with the way you are using “<1% are going to pay for music on here”, is that to be read as “no more than 1% are going to pay for music on here” or that “less than 1% are going to pay for music on here”?
Is your point that people aren’t willing to pay for things if they have a choice not to?
Or is it that independent artists should be grateful that people see their work at all and that “most” people will just think they are a grifting sociopath?
Not sure what your issue with my comment is, but I’m interested in what you meant, as I feel I’m missing context that only you have at the moment.
Apart from many reasons mentioned by others, I find the "nearly unlimited" catalog to be very overrated. Every time someone asks me to queue a song, it's on Spotify maybe 50% of the time - as soon as you start delving into dance/single-oriented genres of the past, streaming services just won't cut it.
For the record (heh) I also have an extensive vinyl/tape/CD collection in addition to a few TB of pirated FLACs.
People are already self-hosting other things maybe, and you can self-host from a PC at home without needing to pay hosting.
The advantages are control over data, greater privacy, etc.
I home-selfhost Jellyfin, so I can access media (music, movies and series) from mobile, tablet or TV.
I can imagine a group of friends hosting on a common VPS, like some sort of private Netflix but nearly unlimited.
I've been looking for a music server to stream music from my local NAS to our Alexa Echo speakers. Tried Plex, and I can't get it and Alexa to play nice. Are any of these able to integrate with Alexa speakers????
I'd love to find something that works effectively at randomly streaming my music video collection, esp out as an rtsp stream. Kodi's music video support has a tendency to choke and has some weird deficiencies in how it handles them, such as audio leveling.
Server: Icecast + deefuzzer + directories with music files on a ssd.
Clients: VLC or Transistor on Android.
Search: a web form to a script (Python? Lua?) that uses find to look for files into the music directories.
I wish i could send the audio signal to my Sonos/airplay devices. That would make it awesome
I'm currently using icecast and ices to host a music stream. It'll effectively stream music to a port, and multiple clients can enjoy.
Anyone doing something similar, I'd like to migrate to something more modern.
Snapcast is similar, but will keep all the clients in sync for multi-room audio
That's actually something I've always wanted. Thanks, I'll take a look
I did something similar a while back with mpd its httpd output: https://mpd.readthedocs.io/en/latest/plugins.html#httpd
I think that's still pretty modern. My stream setup uses liquidsoap to generate HLS files which are served as a livestream directly from Tigris/S3. But a lot of users of liquidsoap still use the icecast output I think.
I can see why someone looking to easily handle massive scale wants HLS, but why is it useful here?
I'm about to use my existing jellyfin setup. Amy advantage here over jellyfin?
Not op but I’ve been running jellyfin for a few years. At least 2 years ago when I tried it for my music it felt clunky . I haven’t checked since but I encourage you to feel out the experience with a few albums, playlists, carplay, &c before going all in.
Fwiw I ended up using Navidrome m as a server, beets to manage metadata, and play:sub on mobile.
People who use this or something similar (Jellyfin, Navidrome, etc.), what do you use to easily add new music?
Ideally I'd like to automate this to the point where I can look up an album and it gets downloaded automatically, similar to how Overseerr[1] works for movies and series but without the dependency on Plex.
I don't want to easily add music. I am not a hoarder. I carefully check anything new I add to the collection.
But you could use a Nicotine++ for that task easily. It will even auto search from the wish list periodically.
You have Lidarr[1] as an equivalent to Sonarr/Radarr etc. and there is a pending PR[2] for adding Lidarr support to Overseerr which also has a custom docker image to try.
[1] https://github.com/Lidarr/Lidarr [2] https://github.com/sct/overseerr/pull/3800
I use Funkwhale, which exposes a nice web UI for uploading new music. Saves me the hassle of manually adding music files to a server, and it also allows for a multi-user setup where users can keep some music to themselves.
The "oficial" servarr[1] uses Radarr for movies, Sonarr for TV shows and Lidarr for music.
Perfect! I was looking for a way to replace YouTube music. I’ve been slowly migrating away from YouTube, while maintaining the ability to watch my favorite content creators. I use pinch flat, Jellyfin and audiobookshelf.
What do people use for a NAS nowadays?
2014 MacBook Pro in a cupboard with an external drive running Ubuntu. Integrated UPS!
I've been using TrueNAS for six years already. I've built a custom server
- Intel dual core Atom CPU
- Passive cooling for the CPU, two fans for the HDDs
- A small Supermicro motherboard with IPMI and six SATA connectors
- 16 gigabytes of ECC RAM
- Six 14 terabyte hard disks
- Fractal Design Node case
- ZFS with RAIDz2
But this setup is getting old, I've had a few errors already from the CPU. My plan next year is to build a rack server with a modern AMD Ryzen CPU, 64 GB of RAM, Proxmox with TrueNAS scale in a virtual machine and re-use the disks I have in the current setup.
Proxmox is much nicer for virtual machines and LXC, and if you need Docker, you can run them in the TrueNAS Scale VM.
Hardware wise I bought a TerraMaster F4-423 used last year for about 300€. It's a great device.
Software wise, I use Fedora Server, although if I had to reinstall now I would use AlmaLinux because I don't need the new stuff coming with Fedora Server on my NAS.
Synology
mostly an excuse to play with virtualization, filesystems, and networking
No sorry, I meant which NAS are people using to run music servers like Blackcandy. I used to run a FreeNAS but need to upgrade badly.
Dell R720XD
FreeBSD 14 on a mini-ITX supermicro mainboard and 5 drives in a Jonsbo NAS case.
I've been using mopidy plus Snapcast to do this (via wireguard when remote) and have enjoyed it. Good multi-room, multi-site audio.
I wish there was a native app for Windows and MacOS for this.
I use piCorePlayer + LMS (Lyrion Music Server, previously Logitech Music Server) on a Raspberry Pi with a DAC plugged to my amplifier.
Never crossed my mind to self host my own music streaming server, great idea!
It is really only a thing because smartphone OS vendor make it difficult for people to mount filesystem over the network.
If you could ssh/sftp mount from android or iOS easily, your favorite smartphone audio player would just play those files from a remount mount without any need of a streaming server.
Music is straightforward to self-host. Go for it!
Video can be a bit harder if you have to transcode.
Longtime Navidrome user so that's what I'm comparing this to.
This project looks cool, albeit simple at this point, but what I'd really love is a solution for music discovery for folks who self host their collection.
Is there something that sets this project apart from other easily self hostable tools?
Yes, I'm also interested in this project but Navidrome does a great job alongside Jellyfin and Audiobookshelf. A great trio.
Hey @hebocon I've been using jellyfin for both music and movies for close to a year...but keep hearing of navidrome (for music) as well. So, can i assume that you don't really use jellyfin for music, and instead use navidrome for that? How does that work for you? Any issues of interference, etc? I guess if i wanted jellyfin only for movies/tv, i could point it only at the folder where such media is saved, and then separately manage music via navidrome...but wondered what the benefits would be? Genuinely curious if you woiuld kindly share more info about your setup. Thanks! :-)
This is my stack too. Initially tried to stuff everything into jellyfin (and plex before that) but am confident this is the best stack today.
Is there a way to play YouTube music and create it as a playlist using this, bonus if it can also block ads?
Does this support 5 star ratings in app?
Slightly off-topic, but does anybody know something easy to create online radios from music collection?
If you are looking for a self hosted server that integrates with SONOS check out Subsonic.
I didn’t see synology or qnap mentioned here. They are probably the easiest way to self host and stream the músic, even if they are simpler, but for me worked well.
Hmm.. I have a different use case. There are 7 years of a radio show with daily recordings of about 2-3 hours in length, including images. About 400GB in size.
It used to all be hosted on a heavily ad plastered Drupal site, but I took it down a few years ago, because reasons.
I would like to make the archive available to the public, it would be such a waste to delete it. When I write available, I mean via a website. This blackcandy seems to be private only, requiring auth.
I would also prefer if the shows were streamed not directly downloaded, to keep bandwidth down, if you know what I mean.
Does software for this use case exist?
This isn't quite what you're asking for, but sticking a copy on archive.org for the folks who want to download the whole thing might be a good idea.
Funkwhale should support this. You might even be able to set up the show to present itself as a podcast.
I don't see any mention of UPnP. Is anyone using a set up where they have some kind of headless device plugged in to a hi-fi amp and just want to control it from their phone without switching on another screen?
The combination of OwnTone running on your server and a Wiim Mini (or any of the other Wiim products) is great for this:
OwnTone is a media server that lets you play audio sources such as local files, Spotify, pipe input or internet radio to AirPlay 1 and 2 receivers, Chromecast receivers, Roku Soundbridge, a browser or the server’s own sound system. Or you can listen to your music via any client that supports mp3 streaming.
You control the server via a web interface, Apple Remote, an Android remote (e.g. Retune), an MPD client, json API or DACP.
OwnTone also serves local files via the Digital Audio Access Protocol (DAAP) to iTunes (Windows), Apple Music (macOS) and Rhythmbox (Linux), and via the Roku Server Protocol (RSP) to Roku devices.
Runs on Linux, BSD and macOS
Wiim products are great, they revolutionized low cost home sound setup.
How does this compare to zymotv?
I have Spotify and a few dozen gigs on my phone for the stuff Spotify doesn't have (or has removed).
okokokokok
Why would I do this over a Synology DiskStation which allows me a hassle-free way to stream my music anywhere I have a internet connection... I use it daily in my car without a problem, going on my 3rd DSM and ~10 years of this setup.
For me, the reason is that Synology is not open source, and additionally because their NASes are overpriced for their size and capabilities. I have a 12 disk NAS that cost me a total of $500 (before drives), with no software licensing fees at all, and that's not even an especially cheap one. My earlier NAS was slower but only $120. Of course, it needs a deep 19" rack to mount, but that's actually an advantage for me, as I have a dedicated homelab rack to play with.
Because not everyone owns a synology. Some of us have home built NAS. Others would prefer something with lower energy consumption like a raspberry pi.