diff --git a/Dockerfile b/Dockerfile index ace3de8..ca6726a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -44,6 +44,18 @@ LABEL maintainer="thelamer" # add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility" +# install packages +RUN \ + echo "**** install packages ****" && \ + apt-get update && \ + apt-get install -y --no-install-recommends \ + mesa-va-drivers && \ + echo "**** cleanup ****" && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* + # add local files COPY --from=buildstage /app/emby /app/emby COPY root/ / diff --git a/README.md b/README.md index 64597e3..ae3736b 100644 --- a/README.md +++ b/README.md @@ -143,7 +143,7 @@ Container images are configured using parameters passed at runtime (such as thos | `-v /data/movies` | Media goes here. Add as many as needed e.g. `/data/movies`, `/data/tv`, etc. | | `-v /transcode` | Path for transcoding folder, *optional*. | | `-v /opt/vc/lib` | Path for Raspberry Pi OpenMAX libs *optional*. | -| `--device /dev/dri` | Only needed if you want to use your Intel GPU for hardware accelerated video encoding (vaapi). | +| `--device /dev/dri` | Only needed if you want to use your Intel or AMD GPU for hardware accelerated video encoding (vaapi). | | `--device /dev/vchiq` | Only needed if you want to use your Raspberry Pi OpenMax video encoding (Bellagio). | | `--device /dev/video10` | Only needed if you want to use your Raspberry Pi V4L2 video encoding. | | `--device /dev/video11` | Only needed if you want to use your Raspberry Pi V4L2 video encoding. | @@ -187,7 +187,7 @@ Webui can be found at `http://:8096` Emby has very complete and verbose documentation located [here](https://github.com/MediaBrowser/Wiki/wiki) . -Hardware acceleration users for Intel Quicksync will need to mount their /dev/dri video device inside of the container by passing the following command when running or creating the container: +Hardware acceleration users for Intel Quicksync and AMD VAAPI will need to mount their /dev/dri video device inside of the container by passing the following command when running or creating the container: ```--device=/dev/dri:/dev/dri``` @@ -287,6 +287,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **03.07.20:** - Add support for amd vaapi hw transcode. * **29.02.20:** - Add v4l2 support on Raspberry Pi. * **26.02.20:** - Add openmax support on Raspberry Pi. * **15.02.20:** - Allow restarting emby from the gui (also allows for auto restarts after addon updates). diff --git a/readme-vars.yml b/readme-vars.yml index 98689b5..062edd4 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -43,7 +43,7 @@ opt_param_volumes: - { vol_path: "/opt/vc/lib", vol_host_path: "/opt/vc/lib", desc: "Path for Raspberry Pi OpenMAX libs *optional*." } opt_param_device_map: true opt_param_devices: - - { device_path: "/dev/dri", device_host_path: "/dev/dri", desc: "Only needed if you want to use your Intel GPU for hardware accelerated video encoding (vaapi)." } + - { device_path: "/dev/dri", device_host_path: "/dev/dri", desc: "Only needed if you want to use your Intel or AMD GPU for hardware accelerated video encoding (vaapi)." } - { device_path: "/dev/vchiq", device_host_path: "/dev/vchiq", desc: "Only needed if you want to use your Raspberry Pi OpenMax video encoding (Bellagio)." } - { device_path: "/dev/video10", device_host_path: "/dev/video10", desc: "Only needed if you want to use your Raspberry Pi V4L2 video encoding." } - { device_path: "/dev/video11", device_host_path: "/dev/video11", desc: "Only needed if you want to use your Raspberry Pi V4L2 video encoding." } @@ -60,7 +60,7 @@ app_setup_block: | Emby has very complete and verbose documentation located [here](https://github.com/MediaBrowser/Wiki/wiki) . - Hardware acceleration users for Intel Quicksync will need to mount their /dev/dri video device inside of the container by passing the following command when running or creating the container: + Hardware acceleration users for Intel Quicksync and AMD VAAPI will need to mount their /dev/dri video device inside of the container by passing the following command when running or creating the container: ```--device=/dev/dri:/dev/dri``` @@ -91,6 +91,7 @@ app_setup_block: | # changelog changelogs: + - { date: "03.07.20:", desc: "Add support for amd vaapi hw transcode." } - { date: "29.02.20:", desc: "Add v4l2 support on Raspberry Pi." } - { date: "26.02.20:", desc: "Add openmax support on Raspberry Pi." } - { date: "15.02.20:", desc: "Allow restarting emby from the gui (also allows for auto restarts after addon updates)." } diff --git a/root/etc/services.d/emby/run b/root/etc/services.d/emby/run index 15ee600..2dac8f5 100644 --- a/root/etc/services.d/emby/run +++ b/root/etc/services.d/emby/run @@ -9,7 +9,7 @@ APP_DIR="/app/emby" export LD_LIBRARY_PATH="${APP_DIR}" export FONTCONFIG_PATH="${APP_DIR}"/etc/fonts if [ -d "/lib/x86_64-linux-gnu" ]; then - export LIBVA_DRIVERS_PATH="${APP_DIR}"/dri + export LIBVA_DRIVERS_PATH=/usr/lib/x86_64-linux-gnu/dri:"${APP_DIR}"/dri fi export SSL_CERT_FILE="${APP_DIR}"/etc/ssl/certs/ca-certificates.crt