Direct Play

Server Version#: Ubuntu Server 18.04.1 LTS
Server Version#: 1.13.8.5395

I’m having two issues with my server. The first issue; Direct play will not work outside of the network sometimes. I’ve attached a picture for example.

A user has a Amazon FireTV and it’s transcoding into the same format the movie is already in instead of direct playing it. The second issue, I have 1Gbps upload and download. Due to this, I set my internet streaming quality to maximum. It will accept the change and stay for a few days and then revert back to 2Mbps. This may be the reason why direct play is transcoding when it shouldn’t be.

Is anyone able to assist?

I’m sorry I didn’t see this until now. It was under NAS and devices. I have moved it over to Computers for you since you’re running Ubuntu.

What you’re describing is a firewall blockage scenario. Typical causes are:

  1. Not having port 32400 open inbound (Remote Access) to come through your modem/router
  2. DNS rebinding not allowing *.plex.direct private domain however this normally impacts usage in-home only.

It sounds like the means by which you’ve performed the port forwarding isn’t staying stable.

Is the server’s IP static / reserved such that the server LAN IP is effectively static?

ChuckPA, thanks for replying. Port 32400 is open from the firewall to the server. I can see port 32400 is open when looking from the outside in (WAN to LAN). The server has a static IP address and it’s set on the Ubuntu server.

I would like you do do the following:

  1. Verify you have DEBUG logging enabled (VERBOSE is off)
  2. If Remote Access is enabled, disable it.
  3. Wait 5 minutes for all the remote connection sockets to close just in case any stragglers
  4. Enable Remote Access
  5. Wait 60 seconds
  6. Collect the logs (Settings - Server - Help - Download Logs)
  7. Attach the ZIP file

I will see what it tells us

ChuckPA - Please see the attached ZIP file.

Plex Media Server Logs_2018-09-24_18-02-29.zip (3.0 MB)

Can you provide the XML for this movie? There are parameters within the file that can cause it to trasncode to the same codec. Too many ref frames, too high a profile, too high a bitrate.

What client are you referring to? Also, you setting the quality does not impact your user. The quality is controlled at the client end.

Not sure how to upload the XML code as it’s more than the allowed characters.

Save it as a text file and upload the text file.

I looked at your log and I’m confused. In your images, you show what looks like Pitch Perfect and Pixels, but I don’t see either of these in your log. You log shows Sherlock Gnomes and it is direct streaming the video and transcoding the audio.

Also, I’m not sure if I was clear on this part. You said you set the quality. That won’t affect your users. The quality setting only affects the client you set it on. Every client has their own quality settings, so you setting it on your end has no affect on your user’s Fire TV.

If you can get the log from your user’s FireTV, that would be best.

I’ve attached the document.

Pixels XML.txt (57.6 KB)

The log that I attached earlier in this thread was for troubleshooting a possible issue with remote access. I logged into my Plex when replying to your post and saw it happening again, but with a different movie and I thought it would be best to use it as another example.

The quality - I’m setting the quality in Plex through the GUI under Settings -> Quality -> Internet Streaming. I set the quality to maximum, because I have 1Gbps up/down. The change will save, but eventually it will return to 2Mbps, 720p. I cannot get a log from the FireTV stick, but the user has 200Mbps download.

I’m under the impression that if I go under Settings -> Quality -> Internet Streaming and set it to maximum, when a user with good internet speed watches a movie, the movie will be played back at the highest rate possible for the video which typically is the original quality and typically not transcoded.

Wrong. You are missing something here.

Settings → Web → Quality

That setting is for the Web client on your computer. That only affect you playing videos from that browser session. Your user’s FireTV has it’s own settings. You cannot control that aspect.

but the user has 200Mbps download.

Their internet speed is good, but you need to check what setting they are using. I saw during 1 playback sessions to a FireTV device, not sure if it was for them or another user, but I did see a 12Mbps limit being applied.

Oh and for your settings reverting. Are you using the regular Web app or are you using the desktop version of PMP? I recently saw an issue with PMP that could cause the quality setting to change. I’m looking into that issue.

Thanks for clarifying. Now that I understand that issue, what about the issue of transcoding a file into the same format?

I believe I know why this is happening. I went to my friends house tonight and look at his settings on the FireTV. It’s set to 4Mbps 720p, but the movie is 1080p. Plex is having to transcode the movie, because it’s being played at 720p. Does this sound correct?

The setting a user chooses in their app is a cap “Do not allow bitrates higher than X”, not a “Play all videos at X bitrate”. So any video that is over that cap will be transcoded to meet the bitrate. So a 10 Mbps H264 file will get transcoded to a 4 Mbps H264 file. So to you it may look like it is transcoding unnecessarily since all you see is H264 to H264. You don’t see the bitrate info. Your friend can see this. In the Fire TV app there is an option to enable the information overlay. This will provide some text in the upper left corner of the screen when ever the player control buttons are shown on screen. This overlay will indicate if a video is transcoded and usually why. For bitrate limits, it will say something along the lines of “Bitrate exceeds user set limit”.

Thank you for helping me understand what has been going on. I believe I can mark this thread as solved.

Thanks to the resolution in this post I have revised my thought process on this, but I was under the same impression as you. It totally makes sense to put “ultimate” streaming quality control on the client side, given that I may serve up my content (via my 1Gbps / 1Gbps fiber connection) to any number of clients who may happen to find themselves on a network with a variety of conditions (think mobile or tablet on crappy public WiFi vs their home connection which is 1Gbps / 1Gbps). I definitely want that granularity of control when I’m roaming… I just didn’t realize that my (geographically static) FireTV 4K clients on 200-400 Mbps connections were somehow automatically configured for 2Mbps limits. I was pulling my hair out until I saw this post!

@MovieFan.Plex… I personally set up the Fire TV 4K clients involved in my similar issue (at my dad’s house), but I don’t recall setting this limit of 2Mbps. What I do firmly believe is that “Automatically Adjust” was enabled… and I made a series of changes to my Plex server (including which host it was on, and therefore the destination internal IP address) in the past few weeks. Additionally, due to my host OS firewall and router firewall config, I was getting warnings of “unable to establish direct connection” even within my own local network. I’ve since resolved those issues, but perhaps you could clarify something for me…

  1. Given what I’ve stated above, as well as the “Automatically Adjust” being turned on, is the 2Mbps cap perhaps the end result of the automatic adjustments?

  2. If so, should I presume I could have avoided the issue entirely by disabling automatic adjustment? (I reckon my clients might not have been able to connect while my firewall was mis-configured, but I think I’d prefer to have know there was an issue as opposed to limping along).

  3. Also, since my firewall /connectivity issues are now resolved: If 1 is true, and I hadn’t manually changed the streaming cap on the client side, would it have corrected itself over time? I know it didn’t correct itself immediately (I had to manually adjust the client to realize Direct Play)… but would the client realize this eventually? If so, how long would it be (hours / days / weeks)? This would be useful information if this ever comes up again, as I’d be able to make an informed decision of whether or not to take the time to intervene…

In any event, thanks for a killer (FREE!) product… and for you guys’ responsiveness in this forum!

EDIT: The reason I even started looking for this resolution was that I noticed a lot of transcodes in my Tautulli logs (seriously, folks… GET Tautulli, it’s the bee’s knees). My dad has poor vision, and didn’t immediately notice the lesser quality stream (or didn’t know it was supposed to be 1080p), and my server is pretty beefy… but for someone with a low end NAS hosting Plex, the answers to my above questions may be very pertinent…

2 Mbps is the default setting for streaming over the internet. You may not have changed it from the default. With Automatically Adjust enabled, the setting chosen will be the starting bitrate. Playback will start at that and then PMS will change the bitrate up or down based on the connection. The first switch will take 20-60 seconds, so if you are impatient you will only see the initial starting rate.

No, you needed to change the internet streaming quality setting.

No, since you had the quality set to something, it will always use that value until the 20-60 seconds have passed before the quality adjusts. It would have been better to set it at maximum then the adjustment would go down if needed, but if not, you would have higher quality from the beginning.