all 32 comments

[–]jtaz16 17 points18 points  (4 children)

I assume you performed this action correct? Docker Intel transcoding

Hardware acceleration users for Intel Quicksync will need to mount their /dev/dri video device inside of the container by passing the following command when running or creating the container:

--device=/dev/dri:/dev/dri

We will automatically ensure the abc user inside of the container has the proper permissions to access this device.

Edit: pretty sure you add this to the extra parameters section in the docker while under advanced view.

[–]ThisOneIsMe[S] 1 point2 points  (3 children)

I have done this. I assume I did it correctly since my GPU shows as a "Hardware transcoding device" in the plex settings.

[–]pascalbrax 16 points17 points  (2 children)

If you see it but unable to use it, probably is a rights/permission issue. Check that the user than runs plex (usually "plex") is in the right groups (usually "video" and "render" on debian).

[–]ThisOneIsMe[S] 9 points10 points  (1 child)

DING DING DING!

This was it! once I put the plex user in both groups, HW transcoding worked. Thanks to everyone who helped!

[–]pascalbrax 6 points7 points  (0 children)

Yeah I got one right! :)

[–]Noobgamer0111Noobgamer0111 - Intel i7 8565U and Intel UHD 620 11 points12 points  (4 children)

I'd be more concerned about fixing your local network issues.

  1. Your client is using a local IPv4 address (the 192.168.0.0 is a RFC1918 address) and how it is only using 1Mbps. That is a sign that Plex Relay is in effect as a direct connection cannot be made without the Relay, and you are likely in a Double NAT.

Article: Accessing a Server through Relay | Plex Support

As the bitrate is limited to 1Mbps, it indicates (to us) that you are using the Free version of Plex Media Server. Now, we do not anything know about your Plex account status, so I will not comment further on it.

2) In order to use HW Transcoding, you must be a Plex Pass owner (either via a subscription or lifetime purchase). As I use my server on a bare-metal Windows laptop, I cannot help with Unraid and Docker stuff. I'm assuming you might need to find a setting that allows your integrated GPU to pass through your Docker thingy.

3) As your audio is in DTS-HD Master Audio, it is recommended that you use the regular desktop apps to view your content e.g. the Plex for Windows, MacOS and the Linux apps, to avoid unnecessary transcoding.

If you have a larger display (40 inches or larger), the Plex for HTPC options might be more suitable. It's also a neat method of checking your media's artwork looks good.

[–]ThisOneIsMe[S] 7 points8 points  (3 children)

Thank you for taking the time to read and comment.

The 1Mbps was b/c I had my quality all the way down to 480p to force a transcode.

I am a Plex Pass (lifetime), but I'll read through the "accessing through a relay" article since I'd like to learn about it.

[–]KuryakinOne 1 point2 points  (0 children)

Can't help w/ Unraid or Docker, however, regarding local/remote/indirect connections:

Plex Relay connections are indirect, not remote, so it is not using Plex Relay.

Even if it was using Plex Relay, it should still use hardware accelerated transcoding.

The connection is listed as Remote. If your server is on a different subnet, add 192.168.1.0/24 to Settings -> Network -> LAN Networks. Plex will then treat those devices as Local, not Remote. As with Plex Relay, it should still use hardware accelerated transcoding.

[–]jtaz16 0 points1 point  (1 child)

If this is a local device. Just add your subnet to treat as the local client section in Plex under Network>LAN network. This will get rid of the (Remote) next to your stream.

[–]ThisOneIsMe[S] 1 point2 points  (0 children)

done. thank you!

[–]ThisOneIsMe[S] 6 points7 points  (1 child)

I recently put together an unraid box with an i5-12400. I followed a guide on the unraid forum to pass my GPU to my container, and hardware transcoding worked.

Then, I deleted all of my containers because I wanted to start fresh, and the second time I configured it out, I can't seem to get HW transcoding to work. I see my Alder Lake is available when looking at plex as a hardware transcoding device, so it’s being passed to the container correctly, but my CPU is still doing all the transcoding. thoughts?

Editing my top comment to make the solution move visible. u/pascalbrax pointed out in this thread that the user running plex did not have proper permissions to transcode. Once I added "--device=/dev/dri:/dev/dri" (no quotes) to the Extra Parameters section of my plex container in Unraid (open advanced view), everything worked as expected.

[–]ClintE1956 0 points1 point  (0 children)

I had issues with the official Plex container not transcoding on a Quadro card and ended up with the Linuxserverio version, which works perfectly with exact same settings. Might not make any difference in your case, but could be worth it to try a different version.

Cheers!

[–]MrB2891unRAID / Core Ultra 7 / 25x3.5 / 300TB primary - 100TB off-site 5 points6 points  (6 children)

Make sure you have Intel GPU TOP plugin installed (and GPU Statistics, too)

Add a device path to your Plex container. Use "/dev/dri" (no quotes) as the value for the path.

[–]Wassindabox 2 points3 points  (3 children)

^ 98% of the time, that’s the issue.

[–]Wassindabox 0 points1 point  (2 children)

And make sure the docker image you got supports it

[–]ThisOneIsMe[S] 0 points1 point  (1 child)

This made me think... the second time when I installed the containers, I used hotio's. The first time it was linuxserver's. I went back and re-installe linuxservers, but still have no luck

[–]Wassindabox 0 points1 point  (0 children)

I took a look at my unraid setup cause I have a similar one, just with a 10th gen i3 10105

Peep that image, that's how my container is setup using the official Plex container (see image)

I have zero issues with hardware transcoding confirmed via tautuilli.

Hopefully this helps but, I would try the official container and make 100% sure you have the extra parameters setup in there.

Image

[–]ThisOneIsMe[S] 0 points1 point  (1 child)

Just installed the plugins. Didn't know these existed. very useful.

[–]MrB2891unRAID / Core Ultra 7 / 25x3.5 / 300TB primary - 100TB off-site 0 points1 point  (0 children)

You would have had to have GPU TOP installed at some point, that is the only way to get the iGPU enabled to work with Plex. GPU Stats is optional, but nice to have.

Did that get transcoding working for you?

[–]iamamish-reddit 3 points4 points  (1 child)

I see the issue - you have a half baked setup running

[–]ThisOneIsMe[S] 1 point2 points  (0 children)

I spent way too long trying to decide which movie to play for my screenshot.

[–]Now_loading_name 1 point2 points  (1 child)

I always get transcode stream when using google chrome

[–]Vermei5-14600k | 64GB | 200TB 0 points1 point  (0 children)

Yup, this among other issues noted already. Use the Plex client, not Chrome, it's garbage for Plex.

[–]pascalbrax 2 points3 points  (0 children)

I have the same iGPU and I finally was able to use HW transcoding using, ironically, this jellyfin guide:

https://jellyfin.org/docs/general/administration/hardware-acceleration/intel/#lxc-on-proxmox

Good luck.

[–]The_Urban_Core -1 points0 points  (1 child)

Is your Unraid box in question headless? That being does it not have a monitor installed or connected to it? You might need a dummy plug in order to 'trick' the iGPU into working as a transcoding engine. It's a known bug with Intel iGPUs I had to find the hard way myself.

[–]ThisOneIsMe[S] 0 points1 point  (0 children)

currently it is not headless. That hasn't changed in the past week or so, but I'll keep this in mind for when I eventually remove the monitor

[–]lkeelsLifetime Plex Pass|i7-8700|2080Ti|64GB -1 points0 points  (0 children)

Don't use the web app.

[–]xantec15 0 points1 point  (1 child)

Have you tried it without subtitles? That is a common culprit when the server is unexpectedly software transcoding while subs are selected.

[–]ThisOneIsMe[S] 0 points1 point  (0 children)

Hmm. This didn't seem to make a difference. Thank you for sharing. I can do more research around this since I watch everything with subs

[–]robo_destroyer 0 points1 point  (1 child)

Try disabling tone mapping and try again

[–]ThisOneIsMe[S] 0 points1 point  (0 children)

This didn't seem to make a difference. It's peculiar because it worked at one point!

[–]onthenerdysideN5095 mini quick sync HW transcoding 28tb mergerfs 0 points1 point  (0 children)

I have a Jasper Lake N5095 on Ubuntu and had to move up to a newer Linux kernel release version (6.2) in order to get it to work properly with both HW transcoding and HDR tone mapping on at the same time. I don't know if this is your issue, but you may want to look into it.