Prism for iOS

Prism, Artist and Album List

While everyone was fawning over Soor, a full-scale Apple Music client that shipped last month, I was sticking to my roots of purchasing and managing my own library of music. Not to say that I don’t like Soor, quite the contrary, I even purchased the app despite not having an Apple Music subscription. I love seeing innovation in the App Store and will gladly support developers that do so. But paying a monthly fee for a streaming music service just isn’t my style.

I’ve maintained a collection of purchased AAC files and ripped MP3s ever since I received my first iPod as a gift over fourteen years ago. Back then I was managing my music in iTunes, not only because it was a great piece of software, but also because it was the only software that was capable of syncing with my primary audio player. But a couple years ago I transitioned my media to Plex — starting with my ripped movie and TV show collection and then eventually moving my music library as well.

It’s been a wonderful experience to have my media living in an application that allows me to stream from my home server to any device I own — whether I’m in my living room watching a movie on the Apple TV, streaming an episode of The Office on my iPad from a hotel, or playing back music in my car from my iPhone. Plex makes it easy to manage my music and gives me access to it whenever and wherever I want it.

I’ve watched as many of my friends and family have moved from purchasing music to paying a monthly fee to use a streaming service and I don’t entirely understand the appeal. Maybe if I was constantly discovering and listening to new music, I’d consider using such a servic, but that’s never been the way I experience music. I have a very distinct taste and rarely enjoy anything outside of that niche — I listen to pop-punk music almost exclusively. Since I only find a handful of new albums that I enjoy each year, its far more economical for me to purchase the music I want and use my existing home server and client applications to access it.

But the Plex app has never been a great music player. I would describe it as “passable at best”. You can build playlists, search for songs, sync tracks to your device for offline playback, and more. It has all the features you would want, but it lacks the simplicity and focus that I enjoy in a music application. I don’t want too many additional features to get in my way when I want to listen to the latest album by Stand Atlantic.

From the time I started managing my music library in Plex, every few months I would find myself searching the web for a music-focused application that I could use as a replacement for Plex’s own app. Something that was a little closer in functionality to Plexamp, which is the experimental, super minimal music player for Mac, Windows, and Linux that the folks at Plex released a little over a year ago.

Prism, Player and Up Next

Plexamp has become my default music player on macOS and I wanted something simple and streamlined that would allow me to playback music from my Plex library on iOS. My searching always came up empty, though. That is, until a few weeks ago when I came across a post on Plex’s forum from the developer of Prism.

Prism can playback locally stored music that you’ve synced from iTunes or purchased and downloaded from the iTunes Music Store. But more importantly, you can sign in with your Plex account and playback music from your Plex library.

The app has a simple interface that’s reminiscent of the iPod app from the early days of iOS. After logging into your Plex account and selecting your music library, you’re presented with a list of artists. You can tap the “Filter” button to display your library by album or track, if you prefer, and there are options for sorting as well — by name, recently added, most popular, and most played.

After selecting an artist, you can even choose how you want the individual artist page to display. I prefer a simple list of albums that I can tap to display tracks from, but you can display all of the tracks from the artist with album headers instead. And just like the main view, you have the ability to select how the items are sorted as well.

The application places a heavy focus on its filtering functionality, which gives you the ability to build playlists on the fly based on any number of criteria that you can mix and match to find just the songs you want — you can filter based on release date, whether or not a track has been played, media kind, artist, and more.

I haven’t found the filtering feature to be particularly useful for me, though. It’s nifty, but the app doesn’t allow you to save these filters for future use. So if you built one that was particularly rad, you would have to rebuild it each time you wanted to use it. In the future, I’d like to be able to save these filters as playlists or smart playlists because, for now, I don’t see the point in spending much time building complex filters only to lose all that work when I want to change views.

Alongside the app’s overall focus and minimalistic aesthetic, I’m a huge fan of the app’s player view. With the exception of the scrub bar, it features big chunky playback controls that are easy to interact with. Unlike the Plex app, there isn’t a bunch of additional, unnecessary cruft that clutters up the player. I don’t have any use for omnipresent repeat and shuffle buttons and I can’t think of a single instance where I’ve used the 10- and 30-second skip buttons, all of which are featured prominently in the Plex player.

Meanwhile, the main player view for Prism sticks to the basics — a scrub bar, play/pause, next, previous, a like button, volume bar, and AirPlay. The app also features an info button that will toggle the display of additional details about the file you’re playing — file format, bitrate, file size, and more. This is the only unnecessary control on the main player and it’s quite unobtrusive so I’m willing to overlook this minor detail.

But the player view is a bit deeper than what immediately meets the eye. You can swipe left and right on the album art, which functions as a next/previous track control. I don’t find myself using it too often, but I could see this being handy at times when you want to skip tracks without looking at the screen — like when you’re driving.

One of my favorite features of Prism, though, is the ability to swipe up on the player, revealing the repeat button and, more importantly, the Up Next queue. You can swipe on an individual track to remove it from the queue or use the grabber bars on the right to reorder them to your liking. My typical workflow involves launching the app, hitting shuffle from the main view to shuffle all of the tracks in my library. From there, I can swipe to the Up Next queue and remove tracks that I’m not in the mood for. This gives me the spontaneity of shuffle without the unexpected buzzkill, as Jimmy Iovine would put it.

The app isn’t without faults, of course. I’ve run into a bug a handful of times where the player won’t display properly — the album art and controls get sort of stuck while loading and the app loses most of its interactivity. The music still plays and you can control playback using Control Center or the lock screen, but the app itself is just in some weird mostly-frozen state.

I have confidence that the developer will track down and fix the bug, though. In the relatively short time I’ve been using the app, the developer has issued three updates, two bug fix-focused releases and one that included a major new feature — offline playback, which I’ll cover in a moment. I’ve also been on the Prism beta for a short while and the developer is typically issuing a handful of builds for each version that makes it to the App Store — there’s quite a bit of development activity.

Regarding that major feature release, though, offline playback is one of the most crucial features for the app. It opens the door for use on airplanes, long road trips with questionable cellular coverage, and home network oddities. Without the ability to cache tracks locally, you’re entirely reliant on your home server being able to serve the files. And that’s assuming you have internet access everywhere you go, which is not the case for my wife. She travels through two cellular dead zones on her daily commute and this app wouldn’t even be an option if not for the ability to download tracks locally.

Prism on iPad

Aside from offline playback, Prism also runs great on the iPad, making excellent use of the additional screen real estate to display both the artist list and the album/track list simultaneously. The developer even refers to the iPad version as “first class” right on the app’s homepage, which is quite reassuring to me, given that the iPad is my primary personal computer. I frequently use my iPad as my music playback device while I work, streaming to the AirPort Express-connected speaker on my desk and it makes for a fantastic listening experience.

Prism is a full-scale music player that offers just about everything you could want and more — I haven’t even covered its support for CarPlay, dark mode, 3D Tough, and multiple icon options. But most importantly, it has the ability to use your Plex library as a music source, which is a feature that simply no one is doing aside from Plex itself. And I think it does a better job in every way.

Browse the Linked List.

In-App Opt Out

John Gruber, on Spotify’s recent “Time to Play Fair” campaign against Apple:

What Apple should do is allow apps that opt out of IAP to explain that users need to subscribe or make purchases using a web browser, and allow them to link to their website from within the app (even if they’d be required to open that link in Safari, as opposed to an in-app web view).

Everything else in Spotify’s list of complaints seems like noise to me, and distracts from the central issues — which happen to be the issues where Spotify should be on the strongest legal footing.

I agree that most of Spotify’s complaints feel petty and childish — many of their complaints are about limitations with third-party APIs for newly released devices. But I disagree that Apple should allow developers to opt out of the in-app purchase system.

While I do think Apple should reconsider the 30% cut and reduce it to something a bit more reasonable, I think it would be bad for customers overall if developers could point users to external places for digital purchases. One of the great benefits of the in-app purchase system is that it’s secure and trustworthy.

Over the past few years, I’ve had to have my debit card replaced three or four times, likely because of some security vulnerability in a payment system. I don’t have to worry about that with Apple, though. I trust that they’re doing everything they can to keep my payment information safe and secure. It’s hard to say that about others.

Perhaps I’m a bit too paranoid about the security of my payment information, but if a service allows me to pay through an in-app purchase, that’s what I use. This is how I pay for Hulu, the WWE Network, and even YouTube Premium — despite the fact that YouTube’s pricing is higher through the in-app purchase than it is if purchased elsewhere.

Here’s the thing about allowing developers to opt out: it’s a slippery slope. If Apple allowed developers to push users to a website for purchasing digital goods, they would. There are plenty of payment systems out there and building a website that integrates with them is easier than ever. But I don’t want to give my credit card credentials to every single developer that builds an app I’m interested in. Doing so will only increase the chances of my debit or credit card becoming compromised and then I have to go through the hassle of getting it replaced, which is a major pain.

To be fair, if developers used Apple Pay on their websites, these security concerns would be mitigated. But it’s not just the security aspect that has me on board with in-app purchases, simplicity is another major factor. The ability to quickly purchase a subscription through the app using my fingerprint, restore a subscriptions on another device, and manage all of my subscriptions in one a single location are niceties that would go out the window if Apple allowed developers to opt out.

That last point is a pretty crucial one for me. If I want to cut a subscription or two in a world where developers could opt out, I’d have to login to each service’s website and hunt around for the option to cancel my subscription. This seems like an awful experience compared to tapping on my profile picture in the App Store and selecting “Manage Subscriptions”.

Maybe I’m in the minority because I don’t use Netflix — I’m sure many iOS users already have plenty of subscriptions that they manage outside of the in-app purchase system and they get by just fine. But we need to consider whether allowing developers to opt out of in-app purchases is in any way an improvement for users. I don’t think it is. Don’t get me wrong, I truly want developers to have a sustainable career so they can continue building great apps. But isn’t providing the best experience for your users the best way to do that?

In-app purchases are always going to be superior to the alternatives and there are plenty of ways to fix the problems surrounding it without having to throw it out entirely by allowing developers to opt out.

macOS Menu Bar Apps


—January 21, 2019

MacBook Air


—January 6, 2019

After the API Changes


—August 30, 2018

Questions in Your Timeline


—August 1, 2018

Uninformed Purchases


—July 24, 2018

Browse the Feature Archive.