Server Version#: 1.31.0.6654
Player Version#: (Playing on same PC on browser)
So i’ll try to include everything I can think, but let me know if you need more.
PC running Plex
Intel 12th Gen i7-12700k
32GB RAM
Disk : Samsung SSD 980 Pro 2TB
GPU: RTX 3070
Video Information
Bitrate: 36951 kbps
Resolution: 4k
Container: MKV
Frame Rate: 24p
Video Profile: main 10
Size: 31GB
Codec: HEVC
Bit depth: 10
Audio Codec: TRUEHD 4305kbps
HDR: HDR10
Issue
When I start the video on my browser (on the same PC the server is running), the video starts with a buffering of 15-20 seconds, during which the CPU tops at 20%, never going above that.
Then the video will be fluid for a few seconds, then stops again for buffering, and the CPU is still at 20% (never higher).
This behaviour also occurs on Android Plex and on my LG TV Plex app.
Debugging Steps
I tried turning on/off the HW transcoding
I tried turning on/off the direct play
I ran the video on VLC, without any issues at all (ruling out issues with the source file)
I changed the Plex processes priority to ‘high’
I feel like if Plex would use my HW better, it wouldn’t buffer as much.
I looked at the logs, but nothing in there seems interesting enough, no warnings or errors whatsoever.
What are the next debugging steps in your opinion ?
For playback on a desktop, use Plex Desktop for Win/Mac/Linux (download, documentation). It is much more capable than Plex Web. It direct plays most formats, including HDR10 video and TrueHD audio.
With the Plex LG app, be mindful of the impact of using subtitles. With the Plex LG app, if the media is direct streaming, such as when audio is transcoding, enabling any form of subtitle results in a video transcode. This means avoiding subtitles when playing media with TrueHD and possibly DTS audio (LG dropped support for DTS in 2020).
Make sure you are running the 64-bit version of Plex Media Server (download). It supports hardware accelerated tonemapping with Nvidia GPUs (reference). Additionally, it supports zero-copy transcoding (release notes), which improves transcoder throughput, as the system has to move less data between the GPU RAM and system RAM.
You can install the 64-bit version on top of the 32-bit version. The installer will recognize the 32-bit version and uninstall it.
If you are unsure which version is currently in use, look at the installation location. PMS 32-bit installs in c:\windows\program files (x86). PMS 64-bit installs in c:\windows\program files.