For my main server that I share with others (about 8 friends and family currently) I run PMS from the unRaid docker app on a Xeon E3-1230 v3 machine. With fiber internet speeds of 95 Mbps up and down and remote streams limited to 4 Mbps (720p), I figured I should be able to support around 6 remote users concurrently since processing power should be the only real limit and the guidelines say 1500 passmark per transcode to that quality vs. 9313 passmark for the Xeon. Unfortunately though I’m getting users reporting repeated buffering even when I can go back and check plexpy and see that there were only 1-3 other remote users watching at the same time.
So does anyone have any suggestions on how I can improve the situation or at least troubleshoot what’s going on? It doesn’t seem like I should be anywhere close to maxing out the processor yet but first I need to figure out if that’s actually what’s going on, and if it is try to figure out what to do about it. Thanks.
@ElJimador40 said:
the guidelines say 1500 passmark per transcode to that quality
You misunderstood that.
The passmarks required are mainly dependent on the bitrate and video codec of your source file.
If you have all BluRay ‘remuxes’ with about 30 mbps and more, you will need about 4000 passmark points per stream.
The ‘target’ resolution doesn’t matter that much, in comparison.
And these numbers are only valid, if we are talking about the source file using H.264(AVC) as video codec.
If you have VC-1 or even H.265(HEVC) instead, the required cpu power will be even higher.
@OttoKerner said:
You misunderstood that.
The passmarks required are mainly dependent on the bitrate and video codec of your source file.
If you have all BluRay ‘remuxes’ with about 30 mbps and more, you will need about 4000 passmark points per stream.
The ‘target’ resolution doesn’t matter that much, in comparison.
And these numbers are only valid, if we are talking about the source file using H.264(AVC) as video codec.
If you have VC-1 or even H.265(HEVC) instead, the required cpu power will be even higher.
Really? Well that would explain it I guess, since a good chunk of my movies including almost all the newer ones are full rip blurays saved as MKV. So you’re saying for content like that and at my current settings, 2 concurrent remote users is the max I should realistically expect? Because if that’s the case and with my internet speeds it sounds like I should probably just take off any limit to the remote quality and let them direct stream everything. It’s still going to be 2-3 concurrent users max depending on bitrates and at least they’ll get a better picture out if it, right? Actually that makes me think of another question: is the processing power required to transcode a 30+ Mbps 1080p MKV the same if the target resolution is, say, 20 Mbps 1080p vs. 4 Mbps 720p? Intuitively (to me at least) it seems like it should take less power the closer the target bitrate is to the source and if both are at least the same resolution to begin with. If that’s the case (??) then maybe there’s a sweet spot I’m just missing now on my users’ remote quality settings? Like maybe I should tell everyone to move up to 20 Mbps 1080p? Or put another way, are there any quality settings that would make it more likely that I could support at least 3 concurrent remote users watching high bitrate content than having everyone at 4 Mbps 720p now?
Thanks Otto. Looking forward to your feedback.
@ElJimador40 said:
So you’re saying for content like that and at my current settings, 2 concurrent remote users is the max I should realistically expect?
Precisely.
Because if that’s the case and with my internet speeds it sounds like I should probably just take off any limit to the remote quality and let them direct stream everything. It’s still going to be 2-3 concurrent users max depending on bitrates and at least they’ll get a better picture out if it, right?
For sure, if your internet upstream can handle it.
Actually that makes me think of another question: is the processing power required to transcode a 30+ Mbps 1080p MKV the same if the target resolution is, say, 20 Mbps 1080p vs. 4 Mbps 720p? Intuitively (to me at least) it seems like it should take less power the closer the target bitrate is to the source and if both are at least the same resolution to begin with. If that’s the case (??) then maybe there’s a sweet spot I’m just missing now on my users’ remote quality settings? Like maybe I should tell everyone to move up to 20 Mbps 1080p? Or put another way, are there any quality settings that would make it more likely that I could support at least 3 concurrent remote users watching high bitrate content than having everyone at 4 Mbps 720p now?
No, unfortunately not. All you can do is to “pretranscode” your content to ~ 12-14 mbps or so.
Maybe create some separate libraries which only has files which are pre-optimized for remote streaming.
The deciding thing is the source bitrate. If there is a difference between a 4mbps and a 20mbps target bitrate, the 4mbps might be a little bit “lighter” on cpu. But not much.
Thanks again Otto. Sounds like my options for supporting more concurrent remote users really boil down to either compressing all the full rip blurays on my shared server either via optimized versions or Handbrake or doing a major hardware upgrade around some of the top of the line processors out now. Either way I really do appreciate your insights on this. It’s been most helpful.