Hardware acceleration still broken for everyone?

That is still very likely. Depending on the quality of the original file, lower quality originals will be more noticeable when transcoded.

any transcoding results in the loss of quality.

it can never be better than the original.

and it can only be exactly the same if the transcode is a LOSSLESS (remux).

there is no lossless conversion from one codec to another codec (ie to/from x264 <> x264 or x265, or vice versa).

the whole point of transcoding on the fly is to reduce size and quality so the video can be streamed in a lower bandwidth (or to be compatible with the device limitations).

I force transcode everything, and have been for years. So many of the problems posted on these forums go away when you do. :slight_smile: What I’m referring to is that enabling hardware acceleration has caused a noticeable degradation of picture quality vs. software transcoding. The difference was negligible before hardware accelerated transcoding broke a few months ago. Now that it may have been fixed (maybe?), there’s still too much of a quality hit when enabled. So it looks like the team has some more work to do here.

That is what I was refering to. Sorry if I wasn’t clear. Hardware trascoding gives up quality for speed, so there may be a noticeable difference than using software, especially with lower quality originals.

@anon18523487 can you confirm if the quality drop down affects hardware transcoding, or is that only applied to cpu transcoding?

image

Also, ā€˜make my cpu hurt’ has never been clear on what exactly it does (does it focus cpu hurt on quality or speed?), and the label itself does not logically apply to gpu…

@snart gpu transcoding is also dependent on the particular hardware.

ie what hardware version of intel gpu or nvidia gpu can make a noticable difference.

the older intel qucksync was already known for not having that great of quality, but the newer generations have improved a lot, from my understanding (I certainly have not done any quality comparisons myself).

This is outlined in the docs:

Transcoder quality
These will influence the quality used when transcoding media. Select from:
Automatic – the Server will select from the other three options automatically
Prefer higher speed encoding – lower quality, but faster transcodes
Prefer higher quality encoding – higher quality, but slower transcodes
Make my CPU hurt – best quality with slower transcodes and highest CPU usage

Most users should leave it set to Automatic.

Hardware-Accelerated Streaming is not affected by this setting.
1 Like

good catch, should have found that myself :innocent:

1 Like

Yeah- I’ve been using the same system for the last few years to do hardware transcoding. Always looked great to me. Over the last few months, something happened and that is no longer true. It’s possible this is a plex issue or an nVidia driver issue.

1 Like

What OS are you using? Not aware of this on Windows. There are reports on some NAS/linux systems due to driver issues.

If you have some time over the holidays @snart I’d like to compare screenshots from a HW transcode done when it was working a few months ago versus a HW transcode done now. Would it also be possible for you to determine which PMS version this started happening exactly?

Some PNGs would be cool.
thanks

I’ve been having the same pixelation problems with my server on Windows 10. Have had this setup for years with no issues. This happens when transcoding for both internal LAN clients and external (remote access) clients.

The behavior I see is the content (.e.g movie) initially looks fine but then degrades as the movie progresses. Stopping the playback and then starting again at the same place restarts the cycle - looks fine for a little while and starts degrading until its really unwatchable.

I will try disabling hardware acceleration after reading these posts.

Hardware acceleration seems to be working for me again.

Also make sure to change your local video quality on each player/client to 8Mbps 1080p. I noticed some were set to ā€œoriginalā€, which will definitely cause playback problems if some of your video files are larger in size.

Hello, with GTX 1660 plex stop using (HW) for encode and decode almost everyday.
Rebooting the server fix de problems until it happend again.

ĀæDoes HW transcoding still need a dummy plug for headless server?

Jan 09, 2020 00:38:10.201 [11780] DEBUG - We're going to try to auto-select an audio stream for account 6895569.
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Selecting best audio stream for part ID 261759 (autoselect: 1 language: es)
Jan 09, 2020 00:38:10.201 [11780] DEBUG - We're going to try to auto-select a subtitle.
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Selected a foreign audio track: 
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Audio Stream: 812182, Subtitle Stream: -1
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Codecs: testing h264_nvenc (encoder)
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Codecs: hardware transcoding: testing API nvenc
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded lib: nvcuda.dll
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuInit
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceGetCount
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceGet
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceGetAttribute
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceGetName
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceComputeCapability
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuCtxCreate_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuCtxSetLimit
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuCtxPushCurrent_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuCtxPopCurrent_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuCtxDestroy_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemAlloc_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemAllocPitch_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemsetD8Async
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemFree_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemcpy2D_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMemcpy2DAsync_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGetErrorName
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGetErrorString
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuStreamCreate
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuStreamQuery
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuStreamSynchronize
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuStreamDestroy_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuStreamAddCallback
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuEventCreate
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuEventDestroy_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuEventSynchronize
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuEventQuery
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuEventRecord
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuLaunchKernel
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuModuleLoadData
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuModuleUnload
Jan 09, 2020 00:38:10.201 [14140] DEBUG - Completed: [192.168.2.101:57264] 200 GET /status/sessions (63 live) TLS GZIP 4ms 16429 bytes (pipelined: 2)
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuModuleGetFunction
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuTexObjectCreate
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuTexObjectDestroy
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGLGetDevices_v2
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGraphicsGLRegisterImage
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGraphicsUnregisterResource
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGraphicsMapResources
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGraphicsUnmapResources
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuGraphicsSubResourceGetMappedArray
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDeviceGetUuid
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuImportExternalMemory
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDestroyExternalMemory
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuExternalMemoryGetMappedBuffer
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuExternalMemoryGetMappedMipmappedArray
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMipmappedArrayGetLevel
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuMipmappedArrayDestroy
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuImportExternalSemaphore
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuDestroyExternalSemaphore
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuSignalExternalSemaphoresAsync
Jan 09, 2020 00:38:10.201 [11780] DEBUG - [FFMPEG] - Loaded sym: cuWaitExternalSemaphoresAsync
Jan 09, 2020 00:38:10.201 [11780] ERROR - [FFMPEG] - cu->cuCtxCreate(&hwctx->cuda_ctx, 4, cu_device) failed
Jan 09, 2020 00:38:10.201 [11780] ERROR - [FFMPEG] -  -> CUDA_ERROR_UNKNOWN: unknown error
Jan 09, 2020 00:38:10.201 [11780] ERROR - [FFMPEG] - 
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Codecs: hardware transcoding: opening hw device failed - probably not supported by this system, error: Unknown error occurred
Jan 09, 2020 00:38:10.201 [11780] DEBUG - Codecs: testing h264_mf (encoder)

if you don’t have a monitor connected, try the ā€œfixā€ i mentioned earlier - do not use windows RDP but teamviewer instead

I also experienced this. My PMS runs on a Windows Server 2019 dedicated machine running an Intel i5-7500 with Intel onboard graphics only.

I saw this gradual pixelation problem occur only when using my Anker Nebula Capsule which runs Android 7. Turning HW Accel off on the PMS resolved the issue.

I did not see it when using Plex Player for Windows on the PMS machine or when I used my iOS or Android phone apps.

Perhaps a helpful point in direction is that I recently replaced my Capsule with a Capsule II which runs AndroidTV 9 and I haven’t seen this issue reproduce at all on the Capsule II.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.