diff --git a/docker/Dockerfile b/docker/Dockerfile index 0bced8c3a..595ab5634 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -46,7 +46,7 @@ RUN pip3 wheel --wheel-dir=/wheels -r requirements-wheels.txt FROM debian:11-slim ARG TARGETARCH -ARG JELLYFIN_FFMPEG_VERSION=4.3.2-1 +ARG JELLYFIN_FFMPEG_VERSION=5.0.1-4 # https://askubuntu.com/questions/972516/debian-frontend-environment-variable ARG DEBIAN_FRONTEND="noninteractive" # http://stackoverflow.com/questions/48162574/ddg#49462622 @@ -73,6 +73,8 @@ RUN apt-get -qq update \ && apt-key adv --fetch-keys https://packages.cloud.google.com/apt/doc/apt-key.gpg \ && echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" > /etc/apt/sources.list.d/coral-edgetpu.list \ && echo "libedgetpu1-max libedgetpu/accepted-eula select true" | debconf-set-selections \ + # enable non-free repo + && sed -i -e's/ main/ main contrib non-free/g' /etc/apt/sources.list \ && apt-get -qq update \ && apt-get -qq install --no-install-recommends --no-install-suggests -y \ # coral drivers @@ -81,10 +83,10 @@ RUN apt-get -qq update \ # arch specific packages && if [ "${TARGETARCH}" = "amd64" ]; then \ # jellyfin-ffmpeg - wget -O /tmp/jellyfin.deb "https://repo.jellyfin.org/releases/server/debian/versions/jellyfin-ffmpeg/${JELLYFIN_FFMPEG_VERSION}/jellyfin-ffmpeg_${JELLYFIN_FFMPEG_VERSION}-$( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release )_$( dpkg --print-architecture ).deb" \ + wget -O jellyfin.deb "https://repo.jellyfin.org/releases/server/debian/versions/jellyfin-ffmpeg/${JELLYFIN_FFMPEG_VERSION}/jellyfin-ffmpeg5_${JELLYFIN_FFMPEG_VERSION}-$( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release )_$( dpkg --print-architecture ).deb" \ && apt-get -qq install --no-install-recommends --no-install-suggests -y \ - mesa-va-drivers /tmp/jellyfin.deb \ - && rm /tmp/jellyfin.deb; else \ + mesa-va-drivers intel-media-va-driver-non-free ./jellyfin.deb \ + && rm jellyfin.deb; else \ apt-get -qq install --no-install-recommends --no-install-suggests -y \ ffmpeg; \ fi \ diff --git a/docs/docs/configuration/hardware_acceleration.md b/docs/docs/configuration/hardware_acceleration.md index 23874c93f..fd506807e 100644 --- a/docs/docs/configuration/hardware_acceleration.md +++ b/docs/docs/configuration/hardware_acceleration.md @@ -12,33 +12,21 @@ Ensure you increase the allocated RAM for your GPU to at least 128 (raspi-config ```yaml ffmpeg: - hwaccel_args: - - -c:v - - h264_v4l2m2m + hwaccel_args: -c:v h264_v4l2m2m ``` ### Intel-based CPUs (<10th Generation) via Quicksync ```yaml ffmpeg: - hwaccel_args: - - -hwaccel - - vaapi - - -hwaccel_device - - /dev/dri/renderD128 - - -hwaccel_output_format - - yuv420p + hwaccel_args: -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format yuv420p ``` ### Intel-based CPUs (>=10th Generation) via Quicksync ```yaml ffmpeg: - hwaccel_args: - - -hwaccel - - qsv - - -qsv_device - - /dev/dri/renderD128 + hwaccel_args: -hwaccel qsv -qsv_device /dev/dri/renderD128 -hwaccel_output_format yuv420p ``` ### AMD/ATI GPUs (Radeon HD 2000 and newer GPUs) via libva-mesa-driver @@ -47,11 +35,7 @@ ffmpeg: ```yaml ffmpeg: - hwaccel_args: - - -hwaccel - - vaapi - - -hwaccel_device - - /dev/dri/renderD128 + hwaccel_args: -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -hwaccel_output_format yuv420p ``` ### NVIDIA GPU @@ -91,13 +75,13 @@ A list of supported codecs (you can use `ffmpeg -decoders | grep cuvid` in the c V..... vp9_cuvid Nvidia CUVID VP9 decoder (codec vp9) ``` -For example, for H265 video (hevc), you'll select `hevc_cuvid`. +For example, for H264 video, you'll select `h264_cuvid`. ```yaml ffmpeg: hwaccel_args: - -c:v - - hevc_cuvid + - h264_cuvid ``` If everything is working correctly, you should see a significant improvement in performance.