PMS has stopped doing hardware transcoding on Intel UHD 630

Server Version#: 1.25.2.5319
Player Version#: 4.71.0 (Web)
I have noticed that my PMS has stopped doing hardware transcoding. It is running on Windows Server 2019 with Intel UHD 630 graphics using the latest drivers (Windows DCH Drivers v30.0.101.1069) which it used to work on (tested about a month ago).
So I think it has stoped in the last month approx but I am not sure exactly when (Tautulli does not record this as far as I can see) as it falls back to software transcoding and from a client perspective you don’t notice the difference.
How can I start to diagnose where the problem might be? Logs? Attached is a Plex Transcoder Statistics log.
I noticed that recent PMS updates ( 1.25.0.5220 and later) have made fairly significant changes to transcoding. Could this be playing a part?
Plex Transcoder Statistics.zip (7.1 KB)

2 Likes

Anyone? Please!

I want to bump this. I am also seeing this issue. Also Intel UHD 630, and nothing will hardware transcode.

1 Like

I am also having this issue in the last week or two.
Using a Dell with Intel UHD 630, latest drivers, Windows updates, BIOS etc.
I am running on Windows 11 now.

1 Like

Came here to ask this exact question. I’ve been running an old i7-3770 as my Plex server for over 2 years and hw transcoding has been working great even though the version of QuickSync is ancient on this chip. However, if I upgrade Plex beyond version 1.24.4.5081 then hw transcoding stops working for me and I find ā€œCannot load nvcuda.dllā€ in my logs. It seems to be ignoring my iGPU and looking for an nvidia card?

I have tried installing newer drivers and one link that mentioned the Intel SDK but nothing works except reverting to an older version of Plex.

Just wondering if anyone out there is running a version of Plex newer than 1.24.4.5081 and hw transcoding still works with your Intel iGPU? I’m wondering if this is a bug or if they finally cut support for this old chip?

Any info appreciated.

Thanks.

Bump, I am also having this issue.

1 Like

As I undetsand PMS v1.24.5.5173 works OK. 1.25+ brought in transcoder changes which appears to have broken something for some users.

1 Like

Bump. The silence from Plex is deafening me.

3 Likes

Agree :frowning:

Another bump. Any response would be helpful. Anyone found a workaround?

Turn of h/w transcoding or back rev PMS to 24.x.

I tried rolling back to 1.24.5.5173 but it still seems to have the same issue (attempting to load CUDA and nvenc), what version are you using specifically that doesn’t seem to have a problem?

Never mind. I see above that MoosLips mentioned any version after 1.24.4.5081 as having the bug. I will roll back to that. Thanks everyone.

I am on the latest PMS and graphics drivers and still no h/w transcoding on UHD 630.
This is an extract from the Plex transcode log. The 1st ā€œVariant idā€ shows "transcodeHwEncodingTitle=ā€œIntel (QuickSync)ā€ as if it will h/w transcode it then you immediately get another ā€œVariant idā€ which is exactly the same except now missing h/w transcoding parts out:

<Variants>
<Variant id="5d47965b-144d-47de-bb75-840bfe16beb6" targetBitrate="22301" context="streaming" sourceVideoCodec="hevc" sourceAudioCodec="eac3" videoDecision="transcode" audioDecision="transcode" protocol="dash" container="mp4" videoCodec="h264" audioCodec="aac" audioChannels="2" transcodeHwRequested="1" transcodeHwDecoding="dxva2" transcodeHwEncoding="qsv" transcodeHwDecodingTitle="Windows (DXVA2)" transcodeHwEncodingTitle="Intel (QuickSync)" transcodeHwFullPipeline="1">
<Media id="1722170" videoProfile="main" audioChannels="2" audioCodec="aac" bitrate="21239" container="mp4" duration="2985984" height="1080" optimizedForStreaming="1" protocol="dash" videoCodec="h264" videoFrameRate="24p" videoResolution="1080p" width="1920" selected="1">
<Part deepAnalysisVersion="6" id="1728808" requiredBandwidths="10710,8154,6411,5854,5607,5607,5607,5607" videoProfile="main" bitrate="21239" container="mp4" duration="2985984" height="1080" optimizedForStreaming="1" protocol="dash" width="1920" decision="transcode" selected="1">
<Stream bitrate="20983" codec="h264" default="1" displayTitle="1080p (HEVC Main)" extendedDisplayTitle="1080p (HEVC Main)" frameRate="23.975999832153320" height="1080" id="3412928" requiredBandwidths="9941,7387,5642,5086,4843,4843,4843,4843" streamType="1" width="1920" decision="transcode" location="segments-video" />
<Stream bitrate="256" bitrateMode="cbr" channels="2" codec="aac" default="1" displayTitle="English (EAC3 5.1)" extendedDisplayTitle="Surround (English EAC3 5.1)" id="3412929" language="English" languageCode="eng" languageTag="en" requiredBandwidths="767,767,767,767,767,767,767,767" selected="1" streamType="2" decision="transcode" location="segments-audio" />
</Part>
</Media>
</Variant>
<Variant id="5d47965b-144d-47de-bb75-840bfe16beb6" targetBitrate="22301" context="streaming" sourceVideoCodec="hevc" sourceAudioCodec="eac3" videoDecision="transcode" audioDecision="transcode" protocol="dash" container="mp4" videoCodec="h264" audioCodec="aac" audioChannels="2" transcodeHwRequested="1" transcodeHwFullPipeline="1">
<Media id="1722170" videoProfile="main" audioChannels="2" audioCodec="aac" bitrate="21239" container="mp4" duration="2985984" height="1080" optimizedForStreaming="1" protocol="dash" videoCodec="h264" videoFrameRate="24p" videoResolution="1080p" width="1920" selected="1">
<Part deepAnalysisVersion="6" id="1728808" requiredBandwidths="10710,8154,6411,5854,5607,5607,5607,5607" videoProfile="main" bitrate="21239" container="mp4" duration="2985984" height="1080" optimizedForStreaming="1" protocol="dash" width="1920" decision="transcode" selected="1">
<Stream bitrate="20983" codec="h264" default="1" displayTitle="1080p (HEVC Main)" extendedDisplayTitle="1080p (HEVC Main)" frameRate="23.975999832153320" height="1080" id="3412928" requiredBandwidths="9941,7387,5642,5086,4843,4843,4843,4843" streamType="1" width="1920" decision="transcode" location="segments-video" />
<Stream bitrate="256" bitrateMode="cbr" channels="2" codec="aac" default="1" displayTitle="English (EAC3 5.1)" extendedDisplayTitle="Surround (English EAC3 5.1)" id="3412929" language="English" languageCode="eng" languageTag="en" requiredBandwidths="767,767,767,767,767,767,767,767" selected="1" streamType="2" decision="transcode" location="segments-audio" />
</Part>
</Media>
</Variant>
</Variants>

In the main Plex Server log (with debug enabled) I see these few lines:

Jan 20, 2022 09:35:23.402 [19824] ERROR - [Transcoder] [h264_qsv @ 02b92b00] Error during encoding: device failed (-17)
Jan 20, 2022 09:35:23.403 [19824] ERROR - [Transcoder] Video encoding failed
Jan 20, 2022 09:35:23.469 [14636] VERBOSE - Didn't receive a request from 127.0.0.1:50031: An existing connection was forcibly closed by the remote host
Jan 20, 2022 09:35:23.475 [15224] VERBOSE - JobManager: child process with handle 0xb4c exited
Jan 20, 2022 09:35:23.475 [15224] DEBUG - Jobs: 'C:\Program Files (x86)\Plex\Plex Media Server\Plex Transcoder.exe' exit code for process 16204 is 1 (failure)

I have also tested my QuickSync setup with Handbrake encoding and it seem to work fine.

I am finding that if you have ā€œUse hardware acceleration when availableā€ ticked but DO NOT TICK ā€œUse hardware-accelerated video encodingā€ then you get some perfoamance benefit - I think it is h/w decoding the video stream (HEVC in my case) but not re-encoding in h/w to H264.
If you tick both then as far as I can see it does neither.

I just installed the Intel UHD DCH 30.0.101.1191 manually last night and HW transcoding started working again for me. It’s that version available for you?

I am running that version and what I wrote above still applies.

Same issue here. No more HW transcoding. i5-10210U CPU with the latest Intel drivers. I get those entries whenever a user tries to transcode:

Jan 29, 2022 20:06:43.077 [12924] INFO - [Transcode] [FFMPEG] - MFT name: ā€˜IntelĀ® Quick Sync Video H.264 Encoder MFT’
Jan 29, 2022 20:06:43.093 [12924] DEBUG - [Transcode] Codecs: testing h264 (decoder) with hwdevice nvdec
Jan 29, 2022 20:06:43.094 [12924] DEBUG - [Transcode] Codecs: hardware transcoding: testing API nvdec
Jan 29, 2022 20:06:43.094 [12924] ERROR - [Transcode] [FFMPEG] - Cannot load nvcuda.dll
Jan 29, 2022 20:06:43.094 [12924] ERROR - [Transcode] [FFMPEG] - Could not dynamically load CUDA
Jan 29, 2022 20:06:43.094 [12924] DEBUG - [Transcode] Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Unknown error occurred
Jan 29, 2022 20:06:43.094 [12924] DEBUG - [Transcode] Could not create hardware context for h264
Jan 29, 2022 20:06:43.094 [12924] DEBUG - [Transcode] Codecs: testing h264 (decoder) with hwdevice dxva2
Jan 29, 2022 20:06:43.094 [12924] DEBUG - [Transcode] Codecs: hardware transcoding: testing API dxva2
Jan 29, 2022 20:06:43.095 [12924] ERROR - [Transcode] [FFMPEG] - Failed to create Direct3D device
Jan 29, 2022 20:06:43.095 [12924] DEBUG - [Transcode] Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Unknown error occurred
Jan 29, 2022 20:06:43.095 [12924] DEBUG - [Transcode] Could not create hardware context for h264

1 Like

Those are the same errors I had prior to the driver update. The only things I can suggest is to uninstall the driver, reboot, reinstall, then reboot again.

Maybe backing up your server then uninstall/reinstalling if that doesn’t work.

I will note that the MFT encoder is the fallback when the QSV encoder fails. Mine is succeeding using the QSV, not the MFT, which is actually a first for my server.

There is obviously an issue with the latest Plex ffmpeg/transcoder and the previous Quicksync versions. I hope Plex can figure out the cause and suggest a definitive solution.