I’ve done some testing in my own environment since I was also curious. The “Transcode Quality” value seems to affect (primarily?) these three parameters passed to the Plex Transcoder (ffmpeg):
- ‘qp’ - Quantization Parameter. Broadly, it controls the encoding quality (lower = better quality). It has an effect on how much compression is applied.
- ‘maxrate’ - Constrains the maximum output bitrate for variable bitrate encodes.
- ‘bufsize’ - Broadly, control the amounts of buffered data used for calculating the average bitrate. A smaller buffer results in more frequent recalculations, potentially (negatively) affecting output quality.
Plex appears to use a fairly linear application of these parameters as the ‘transcoder quality’ is increased:
- 0: qp=25, maxrate=8000 Kbps, bufsize=16000 Kbps
- 25: qp=22, maxrate=11030 Kbps, bufsize=22060 Kbps
- 50: qp=20, maxrate=14061 Kbps, bufsize=28122 Kbps
- 99: qp=15, maxrate=20000 Kbps, bufsize=40000 Kbps
(I didn’t test 75. Come to think of it, I probably should have tested 24 and 49 instead of 25 and 50.)
You can have a look at the FFMPEG docs to get a better understanding of how these parameters affect encoding quality/file sizes (the above was an extremely broad overview). Also bear in mind that this is still very much an experimental feature (both encoding to H.265 and encoding video while recording, in general). So the algorithms used and the values specified may change over time.