***GUIDE*** Plex Hardware Acceleration using Intel Quick Sync


Recommended Posts

Hey all 

 

looking for some advice please? 

 

original thread in official repo page 

 

 

 

Ive followed this guide to the T several times over 

i have tried every variation i can think off of the above guide and all others i have found. 

 

I have tried linuxserver / binhex / limetech / plexinc dockers they all behaviour about the same in this regard 

 

Currently running 6.6.7 was running 6.7.2 even tried the latest RC it does not work on any. 

 

So what happens is....

 

Fire up plex works fine 

force transcoding to test HW acceleration, plex says its working but logs show it is not (changes some times it shows HW sometimes it doesnt) 

player gets a black screen and nothing happens until i go back to original quality, no disk IO nothin in htop nothing at all its like plex stalls but remains responsive 

 

docker setup; 

(i have tried public/docker/latest/plexpass though i think thats not for linuxserver) 

(i have also tried setting --device blahh:blah as an extra paramater but im led to believe this method is broken/outdated) 

(added as an extra device both as /dev/dri and as /dev/dri:/dev/dri neither work) 

image.thumb.png.d97f2ef8e75900b0d1662a33184730f2.png

 

 

go file; (sdparm to enable write caching on my SAS disks) 

Now with this i have tried both with and without the chown/chmod lines both result in the same 

image.png.2e1904b818e11e11e1e6ccae44277b61.png

 

 

/dev/dri ;

image.png.a7840d3a7285c260e9e8210238791096.png

 

 

plex settings; 

image.png.9e8108832a4d3239b1e6b236c8a4c871.png

 

since downgrading to 6.6.7 the logs show it has a VAAPI provider and is using it before it would say hardware accelration is enabled but not hardware device exists (or something like that) 

image.png.73ac5bacf9e2bbb8094985680ef10b97.png

 

but both plex and tautulli show no HW decoding is present (again changed since going back to 6.6.7 before hand it would show HW in the dashboard but would play nothing, now it doesnt say HW but it still plays nothing) 

image.png.80b3b114e3e9aaf0dd060bd9f22f69d3.png

plex says its still on direct steam (this screen taken AFTER the above tautulli)

image.png.cfd461255c2d5eba4ed246da67fb22b3.png

 

 

Note if i turn of HW acceleration it works fine just creams my CPU 

 

 

 

please please please help me! ive found maybe 10 threads which are identical to mine ever single one is closed with no answer or the usual FIXED IT thanks all anyway, no explanation given 

 

thank you in advance i am seriously pulling my hair out.

 

 

EDIT

i5-6500 btw

 

another edit 

so i noticed that /dev/dri wasnt set to 777 even though its in the go file so i manually did it restarted the plex docker and it still doesnt work but now the logs show this; 

 

image.thumb.png.4a3f3b352756601fd7d0e948e064e47c.png

 

 

 

Edited by Exa
adding cpu
Link to comment

It's late, I'm tired but; "no hardware decode accelerator found" - You can't hardware decode on Linux, end of. Hardware Encode fine. Which is what Transcoding is doing so that log means very little here.

 

Also "Throttled" suggests Plex is throttling the data due to bandwidth restrictions not transcoding. I mean it LOOKS like your trying to play a MKV in 480p, but I don't know the original video and I don't know the source and the destination for the network. 

 

It looks like you've done everything right with regard to the setup for Hardware Acceleration, so I'd be concentrating on why Plex is Throttling not transcoding. I have attached a screenshot of what a 1080p => 480p Hardware Transcode should look like.

 

Annotation 2019-09-22 225239.png

Link to comment
11 minutes ago, OFark said:

You can't hardware decode on Linux, end of. Hardware Encode fine.

Also incorrect.

 

With a CPU with QuickSync video support, hardware encoding and decoding is supported on Windows, Linux and Mac.

 

From https://support.plex.tv/articles/115002178853-using-hardware-accelerated-streaming/

 

1. Check the system requirements

Hardware-Accelerated Streaming is supported in Plex Media Server on modern Windows, Mac, Linux, and NAS devices. Plex Media Server’s hardware acceleration uses Intel Quick Sync Video for decoding and encoding, which is available in all recent Intel Core processors as well as some other Intel processors (such as some Xeon, Atom, or Celeron models).

  • The following are required in general for Hardware-Accelerated Streaming, regardless of your operating system:
  • A recent Intel CPU meeting these requirements:
    • 2nd-generation Intel Core (Sandy Bridge, 2011) or newer (we recommend 5th-gen Broadwell or newer for the best experience; Sandy Bridge, in particular, is known to sometimes have poor visual output on some systems)
    • Supports Intel Quick Sync Video (Not sure? Look up your processor)
  • Plex Media Server 1.9.3 or later
  • An active Plex Pass subscription
  • Like 1
Link to comment

Like I said I was tired, I got hung up on this:

Quote

"On Linux, hardware-accelerated decoding is not supported on NVIDIA GPUs."

But of course you can use Intel's Quick Sync.

And in the Guide it shows a picture of the "throttled" status and underneath it:

Quote

"As you can see this file is being direct played, so there's no transcoding happening."

So -1 for Speed reading when tired. Still I do think the issue is with Plex, not this guide. I can't see the sharing of this device going that badly wrong that it's intermittent.

Link to comment
1 minute ago, Zonediver said:

For "what reason" do you need a Graphics card for transcoding??? The "CPU" will do this out of the Box - you dont need a graphics card...

Because with many streams my CPU don't keep up. With Quicksynk HW that's not an issue. I used to own a MacMini and HW transcode could manage more streams.

Link to comment
5 minutes ago, Lappen71 said:

Because with many streams my CPU don't keep up. With Quicksynk HW that's not an issue. I used to own a MacMini and HW transcode could manage more streams.

You said, you use a Xeon... which Xeon? Normaly this CPUs are more the strong enough for transcoding.

My i7-3770 can transcode 5x 720p/4Mbit "on the fly parallel" - with only 3 cores + HT - the 4th core (+ HT) is reserved for unraid and all dockers...

Edited by Zonediver
Link to comment
5 minutes ago, Zonediver said:

You said, you use a Xeon... which Xeon? Normaly this CPUs are more the strong enough for transcoding.

My i7-3770 can transcode 5x 720p/4Mbit "on the fly parallel" - with only 3 cores + HT - the 4th core (+ HT) is reserved for unraid and all dockers...

That’s part of the problem of your perspective. Quick Sync quality on an Ivy Bridge CPU is not that great. It improved significantly with Haswell.

 

 Not everyone has the hardware reserves for CPU transcoding. You don’t know what else people have running on their machines.

  • Thanks 1
Link to comment
15 minutes ago, Taddeusz said:

Which model of Xeon do you have? If you notice it shows “hw” for the H.264 video just not for HEVC. It’s a newer technology that requires a Skylake architecture or better CPU.

Its an Intel Xeon E3 1225 v3

It you look at the picture it shows hw even with HEVC but only in one place.

Link to comment
2 minutes ago, Lappen71 said:

Its an Intel Xeon E3 1225 v3

It you look at the picture it shows hw even with HEVC but only in one place.

The left side is the original video format, in this case HEVC. That’s what it is decoding. The right side is showing that it is encoding to H.264 using hardware.

 

 Your E3 is a Haswell architecture CPU so it cannot decode or encode HEVC in hardware.

Link to comment

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.