It’s been a long road to v1.0 for the Plex Media Server, and the fact that we’re not there yet shows all the big plans we have for it. To all of you who have been here from the start, thanks for sticking with us; to all the recent arrivals, welcome!
(Of course, one could also argue that when engineering is allowed to pick version numbers, they asymptotically approach 1.0, and when marketing gets to pick, you hit v20.0 in no time).
As you may know, one of the things available to PlexPass members is a forum in which people vote on their favorite feature requests. It’s a great way for us to see what the community wants, and – let’s face it – it’s especially valuable data coming from those who support us financially.
That data, combined with our own roadmap, drives what we work on. In general, the priorities of our community are very well aligned with our own, and nothing better shows than the fact that this new release includes the top two requested features. Without further ado, let’s jump in and explore.
Since the inception of the media server, we’ve actually had the concept of multiple users internally, it’s just never been fleshed out or exposed. With this release, we’re changing that. As you know, we already have flexible sharing policies via myPlex (entire library, single section), but those shared users have never gotten their own view state (which drives On Deck, Unwatched, Recently Viewed, etc.) or the ability to select audio stream and subtitles. In this new release, every user gets their very own view state. This applies to people inside the home too, of course. You can create a myPlex account for your kids, and only give them access to certain sections, which is a first baby step towards our vision of rich parental controls.
Client-side changes to enable multiuser mode have been silently made in recent updates, so multiuser works today with Plex/Web, iOS, Android and Roku apps. Updates for our other apps will be coming soon.
This feature is only enabled for servers run by PlexPass holders. Also, because of legacy apps, the permissions for a local client which isn’t signed in or hasn’t been multiuser enabled yet (e.g. Plex Home Theater) are currently “everything”. As the 0.9.8 series progresses, we’ll finish locking things down!
Lastly, if you decide to move back to an earlier release without multiuser support, that works fine, but all users other than the user owning the server will lose their view state.
The other feature that is requested more than any other is the ability to see who is playing what from a server. This is especially important when multiple users are accessing the server. We’ve added rich functionality to allow monitoring your server, which is available in Plex/Web (or of course via API). When your server starts streaming, you’ll immediately see a notification in your Plex/Web dashboard which tells you what’s playing, and if it’s from a shared user, who’s playing it.
If you dive into the Now Playing screen, you can see even more details. And with a click of the play button, you can start playing the media locally, starting exactly where the other person is.
This feature is also only available to PlexPass members.
Media Index Files
Here’s a feature we’ve been meaning to add for a while, but have only now gotten around to. When we add files to your library, we do sophisticated media analysis, in order to optimize transcoding and other such things. In this new release, we optionally index the entire video file, creating an index file which contains little frame grabs across the entire video. Why on earth would we want to do that? Well, for starters, on the Roku, it now means that seeking now allows “trick mode”, which displays a graphical preview as you seek. Super cool.
Also, if you have created index files for media, the Now Playing feature in Plex/Web comes to life, and actually shows you a graphical representation of where the playback is, with time-appropriate thumbnails cross-fading.
This index file support is PlexPass only, and considered somewhat experimental. It takes a long time to create an index file, so by default they’re disabled. You can generate them on the command line (using the new –index action), or else go into Library advanced settings and enable it there.
We’ve taken the first step here, the media server now also listens on port 32443 for HTTPS connections. We’ll be allowing publishing the HTTPS connection to myPlex as soon as we update the clients, and then all communication between client and server will be encrypted.
Full set of changes:
- Multiuser mode.
- Now Playing.
- Media index files.
- Use new write ahead log in database, speeds up lots of things.
- Tear out Bonjour.
- Tear out the old Cocoa UI.
- Don’t let past timeline updates override future ones. Helps Plex/Sync.
- Improved notifications for sync, makes Plex/Web activity view faster.
- Fix titles in Plex/Web showing “item xxx” during a scan.
- Improved granularity of transactions in database access.