Please help with enabling Quick Sync on Ubuntu 18.04

Hello there! I was hoping some kind soul would be willing to lend me a hand getting hardware encoding/decoding working on my server. No matter what I play, on what client, at what resolution, I can not get that magical “(hw)” to show up on the now-playing file, and my CPU definitely appears to be doing the work with the software transcoder. I did a “grep” on my PMS logs for “hardware” and it’s confirming that PMS doesn’t think quick sync is available:

Sep 10, 2018 13:09:03.129 [0x7f6d9eff9700] DEBUG - TPU: hardware transcoding: enabled, but no hardware decode accelerator found
Sep 10, 2018 13:09:03.129 [0x7f6d9eff9700] DEBUG - TPU: hardware transcoding: final decoder: , final encoder:

However Intel ARK lists my i7-8700 as having Quick Sync. Briefly, here are some system details:

Server Version#: 1.13.7.5369
Player Version#: Web 3.67.1 (or any other player)
OS: Ubuntu 18.04.1 LTS
Kernel: 4.15.0-33-generic
CPU: Intel® Core™ i7-8700 CPU @ 3.20GHz

After some googling I have tried adding “i915.alpha_support=1” to my GRUB_CMDLINE_LINUX_DEFAULT line in my /etc/default/grub, reloading GRUB and rebooting, but that hasn’t helped. I’ve also tried installing a few video-related packages, and I ensured my Plex user is in the “video” group. I’ve been searching around but unfortunately I’m at a bit of a loss for what to try next. Any assistance would be greatly appreciated!

BTW I’m happy to send more logs, but the entire massive log folder seemed a bit excessive. Please let me know if there is anything specific I should search for.

At last word I have about Ubuntu 18.04 was that there still is a kernel issue.

You’re certain all updates have been installed?

I do know support for KabyLake is solid but think CoffeeLake CPU detection has been probematic for them.

Thanks for your reply! Yes, I have the latest updates. I guess I just need to wait for better kernel support for Coffee Lake GPUs.

It looks like the problem may be that 18.04 has no HWE in its kernel. I’m on 18.04.1 and HWE isn’t expected to be added until 18.04.2 in Feb. 2019 based on the Rolling LTS Enablement Stack. Man, that’s a ways off… Now I’m itching for the 18.10 upgrade with kernel 4.17…

@ChuckPa

Against all good sense, I went ahead and installed kernel 4.18.7-041807-generic via uktools. My system successfully rebooted (thank the gods), and shows that kernel active. However, Plex is still kicking up errors:

Sep 11, 2018 12:21:52.371 [0x7fe44c7fe700] ERROR - [FFMPEG] - No VA display found for device: /dev/dri/renderD128.
Sep 11, 2018 12:21:52.372 [0x7fe44c7fe700] ERROR - [FFMPEG] - Cannot load libcuda.so.1
Sep 11, 2018 12:21:52.372 [0x7fe44c7fe700] WARN - avcodec_open2 returned -1313558101 for encoder 'h264_nvenc'

I see it’s looking for my VA device in /dev/dri, so I had a look:

ls -al /dev/dri
ls: cannot access '/dev/dri': No such file or directory

I’m running a headless box in a colo, and it doesn’t have any GUI installed. I did see someone in some forum or Reddit post saying X might need to be installed for anything to use the GPU. Is this the case? Even though it’s a headless box, do I need to install X so Plex can see the GPU?

Thanks again in advance for your help.

You only need the X server if you’re running the proprietary nVidia display drivers. They initialize first and then the rest of the interface comes up.

Plex uses libva to access the /dev/dri/renderD128 node created by the kernel when it initializes.

If you’re not getting /dev/dri at all, then nothing is being recognized whatsoever.

For anyone who stumbles across this thread in a search: after using ukuu to update to mainline kernel 4.18.11-041811-generic, hardware video transcoding with Quick Sync now works. If you update your kernel to 4.18.11-041811-generic and that alone doesn’t solve the issue, perhaps the updated video drivers from the oibaf PPA are needed too; I already had those installed prior to updating my kernel.

For anyone looking at upgrading to 18.04

HW transcoding is working for me on a fresh install of 18.04.
running an i7-8700
kernel version on mine shows 4.15.0-38-generic.

I didn’t need to do anything custom, worked out of the box for me.

They must have finally added HWE to the kernel, probably backported from 18.10 now that it’s officially released. That’s good news.

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