Summary
- For the majority of people, the best alternative to paid services is the combination of Plexamp and Plex Media Server.
- When building any collection, it’s important to accurately tag all your albums and find high-resolution artwork.
- More advanced users can try setting up a Linux-based Raspberry Pi server using software like Subsonic.
I’ve come to be dependent on streaming music services. Frequently I’m writing for nine to 10 hours a day, and one of the only things that keeps that enjoyable is a steady supply of tunes. On top of that, I demand custom soundtracks for roadtrips, weightlifting, and riding my EUC. At the moment my service of choice is Spotify, but I’ve also toyed with Apple Music and YouTube Music.
There are two major problems with paid services, the first of course being that subscription fee. While Spotify does have a Free tier, it’s loaded with ads, and you lose important features like offline caching and queue control. Services like Apple Music and Tidal don’t even have free options beyond their trials, so if you can’t afford to pay anymore, there’s no choice but to migrate. The other problem is content — while there’s always something new to listen to, some artists just don’t have a presence on streaming, despite selling their music elsewhere. And when they are on streaming, songs and whole albums can vanish in the blink of an eye, if they everget uploaded in the first place.
If you’re bothered by these limitations, it’s possible to set up your own personal streaming service using a few different methods. I’m going to focus on one of them, which is by far the best for most people — but I’ll also briefly touch on another for more tech-savvy individuals.
Collecting and organizing music
Effort now will pay off later
The first step involves building a reasonably-sized offline music collection, which is tougher than you might think if you’ve never done it before. If you want to do it both cheaply and legally, your best bet is to hunt for as many albums as possible on DRM-free stores like Bandcamp, so there aren’t any restrictions on how you can copy files. For artists you can’t find there, it’s time to browse stores that sell used CDs. You’ll also need a DVD or Blu-ray drive, and some sort of software tool to rip the music, one long-time favorite being Exact Audio Copy.
Whether you’re ripping or downloading, it’s important to strike the right balance between quality and streaming performance. Audiophiles often insist on lossless FLAC files, but that comes at the expense of a larger storage footprint, and the risk of buffering if your remote connection is less than perfect. My personal compromise involves MP3s with a 320kbps bitrate. Realistically, 320kbps is indistinguishable from lossless to most ears, even on a high-end sound system.
The most tedious part of collecting is fixing tags and artwork. While anything you buy from Bandcamp should have proper cover art and track info, you might still want to assign your own genre labels to keep things consistent. And if you’re ripping CDs, be prepared to add metadata yourself if your tool can’t automatically source info from online databases. For my own local music, I’ll usually import albums into the Apple Music app for Windows, then edit them from there.
How to set up remote streaming using Plex
The simplest choice, relatively speaking
I recommend that most people choose Plex, a platform that specializes in personal media streaming. Similar ones are available, and might ultimately be to your preference — but Plex is the most popular, which means it’s well-supported, and can run on just about anything. You can even stream using Apple CarPlay and Android Auto.
There are several steps to pass through before you can start listening, though. I’ll try to cover these as quickly as possible.
- Move or copy all of your music to a central location, ideally under a single folder. Artists and albums can have their own subfolders, but lumping everything together may still work if it’s all tagged properly.
- Install Plex Media Server to the device where you’re storing your music library. For the purposes of this guide, I’m assuming that’s a Mac or Windows PC. You’ll be prompted to configure settings and set up a Plex account, but don’t worry — remote music doesn’t require paying for Plex Pass.
- Use the Plex web interface to add your music folder(s) as an automatically-updated source. First-time indexing may take a while, so be patient.
- Verify that Media Server is configured for remote access by going to Settings -> Server -> Remote Access. You likely enabled this during installation. If it’s not active, you may need to create a special port-forwarding rule on your Wi-Fi router to manually forward the public port to the private IP address of your Plex server. The public port is usually the same as the private one,
- Once Media Server is fully indexed and remote access is active, download Plexamp to the devices you intend to listen on. There are versions for iOS, Android, Windows, Mac, Linux, and the Raspberry Pi.
- Test remote access by streaming from a device other than your computer.
Plexamp is pretty well-equipped — on top of its automotive support, it includes features like fading, smart playlists, and the ability to cast using Google Cast or Apple AirPlay. You will need Plex Pass to unlock some options, the biggest being offline caching.
Perhaps the greatest catch with Plex is that if you’re hosting Media Server on a computer, that system has to remain on and connected to the internet anytime you want to stream. That’s where alternative options come into play.
How to set up remote streaming on a Raspberry Pi
Not for the faint of heart
Upfront, I’ll admit that I’m not that familiar with using a Raspberry Pi. But I do know that several music server options are available. And because a Pi is a low-power device, you can leave one running 24/7 without much consequence.
Here’s a broad outline of how to host music using one of the more popular options, Subsonic:
- Install a Debian-based distribution of Linux. There’s one specifically for the Pi called Raspian, but you’re not limited to that.
- Make sure your Pi is permanently connected to the internet. Ethernet is best, Wi-Fi may be acceptable.
- Update your Linux distro to the latest possible version, and install the latest version of Java. Search online for the instructions particular to you.
- Install the Subsonic .DEB package.
- In a web browser, visit http://localhost:4040/ and log in using admin/admin. For security reasons, you’ll want to change that login via settings.
- Back in settings, select your music folder. This can be on a microSD card or external storage.
- Sign up for Subsonic Premium. Yes, this is a subscription, but it’s only $12 per year, and required for accessing compatible playback apps.