marmeladmax Posted April 14, 2021 Share Posted April 14, 2021 (edited) I'm running Unraid 6.9.2 on an Intel J4105. I've been trying to get HW transcoding in Plex to work correctly, with mixed results. h264 seems to work fine but HEVC/h265 doesn't seem to be working. Here are the steps I've taken so far: Added "modprobe i915" and "chmod -R 777 /dev/dri" to go file. Added "--device=/dev/dri:/dev/dri" as extra parameter for Plex container. Installed plugin "Intel GPU TOP". Enabled HW transcoding in Plex server settings. The attached screenshots are from Plex dashboard, Unraid CPU and GPU usage, Tautulli and the file information in Plex. The last screenshot is CPU/GPU usage while transcoding a h264 file, which seems to utilize the GPU. What I'm concerned about is the GPU usage seems to be very low while CPU usage is high (see attached screenshot), which I feel like would indicate that something isn't right, as HW transcoding should utilize Intel QuickSync? Or is my setup too weak to transcode this file? Edited April 14, 2021 by marmeladmax Quote Link to comment
John_M Posted April 14, 2021 Share Posted April 14, 2021 The screenshots indicate that both video decoding and video encoding are hardware accelerated. However, the GPU can only transcode the video stream. What it can't do is re-wrap from MKV to MP4, transcode the audio or burn in subtitles - they all use the CPU and the CPU also has to feed the GPU with data. I don't know what you were expecting to see but it looks about right to me. Try turning off the subtitles and see how much of a difference it makes. 1 Quote Link to comment
marmeladmax Posted April 14, 2021 Author Share Posted April 14, 2021 9 minutes ago, John_M said: The screenshots indicate that both video decoding and video encoding are hardware accelerated. However, the GPU can only transcode the video stream. What it can't do is re-wrap from MKV to MP4, transcode the audio or burn in subtitles - they all use the CPU and the CPU also has to feed the GPU with data. I don't know what you were expecting to see but it looks about right to me. Try turning off the subtitles and see how much of a difference it makes. Removing the subtitles does seem to work. I understand that the GPU only can transcode the video stream, but what I think is strange is that the GPU load is so low. Shouldn't the load be higher when transcoding video? However, removing subtitles (and using an external srt) seems to bump up the GPU usage to expected levels and the video now plays fine. Quote Link to comment
John_M Posted April 14, 2021 Share Posted April 14, 2021 1 minute ago, marmeladmax said: what I think is strange is that the GPU load is so low. Shouldn't the load be higher when transcoding video? The HEVC stream is using about half of its capacity and it's only 24 fps material. It would struggle with 60fps. Quote Link to comment
marmeladmax Posted April 14, 2021 Author Share Posted April 14, 2021 3 minutes ago, John_M said: The HEVC stream is using about half of its capacity and it's only 24 fps material. It would struggle with 60fps. No, the GPU usage is around 4 % when trying to play and transcode h265 with vobsub. Quote Link to comment
fitch Posted May 4, 2021 Share Posted May 4, 2021 Hello, Do you have found a solution to read a video with subtitles? Because I've the same thing, buffering when I add the subtitles (SRT or PGS). Quote Link to comment
GreenEyedMonster Posted August 9, 2021 Share Posted August 9, 2021 (edited) Ok, I'm having the same issue with my 1070 GTX as it's barely being used and buffering is happening on 4k transcodes. I'm at a loss on what to do...max I've seen is 13% usage. Edited August 9, 2021 by GreenEyedMonster Quote Link to comment
sodennis Posted August 13, 2021 Share Posted August 13, 2021 (edited) I was also encountering buffering issues in Plex even though it was using hardware transcoding. The GPU had low usage, too. After searching around, It looked like there are issues with the iHD Intel drivers with my Gemini Lake j4115 CPU. After deleting the iHD driver, the buffer problem disappeared for me. If you on Gemini Lake or other Intel CPU using QuickSync, try running this to remove the driver in the Plex container. docker exec --it bash rm /usr/lib/plexmediaserver/lib/dri/iHD_drv_video.so To fix this permanently, download the following script to /appdata/plex/custom-cont-init.d/ - https://gist.github.com/nairbspace/6afed439e244332f088fbee6b2bbd973 - https://github.com/linuxserver/docker-plex/issues/228 Edited August 13, 2021 by sodennis Quote Link to comment
opentoe Posted August 13, 2021 Share Posted August 13, 2021 I made a ramdisk just for transcoding and it's almost instant. You can use a ramdisk for so many things. That's why I always install lots of memory in every machine I have. This program here rocks. https://sourceforge.net/projects/imdisk-toolkit/ Quote Link to comment
seifer Posted April 25, 2022 Share Posted April 25, 2022 On 8/13/2021 at 8:12 AM, sodennis said: I was also encountering buffering issues in Plex even though it was using hardware transcoding. The GPU had low usage, too. After searching around, It looked like there are issues with the iHD Intel drivers with my Gemini Lake j4115 CPU. After deleting the iHD driver, the buffer problem disappeared for me. If you on Gemini Lake or other Intel CPU using QuickSync, try running this to remove the driver in the Plex container. docker exec --it bash rm /usr/lib/plexmediaserver/lib/dri/iHD_drv_video.so To fix this permanently, download the following script to /appdata/plex/custom-cont-init.d/ - https://gist.github.com/nairbspace/6afed439e244332f088fbee6b2bbd973 - https://github.com/linuxserver/docker-plex/issues/228 Hi, I cannot find any folder named "/appdata/plex/custom-cont-init.d/", should I create it there or should it exists already? Quote Link to comment
White_King Posted May 26, 2022 Share Posted May 26, 2022 On 8/13/2021 at 8:56 AM, opentoe said: I made a ramdisk just for transcoding and it's almost instant. You can use a ramdisk for so many things. That's why I always install lots of memory in every machine I have. This program here rocks. https://sourceforge.net/projects/imdisk-toolkit/ You are not impliyng that @sodennis solution does the same, correct? Because I/O doesn't seem to be the problem. I'm running a Win10 VM with plex using hardware acceleration (transcoding) on a NVIDIA Quadro P2000 and this are the stats: CPU - 15% Memory - 19% Disk - 0% Ethernet - Sent: 20.3 Received: 57.8 (I have a 1 gb internet connection but I'm testing locally) GPU - 18% : 3D - 1% Copy - 0% Video Encode - 7% Video Decode - 18% Dedicated GPU memory usage - 1GB out of 5 Shared GPU memory usage - 0.2 out of 8GB Reading from the array at 14 MB/s maximum I have the understanding that the max is at least 80 MB/s from an array full of 7200rpm HDDs I have no idea why whould it buffer Quote Link to comment
opentoe Posted July 14, 2022 Share Posted July 14, 2022 Plex ain't perfect, that's why I have to switch over to my Dune Media Player when some content cannot be player via Plex. Power up the Dune, plays fine in all direct modes. Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.