How/when Plex decides to transcode and to what quality

Hi all,

I have general questions on all the logic which Plex performs to determine exactly what/how video/audio is streamed (i.e. direct play, direct stream, transcoding rates etc.).

So basically I understand (from https://support.plex.tv/hc/en-us/articles/200250387-Streaming-Media-Direct-Play-and-Direct-Stream) that Direct Play is where there’s 100% client compatibility with the file including the container and Direct Stream is where the streams are compatible but the container isn’t, so the server needs to re-containerize them before sending. Additionally, it might be able to use a stream raw, transcode the other and send.

So what happens in the cases above where the client is compatible with some part of the native file (so either direct play or direct stream comes into play) but the connection isn’t fast enough? I have examples where I see in my activity info for a video where, for example, the Video is direct stream and the audio is transcode, but the video playing is definitely choppy, which I assume is bandwidth issues. At some point does the server give up on the direct stream and drop to transcoding?

My other question is regarding the bit rate settings for the Plex Web player (https://support.plex.tv/hc/en-us/articles/200289408-Plex-Web-App-Settings). I’ve always had the impression, perhaps wrongly, that Plex dynamically monitored your connection and transcoded based on the bandwidth it thinks you have. If this is not the case then these settings now make sense, but if its not the case then are these settings the ‘max’ Plex will use to this client? Additionally, I would presume that if you select a quality here that is lower than the source rates, then Plex will not use Direct Play/Direct Stream?

Thanks in advance!

So what happens in the cases above where the client is compatible with some part of the native file (so either direct play or direct stream comes into play) but the connection isn’t fast enough? I have examples where I see in my activity info for a video where, for example, the Video is direct stream and the audio is transcode, but the video playing is definitely choppy, which I assume is bandwidth issues. At some point does the server give up on the direct stream and drop to transcoding?

The server isn’t bandwidth aware so it’s up to the client to select a quality that fits the available bandwidth. The server will continue serving the file unless it gets to a point where the client completely goes away.

My other question is regarding the bit rate settings for the Plex Web player (https://support.plex.tv/hc/en-us/articles/200289408-Plex-Web-App-Settings). I’ve always had the impression, perhaps wrongly, that Plex dynamically monitored your connection and transcoded based on the bandwidth it thinks you have. If this is not the case then these settings now make sense, but if its not the case then are these settings the ‘max’ Plex will use to this client? Additionally, I would presume that if you select a quality here that is lower than the source rates, then Plex will not use Direct Play/Direct Stream?

No, there is currently no adaptive streaming so the quality will not change unless changed by the client. When selecting a quality setting lower than the original then it will transcode to lower the bitrate.

I’m also moving this discussion to a more related forum section.

Thanks for this, so the server will transcode either if there’s a stream incompatibility or if the client has selected a bitrate < the native bit rate.

Do you know if any clients automatically change the bitrate they request based on bandwidth limitations?

@slyadams said:
Thanks for this, so the server will transcode either if there’s a stream incompatibility or if the client has selected a bitrate < the native bit rate.

Do you know if any clients automatically change the bitrate they request based on bandwidth limitations?

I’m interested in the answer to this question as well - I’m trying to work out if I need to turn the bandwidth settings in clients (e.g. an Amazon Fire in a room with poor wi-fi coverage) to find the best Mbps settings, or will the clients auto-adjust themselves?

@DZMM said:
… or will the clients auto-adjust themselves?

This is unfortunately not possible in Plex.
You need to adjust the bitrate manually in the client.

@OttoKerner said:

@DZMM said:
… or will the clients auto-adjust themselves?

This is unfortunately not possible in Plex.
You need to adjust the bitrate manually in the client.

Thanks - I did this on my daughter’s Fire TV which has poor wi-fi reception. I was surprised that dropping to 2Mb on a 32" TV looked reasonable for kids cartoons. Dropping the bandwidth has solved the problem and it’s made use lower sync settings for my phones and tablets as it’s made me realise I was wasting CPU time and disk space creating the files.