Under Settings > Quality > Plex Web I have had the video quality set to “2Mbps, 720p” presuming that this applied when e.g. I was streaming a video from my library to my phone.
Normally I watch my videos either on a smart TV or using the Plex Media Player in a browser on my desktop PC (which is a couple of meters away from my NAS and has an equally large screen). All my videos are 1080p MP4s and all were generated from VidCoder using exactly the same options.
I have never seen a problem with quality until today, when one particular show streamed in incredibly poor quality on my PC. It plays in 1080 on the TV, and the video files on the NAS play at 1080 if I view them with a standalone player like VLC. The problem is only in the browser on the PC, and (so far) only for this show.
I can get 1080 in the browser by changing the quality to “8Mbps, 1080p”, but I assume that will also mean a huge increase in bandwidth if I stream to my phone or laptop when I’m away from home.
The relevant part of the log contains these lines:
[Now] Device is Chrome (Chrome).
[Now] Profile is Web
[Now] Updated play state for /library/metadata/91290.
[Transcode] Codecs: hardware transcoding: testing API vaapi
[Transcode] [FFMPEG] - Format 0x32315659 → yuv420p.
[Transcode] [FFMPEG] - Format 0x30323449 → yuv420p.
[Transcode] [FFMPEG] - Format 0x3231564e → nv12.
[Transcode] [FFMPEG] - Format 0x32595559 → yuyv422.
[Transcode] [FFMPEG] - Format 0x59565955 → uyvy422.
[Transcode] [FFMPEG] - Format 0x48323234 → yuv422p.
[Transcode] [FFMPEG] - Format 0x58424752 → rgb0.
[Transcode] [FFMPEG] - Format 0x58524742 → bgr0.
[Transcode] [FFMPEG] - Format 0x30313050 → p010le.
[Transcode] Codecs: Testing with profile ‘Main’
[Transcode] Scaled up video bitrate to 5200Kbps based on 1.500000x fudge factor.
[Transcode] MDE: Selected protocol dash; container: mp4
[Transcode] MDE: analyzing media item 143389
[Transcode] MDE: E4 - Episode 4: Direct Play is disabled
[Transcode] MDE: E4 - Episode 4: media must be transcoded in order to use the dash protocol
[Transcode] MDE: E4 - Episode 4: no direct play video profile exists for http/mp4/h264
[Transcode] MDE: E4 - Episode 4: no direct play video profile exists for http/mp4/h264/aac
[Transcode] Episode 4 - video.bitrate limitation applies: 3467 > 2000
[Transcode] Episode 4 - video.bitrate limitation applies: 3467 > 2000
[Transcode] MDE: E4 - Episode 4: no remuxable profile found, so video stream will be transcoded
[Transcode] Episode 4 - video.bitrate limitation applies: 3467 > 2000
[Transcode] MDE: Cannot direct stream video stream due to profile or setting limitations
[Transcode] Codecs: testing h264 (decoder) with hwdevice vaapi
[Transcode] Codecs: hardware transcoding: testing API vaapi
[Transcode] [FFMPEG] - Format 0x32315659 → yuv420p.
[Transcode] [FFMPEG] - Format 0x30323449 → yuv420p.
[Transcode] [FFMPEG] - Format 0x3231564e → nv12.
[Transcode] [FFMPEG] - Format 0x32595559 → yuyv422.
[Transcode] [FFMPEG] - Format 0x59565955 → uyvy422.
[Transcode] [FFMPEG] - Format 0x48323234 → yuv422p.
[Transcode] [FFMPEG] - Format 0x58424752 → rgb0.
[Transcode] [FFMPEG] - Format 0x58524742 → bgr0.
[Transcode] [FFMPEG] - Format 0x30313050 → p010le.
[Transcode] Codecs: Testing with profile ‘Main’
[Transcode] Scaled up video bitrate to 5200Kbps based on 1.500000x fudge factor.
[Transcode] MDE: Series - Episode 4: selected media 0 / 143389
[Transcode] Streaming Resource: Calculated bandwidth of 2268kbps exceeds bandwidth limit. Changing decision parameters provided by client to fit bandwidth limit of 2000kbps
[Transcode] Streaming Resource: Determining preferred transcode encoders through transcode only decision.
[Transcode] Codecs: testing h264 (decoder) with hwdevice vaapi
[Transcode] Codecs: hardware transcoding: testing API vaapi
[Transcode] [FFMPEG] - Format 0x32315659 → yuv420p.
[Transcode] [FFMPEG] - Format 0x30323449 → yuv420p.
[Transcode] [FFMPEG] - Format 0x3231564e → nv12.
[Transcode] [FFMPEG] - Format 0x32595559 → yuyv422.
[Transcode] [FFMPEG] - Format 0x59565955 → uyvy422.
[Transcode] [FFMPEG] - Format 0x48323234 → yuv422p.
[Transcode] [FFMPEG] - Format 0x58424752 → rgb0.
[Transcode] [FFMPEG] - Format 0x58524742 → bgr0.
[Transcode] [FFMPEG] - Format 0x30313050 → p010le.
[Transcode] Codecs: Testing with profile ‘Main’
[Transcode] Scaled up video bitrate to 5200Kbps based on 1.500000x fudge factor.
[Transcode] Codecs: testing h264 (decoder) with hwdevice vaapi
[Transcode] Codecs: hardware transcoding: testing API vaapi
[Transcode] [FFMPEG] - Format 0x32315659 → yuv420p.
[Transcode] [FFMPEG] - Format 0x30323449 → yuv420p.
[Transcode] [FFMPEG] - Format 0x3231564e → nv12.
[Transcode] [FFMPEG] - Format 0x32595559 → yuyv422.
[Transcode] [FFMPEG] - Format 0x59565955 → uyvy422.
[Transcode] [FFMPEG] - Format 0x48323234 → yuv422p.
[Transcode] [FFMPEG] - Format 0x58424752 → rgb0.
[Transcode] [FFMPEG] - Format 0x58524742 → bgr0.
[Transcode] [FFMPEG] - Format 0x30313050 → p010le.
[Transcode] Codecs: Testing with profile ‘Main’
[Transcode] Scaled up video bitrate to 5200Kbps based on 1.500000x fudge factor.
[Transcode] Streaming Resource: Reducing playback quality for 1904kbps stream bitrate: video resolution to 720x406, audio channels to 2, quality to 41
Clearly the 2Mbps limit is kicking in and causing a huge downgrade in quality, but the question is why isn’t this happening for every other show I try to watch? And (if the answer is to use the high quality setting that I’ve changed to now) how do I throttle the quality of streaming when I’m at a remote location without causing this problem when I’m at home?
Cheers
T