Harware Acceleration on Docker


I have a couple of these little boards and I wanted to try out Jellyfin because I saw that this board supports a lot of hardware decoding.

Jellyfin supports VA-API and V4L2 M2M, I don’t seem to get it to work with any of them though. Is there any driver I need, what device do I need to pass to VA-API? I tried /dev/dri/by-path/platform-d00c0000.gpu-render, /dev/dri/renderD128 and /dev/dri/card0.

Jellyfin uses ffmpeg, if that helps.

Using platform-d0100000.vpu-card seems to crash ffmpeg. Some files will work, but with very high CPU usage, which probably just is software encoding.

Ah, I see now that Docker Swarm doesn’t support accessing devices. Guess I have to learn Kubernetes, then.

Passthrough is untested territory. Currently the decoders are only supported in gstreamer. FFMPEG from distros for M2M doesn’t work in so far as I know.

I tried running bare-metal now, and still it refuses to use either V4L2 or VA-API.
Do you know what kind of hardware acceleration Gstreamer uses with this board?

Try with gst123 on a H.264 file. H.265 and VP9 may also work but we haven’t checked recently.