PMS + Linux + AMD Vega = (No Hardware Acceleration)?

Another update, I found this through google:

Implementing the HWE kernel now just to be sure it’s not the problem. Wasn’t needed for the standard free/non-free versions of the iHD drivers, but you article says it may be needed for some GPUs in the intel list.

This did not fix anything, but I located /var/lib/plexmediaserver/Library/Application Support/Plex Media Server and purged the contents of Drivers and Codecs. This forced a download, and it seems to have the iHD driver, but still using sw encoding or decoding in 1080p HEVC to SD h264 transcoding.

➜ Plex Media Server find . -type f -name ‘*.so*’

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libigc.so.1.0.1

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libigdfcl.so.1.0.1

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libopencl-clang.so.14

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libigdrcl.so

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libocloc.so

./Drivers/icr-1355230ec27e669c3e46f537-linux-x86_64/libiga64.so.1.0.1

./Drivers/imd-9e4cd70adad80b4a3ed849b3-linux-x86_64/dri/iHD_drv_video.so

./Codecs/46f74ab-560174306fe167a5978a79dd-linux-x86_64/liblibx264_encoder.so

./Codecs/46f74ab-560174306fe167a5978a79dd-linux-x86_64/libhevc_decoder.so

./Codecs/46f74ab-560174306fe167a5978a79dd-linux-x86_64/libaac_lc_decoder.so

Any chance you found anything?

I have not found anything new.

Mixing third party software with Plex transcoding does not work well.
This is because the transcoder and PMS:

  1. Use MUSL instead of glibc
  2. All dependencies are compiled with MUSL and provided with PMS (paths do not use LD_LIBRARY_PATH)
  3. PMS and the transcoder communicate with each other during each transcode session.

Your finding of other codecs does not work if the build is dependent on a new set of codecs (this dependency is compiled into PMS and the transcoder)

The libraries:

This is why they’re in the Drivers subdirectory and part of icr (Intel Conpute Runtime)

  • libigc = for Intel QSV (intel graphics compiler)
  • libigd = for Intel QSV (subtitles)
  • libopencl = tonemapping
  • libigdrcl = Intel openCL driver to libopencl
  • libocloc = part of Intel Compute Runtime (to access the Intel internal GPU)

None of what you’ve listed relates to AMD.

I have 4 NUC8-i7-HVK machines here (i7-8809G CPU with both Intel and AMD gpu in it). PMS will do HEVC HDR on the Intel GPU but only HEVC SDR on the AMD GPU.

It will be this way until the full AMD drivers are released.

I moved away from AMD and moved to my iHD because of the statement that AMD only support SD transcoding. My problem is with QSV not working. I delete the downloaded PLEX drivers and let plex re-download them. But I don’t get a reason why it’s using software transcoding, just that libva failed. My system is a bare-bones Ubuntu install running PMS. the subject is wrong now, because of the change. Also, it appears I commented in the Forum, not the DM discussion we had. it’s a little confusing since the DM discussion has the same subject.

Please do the following;

  1. Confirm server DEBUG logging is enabled, VERBOSE logging is disabled.
    SAVE if changes.
  2. Restart PMS
  3. Give it two minutes to start and stabilize
  4. Start a playback which needs transcoding.
  5. Let it play for 20 seconds
  6. Stop the playback
  7. Download the server logs
  8. Attach the logs so I may see them.

With those logs, I will be able to:

  1. See the Intel CPU and GPU identified.
  2. See the Media Evaluation decision at start of playback
  3. See the transcoder test the hardware in preparation for playback
    (If the playback is a hardware transcode)
  4. See the Transcoder invocation command line
  5. See any errors which might arise as the transcoder launches.