Jellyfin Forum
SOLVED: Cannot hardware transcode HVEC HDR - 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: SOLVED: Cannot hardware transcode HVEC HDR (/t-solved-cannot-hardware-transcode-hvec-hdr)



Cannot hardware transcode HVEC HDR - punksinatra - 2024-01-25

General Info:
  • Jellyfin 10.8.13
  • Jellyfin Linux Docker using linuxserver.io
  • Server specs i5-8500T, 16GB Ram, Debian 11

Issue: Getting "Playback Error. This client isn't compatible with the media and the server isn't sending a compatible media format" when trying to hardware transcode hvec hdr videos.

Devices (all of which cannot playback HVEC HDR videos): 
  • PC using chrome, firefox, edge
  • Android phone
  • Xioami P1 55 TV using jellyfin app

More Information:
  • Videos playback when I disable hardware acceleration
  • HVEC SDR playback has no issues either hardware acceleration on or off
  • Tried both Intel Quicksync and VAAPI same issue
  • Confirmed transcoding works on all other type of videos
  • Confirmed direct play for HVEC other than HVEC HDR works on devices that support it like Microsoft Edge

Docker compose
Quote:version: "2.1"
services:
  jellyfin:
    image: lscr.io/linuxserver/jellyfin
    container_name: jellyfin
    environment:
      - PUID=1000
      - PGID=100
      - TZ=Asia/Singapore
    group_add:
      - "107" # This is the render group
    volumes:
      - /srv/dev-disk-by-uuid-6f410b69-e75d-4861-bc4f-7f231fbb8bbb/Dockers/jellyfinConfused-faceconfig
      - /srv/dev-disk-by-uuid-062dc380-9c19-46c5-85ff-946da5b25980/TVConfused-facedata/tvshows
      - /srv/dev-disk-by-uuid-062dc380-9c19-46c5-85ff-946da5b25980/MoviesConfused-facedata/movies
      - /srv/dev-disk-by-uuid-062dc380-9c19-46c5-85ff-946da5b25980/AnimeConfused-facedata/anime
      - /dev/shmConfused-facetranscodes
    devices:
      - /dev/driConfused-facedev/dri
      - /dev/dri/renderD128Confused-facedev/dri/renderD128
      - /dev/dri/card0Confused-facedev/dri/card0
    ports:
      - 8096:8096
      #- 8920:8920 #optional for secure connections
      #- 8920:8920 #optional
      #- 7359:7359/udp #optional
      #- 1900:1900/udp #optional
    restart: unless-stopped
    #privileged: true


ls -la /dev/dri/renderD128 and ls -lan /dev/dri/renderD128:

host
Quote:root@putanginamoConfused-faceusr/lib# ls -la /dev/dri/renderD128
crw-rw---- 1 root render 226, 128 Jan  4 13:27 /dev/dri/renderD128
root@putanginamoConfused-faceusr/lib# ls -lan /dev/dri/renderD128
crw-rw---- 1 0 107 226, 128 Jan  4 13:27 /dev/dri/renderD128

container (I don't know why the container shows " videoOeKngkeg" instead of render group number)
Quote:root@087fbc07aa05:~# ls -la /dev/dri/renderD128
crw-rw---- 1 root videoOeKngkeg 226, 128 Jan 25 12:53 /dev/dri/renderD128
root@087fbc07aa05:~# ls -lan /dev/dri/renderD128
crw-rw---- 1 0 107 226, 128 Jan 25 12:53 /dev/dri/renderD128

Logs:

4k HVEC SDR log: HVEC SDR Log with transcoding
4k HVEC HDR log: HVEC HDR log


RE: Cannot hardware transcode HVEC HDR - TheDreadPirate - 2024-01-25

You need to add the LSIO Intel OpenCL mod to your compose file.

https://github.com/linuxserver/docker-mods/tree/jellyfin-opencl-intel

I believe you add this to your environment section of your compose file

Code:
- DOCKER_MODS=linuxserver/mods:jellyfin-opencl-intel



RE: Cannot hardware transcode HVEC HDR - punksinatra - 2024-01-25

(2024-01-25, 06:29 AM)TheDreadPirate Wrote: You need to add the LSIO Intel OpenCL mod to your compose file.

https://github.com/linuxserver/docker-mods/tree/jellyfin-opencl-intel

I believe you add this to your environment section of your compose file

Code:
- DOCKER_MODS=linuxserver/mods:jellyfin-opencl-intel

Not really sure if I am blind but I didn't seem to read about this in the LSIO github page. 

Thank you very much that seems to have fixed the issue. I tested on multiple devices including my TV and HVEC HDR plays fine now.