Plex HW Transcoding with OMV 5, Portainer, and Nvidia P2000

  • So i am in the process of trying out OMV from Windows. I have been using Snapraid and Drivepool, so this seems like an easy transition. This past weekend i got all the various programs installed through portainer and i have them running. More or less minimal issues. So the last feature i NEED is to get HW transcoding working on Plex. I can't find a guide to do it in OMV 5, and with Nvidia not having much support for Debian directly, i am not sure where to start. Following TechnoDad advice, i was able to get most things installed through Portainer, minus some port issues/questions. But, i have no idea where to start for this.

  • Have you looked here?
    https://hub.docker.com/r/linuxserver/plex


    There is a paragraph about hardware acceleration on NVIDIA:


    Hardware acceleration users for Nvidia will need to install the container runtime provided by Nvidia on their host, instructions can be found here:
    https://github.com/NVIDIA/nvidia-docker

  • Have you looked here?
    https://hub.docker.com/r/linuxserver/plex


    There is a paragraph about hardware acceleration on NVIDIA:


    Hardware acceleration users for Nvidia will need to install the container runtime provided by Nvidia on their host, instructions can be found here:
    https://github.com/NVIDIA/nvidia-docker


    Actually, that is exactly what i tried to do, and where i ran into issues based on my linux experience.


    I tried to follow the directions on the nvidia-docker page


    But on the part for Usage i got


    docker run --gpus all nvidia/cuda:9.0-base nvidia-smi
    docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "process_linux.go:449: container init caused \"process_linux.go:432: running prestart hook 0 caused \\\"error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: driver error: failed to process request\\\\n\\\"\"": unknown.
    ERRO[0000] error waiting for container: context canceled

  • So i got the driver working using this - https://linuxconfig.org/how-to…on-debian-10-buster-linux


    Plex isn't using it for transcoding.


    I added -e NVIDIA_VISIBLE_DEVICES=all
    but per https://hub.docker.com/r/linuxserver/plex i can't find a way to set --runtime=nvidia in portainer.

    Take a look at this.


    https://www.reddit.com/r/PleX/…scoding_with_plex_docker/


    you need to pass /dev/dri through to your docker container, you also might need to change permissions of /dev/dri on the host to give read, write, and execute privileges to the PLEX user to get this to work.


    i set the i passed /dev/dri:/dev/dri in the container and /dev/dri has the following attributes
    drwxr-xr-x 3 root users 100 Dec 1 09:36 .
    drwxr-xr-x 18 root root 4360 Dec 1 09:38 ..
    drwxr-xr-x 2 root users 80 Dec 1 09:36 by-path
    crw-rw-rw- 1 root users 226, 0 Dec 1 09:36 card0
    crw-rw-rw- 1 root users 226, 128 Dec 1 09:36 renderD128



    but after i reboot it goes back to
    drwxr-xr-x 3 root root 100 Dec 1 10:57 .
    drwxr-xr-x 18 root root 4320 Dec 1 10:58 ..
    drwxr-xr-x 2 root root 80 Dec 1 10:57 by-path
    crw-rw---- 1 root video 226, 0 Dec 1 10:57 card0
    crw-rw---- 1 root render 226, 128 Dec 1 10:57 renderD128



    But with either setting it doesnt seem to use HW acceleration

  • You'll likely need to write a startup script to chmod 777 /dev/dri.


    Take a look into using docker-compose to modify your containers from the command line, I find it far easier than doing so through portainer, plus you'll have a backup of your containers configs so you can recreate them at will easily.

  • You'll likely need to write a startup script to chmod 777 /dev/dri.


    Take a look into using docker-compose to modify your containers from the command line, I find it far easier than doing so through portainer, plus you'll have a backup of your containers configs so you can recreate them at will easily.

    I tried docker-compose and get


    ERROR: The Compose file './docker-compose.yml' is invalid because:
    Unsupported config option for services.plex: 'runtime'
    root@openmediavault:/etc/docker# Unsupported config option for services.plex: 'runtime'


    i then tried to run it from docker cli and get
    Error response from daemon: Unknown runtime specified nvidia


    I assume that i installed the drivers on main OS but docker cant access it. I think i am done with OMV 5, nothing works properly and i dont know enough to figure it out.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!