Índice #
Si estás utilizando docker para desplegar tu servidor multimedia Jellyfin quizás no sepas que puedes utilizar la aceleración por hardware (HWA) para de codificación/decodificación de video usando FFMpeg.
FFMpeg y Jellyfin pueden soportar múltiples implementaciones de aceleración por hardware como Intel Quicksync (QSV), AMD AMF, nVidia NVENC/NVDEC, OpenMax OMX y MediaCodec a travós de API’s de aceleración de vídeo.
S.O. | Aceleración por HW Recomendada |
---|---|
Linux | QSV, NVENC, VAAPI |
Windows | QSV, NVENC, AMF, VAAPI |
MacOS | None (videotoolbox support coming) |
Android | MediaCodec, OMX |
RPi | OMXç |
Habilitando la aceleración por hardware #
Docker #
Para utilizar la aceleración por hardware en Docker, los dispositivos deben pasarse al contenedor.
Para ver quó dispositivos de vídeo están disponibles en nuestro sistema, ejecutamos sudo lshw -c video
Las GPU NVIDIA actualmente no son compatibles con docker-compose.
En mi equipo tengo disponible la aceleración por QSV
/dev/dri/renderD128
/dev/dri/card0
Le pasamos el dispositivo al contenedor para su despliegue
docker create \
--name=jellyfin \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/Madrid \
-p 8096:8096 \
-v /srv/jellyfin/config/:/config \
-v /srv/jellyfin/cache:/cache \
--net=host \
--restart always \
--device /dev/dri/renderD128:/dev/dri/renderD128 \
--device /dev/dri/card0:/dev/dri/card0 \
jellyfin/jellyfin:latest
En caso de tener una tarjeta nvidia deberás de seguir las instrucciones del siguiente enlace.
Jellyfin #
Tambión debemos de configurar Jellyfin para que realice la transcodificacion, desde el panel de control, en el menú Reproducción elegimos el tipo de aceleración por hardware que vamos a utilizar y el dispositivo que la va a realizar.
Para finalizar debemos de reiniciar el contenedor para que los cambios tengan efecto.
Espero que te haya gustado, pasa un buen día… 🐧