The Plex Media Server experience is generally pretty smooth, unless you do a lot of streaming when you’re away from home or your server hardware is underpowered. Fortunately, it’s very simple to have Plex optimize your media for silky smooth playback.
Why You Would Optimize (and When You Shouldn’t)
The goal of this tutorial, taking advantage of Plex’s excellent optimization features, is a godsend for those who really need it, and a total waste of time for those who don’t. With that in mind, we’d definitely encourage you to read over this introduction section closely to determine if you even need to optimize anything in the first place.
The Plex experience centers around two apps: the server (which holds your media) and the client (the app with which you watch your media, usually on your TV, your phone, or other set-top box). The central Plex Media Server software manages nearly every aspect of the Plex experience–the clients merely act as a frontend for what the server is serving up. All the heavy lifting happens on the server side–the streaming, the transcoding of the streaming when necessary, etc.–and it is very CPU intensive.
If you have a good CPU (at minimum an Intel Core i3 processor or equivalent, preferably better) and a fantastic broadband connection with plenty of upload speed, then you probably don’t even need to optimize your media. If you’ve got great hardware and have never noticed anything amiss with your playback, this isn’t the tutorial for you.
On the other hand, there are a variety of scenarios where underpowered hardware or limited internet speed can really decrease the quality of your Plex experience. If you experience choppy playback, regular buffering, and other similar issues, optimization can save the day.
This is different than Plex’s transcoding, where it converts your video on-the-fly to the ideal format. Instead, Plex’s optimization will convert your media ahead of time, so when it comes time to watch the media there is no strain on the CPU–the video is already optimized and ready to send out to the client.
Now wait a minute, you might say, nothing’s free but guarantees, so what’s the catch? The catch is that the optimized video is stored as a separate video file with your other media and, you guessed it, takes up space. It’s not as much as the original video file (because the optimization process reduces both the video quality and file size to make streaming easier), but depending on the size of your library and the video settings you select for optimization, it can add up quick.
Let’s take a look at how you can enable optimization, tweak the settings, and keep a lid on run away disk usage so your optimization experiment doesn’t chew up all the free space on your media server.
How to Optimize Your Plex Media Server Files
Before we proceed, we’d highly recommend starting small with your experimentation. While you can jump right in and optimize your entire library with only a few clicks (once you know where to look), the optimization process is both CPU and storage intensive. You don’t want to churn through a massive library only to find out the settings you opted for don’t really meet your needs. So before you optimize everything, definitely pick a few movies or a season of a TV show to experiment with! (Seriously, start small!)
To get started with optimization, open up the web dashboard of your Plex Media Server. Select a video library. What kind of library (TV shows or movies) is irrelevant, as the optimization menus are identical for all video, whether you’re looking at optimizing a single season of a TV show or your entire movie collection.
To demonstrate the options, we’re going to optimize a single movie file to start: a beautiful rip we created of Raiders of the Lost Ark that is absolutely enormous, and thus will always be transcoded for mobile playback. You can pick any movie from your collection to follow along, but the bigger the better as you’ll more easily see the change in file size and video quality when you compare the before and after files.
When you find the media you want to optimize, hover over the entry and click on the three dots that appear in the lower right corner.
Select “Optimize” from the popup menu. (Make note of this, the “Optimize” option is never out in the open but is always tucked in the little “…” additional options menu.)
Here you’ll find the optimization menu. There’s two big things we want to look at.
First, you’ll find a dropdown menu for the video quality. Second, you’ll find the toggle, also a dropdown menu, for where the optimized versions are stored: in the folder with the original items, or all together in a separate /Plex Versions/ folder in a location of your choosing. Where you store the media is completely a personal choice. Maybe you want everything to stay together in the same folder, maybe you want to have a separate folder or drive with the optimized copies.
As far as the video quality goes, you can select from the following options, including “Custom” which offers finer control over the end product.
Let’s say we wanted to create a lower-quality-but-still-HD version. We’ll name this custom selection “Low HD Mobile”, select “Universal Mobile” from the middle drop down menu, and then “2 Mbps 720p”, which is the lowest HD setting we can use. A small note on that “Universal Mobile” option–there are also “Android”, “iOS”, “Xbox One”, and other presets that are supposed to specifically optimize the video for clients on those devices but, honestly, we’ve never noticed much of a difference when we use them.
Once you’ve made your selection, click the big orange “Optimize” button down in the corner. A popup window will indicate that your media is undergoing optimization.
If you follow the link in the popup window or click on the status icon in your upper navigation bar and then select “Conversion”, as seen below, you’ll see the progress. If you have more than one item in the queue, you can drag and drop the individual entries to move them to the top of the queue.
For large files, like high bitrate HD movies, the process is slow going, even on good hardware. The transcoding of just this one film took approximately 20 minutes on our multi-core server. So once you’ve ironed out what kind of settings you need for your optimization needs, this is a job best left run in the off hours.
Once the conversion is complete, we can take a peek to see how the file size changed. In our case, the original file was a 1080p video with a file size of 8.33GB; the optimized version is a 720p video with a 1.53GB file size. As we noted above, results will vary based on the settings you select, but in this instance we reduced the file size by 544% and the entire video is now pre-transcoded for future viewing. Both our network and our CPU have lighter loads to carry when we want to stream it from afar.
Now that we’ve performed our little experiment on a single file to show you how everything works, let’s take a look at how you can automate the whole process is useful ways.
Advanced Plex Optimization: Filters Make Life Easy
Selecting a single movie for optimization is great if you’re hand picking a film you want to watch away from home, but practically speaking (especially if you have multiple users on your Plex Media Server) manually optimizing things is tedious.
This is where a very, very, handy little trick comes in. When you’re browsing your Plex media collection you can, at any time, pull up the optimize menu and whatever you’re looking at, like a filtered search or a specific category, becomes the target of the optimization rule you’re about to create.
A perfect example of where this trick is useful is the “On Deck” TV shows category, which shows the upcoming television shows based on the series you’ve been watching. In the screenshot below, you can see that we’ve been watching Adventure Time and Aqua Teen Hunger Force. Rather than optimize every episode of the entire show, we tell Plex to only optimize upcoming episodes we haven’t watched yet. We’ll click on “On Deck” to get a closer look at the category.
In the detailed “On Deck'” view, click on the “…” icon and select “Optimize”.
Here you can set the quality you want as we just did, but you can also (now that you’re working with more than one item) toggle entries like “Unwatched Only” and “Limit to [X]” items, as seen below.
In addition to applying these kind of filters to the “On Deck” category, you can also apply them to the other dashboard categories like “Recently Added Television”, “Recently Added Movies”, as well as to any filter combination you can come up with in Plex.
In the screenshot below we’ve filtered our movies for “Date Added” which shows the most movies most recently added to the the server.
By clicking on the “…” icon and creating an optimization entry while the view is in this state, we can create an automated rule that will automatically optimize the most recent movies added to our movie library. Remember, whatever the view you have (and/or the filter you’ve applied to get that view) will be the base of the optimization rule you create.
Finally, there’s one last stop on our tour. In the Settings > Server section of the dashboard, you’ll notice there is a brand new entry in the left hand navigation column.
Now that you’ve started optimizing content, there is an “Optimized Versions” entry where you can see all the media you’ve optimized, delete individual entries, or delete all the optimized versions in one swoop with the big red button. The only thing to be aware of here is that when you delete an optimization rule, you delete all the optimized versions you made with it. So if you don’t want to wipe all the optimized versions (or just want to modify future ones or how long they are retained), hover over the rule and click on the pencil icon.
Then you can just edit the entry (as if you were just created it) instead of wiping out all the progress you’ve made (and all the CPU cycles you’ve burned in the process).
It takes a little bit to get the hang of optimizing things to pin down exactly what settings work best for your needs, but once you have some solid optimization rules in place the whole experience is fire and forget–no more stuttering video or buffering.