Jellyfin Forum
Synology Docker Transcoding Problem - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: Synology Docker Transcoding Problem (/t-synology-docker-transcoding-problem)



Synology Docker Transcoding Problem - Jolle - 2023-08-12

Hello,
I'm running into a problem after the initial setup went well.

Setup is: 
- a Synology with a N3160, which is a Braswell CPU from my understanding
- using this docker image: https://hub.docker.com/r/nyanmisaka/jellyfin
- all i changed (settings) was adding paths to my media+config+cache

Streaming/watching is working fine on all clients, at least until I try to transcode a file (force to lower resolution/bandwidth). It returns a "source error" no matter of the original file (container, codec, resolution).
Tried QSV and VAAPI.

Here's a log if that helps: https://pastebin.com/YfPpf2zE

Any helping hand would be greatly appreciated!


RE: Synology Docker Transcoding Problem - bitmap - 2023-08-12

The container can't initialize the hardware device for HWA transcoding. You need to pass the hardware device to the container in order for it to have access as well as ensure the user running the container is a member of the group(s) related to using that device. Using hardware acceleration requires additional setup, so I'd recommend taking a look at the docs for doing so as a starting point: https://jellyfin.org/docs/general/administration/hardware-acceleration/intel.

Synology is a little bit different but is essentially just a pretty layer over docker so you can garner some information from docker setup.


RE: Synology Docker Transcoding Problem - raccoonsummer - 2023-08-18

I have this working on a Synology DS920+ -- can't remember where I found the guide, but you need to set the permissions on /dev/dri/your render device, then also pass that hardware device to the docker container.

Set up a scheduled task in synology to run a user-defined script:
task name: Set dev-dri-renderD128 Permission for Jellyfin
User: root
Event: boot-up
Task settings>run command>user-defined script: chmod 666 /dev/dri/renderD128

Note: your render device may be different.

Then, in your jellyfin docker-compose.yml add (section alongside volumes, ports, etc):
    devices:
      - /dev/dri:/dev/dri