• Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below
  • Forum
  • Website
  • GitHub
  • Status
  • Translation
  • Features
  • Team
  • Rules
  • Help
  • Feeds
User Links
  • Login
  • Register
  • Login Register
    Login
    Username/Email:
    Password:
    Or login with a social network below

    Useful Links Forum Website GitHub Status Translation Features Team Rules Help Feeds
    Jellyfin Forum Support Troubleshooting SOLVED: Archlinux Intel Arc transcoding

     
    • 0 Vote(s) - 0 Average

    SOLVED: Archlinux Intel Arc transcoding

    Failed to set value 'opencl@va' for option 'init_hw_device': No such device
    benoliver999
    Offline

    Junior Member

    Posts: 4
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:United Kingdom
    #1
    2024-03-22, 12:47 PM (This post was last modified: 2024-03-22, 01:37 PM by benoliver999. Edited 2 times in total.)
    Agh I'm sorry to be that guy asking the same question over and over.. but I can't get transcodes to work. I've searched the forums for my error and I'm not getting much joy. I think it's HDR content that's causing the problem but I've not tested it enough to be sure.

    This is my setup:

    Code:
    OS: Arch Linux x86_64
    Host: MS-7D48 2.0
    Kernel: 6.8.1-arch1-1
    CPU: Intel i3-14100F (8) @ 4.700GHz
    GPU: Intel DG2 [Arc A380]

    I've installed the drivers listed on the page here https://jellyfin.org/docs/general/admini...ion/intel/

    Here's the output of the suggested commands:

    Code:
    [root@jellyfin ~]# vainfo --display drm --device /dev/dri/renderD128
    Trying display: drm
    vainfo: VA-API version: 1.21 (libva 2.20.1)
    vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 24.1.4 ()
    vainfo: Supported profile and entrypoints
          VAProfileNone                  : VAEntrypointVideoProc
          VAProfileNone                  : VAEntrypointStats
          VAProfileMPEG2Simple            : VAEntrypointVLD
          VAProfileMPEG2Main              : VAEntrypointVLD
          VAProfileH264Main              : VAEntrypointVLD
          VAProfileH264Main              : VAEntrypointEncSliceLP
          VAProfileH264High              : VAEntrypointVLD
          VAProfileH264High              : VAEntrypointEncSliceLP
          VAProfileJPEGBaseline          : VAEntrypointVLD
          VAProfileJPEGBaseline          : VAEntrypointEncPicture
          VAProfileH264ConstrainedBaseline: VAEntrypointVLD
          VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
          VAProfileHEVCMain              : VAEntrypointVLD
          VAProfileHEVCMain              : VAEntrypointEncSliceLP
          VAProfileHEVCMain10            : VAEntrypointVLD
          VAProfileHEVCMain10            : VAEntrypointEncSliceLP
          VAProfileVP9Profile0            : VAEntrypointVLD
          VAProfileVP9Profile0            : VAEntrypointEncSliceLP
          VAProfileVP9Profile1            : VAEntrypointVLD
          VAProfileVP9Profile1            : VAEntrypointEncSliceLP
          VAProfileVP9Profile2            : VAEntrypointVLD
          VAProfileVP9Profile2            : VAEntrypointEncSliceLP
          VAProfileVP9Profile3            : VAEntrypointVLD
          VAProfileVP9Profile3            : VAEntrypointEncSliceLP
          VAProfileHEVCMain12            : VAEntrypointVLD
          VAProfileHEVCMain422_10        : VAEntrypointVLD
          VAProfileHEVCMain422_10        : VAEntrypointEncSliceLP
          VAProfileHEVCMain422_12        : VAEntrypointVLD
          VAProfileHEVCMain444            : VAEntrypointVLD
          VAProfileHEVCMain444            : VAEntrypointEncSliceLP
          VAProfileHEVCMain444_10        : VAEntrypointVLD
          VAProfileHEVCMain444_10        : VAEntrypointEncSliceLP
          VAProfileHEVCMain444_12        : VAEntrypointVLD
          VAProfileHEVCSccMain            : VAEntrypointVLD
          VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
          VAProfileHEVCSccMain10          : VAEntrypointVLD
          VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
          VAProfileHEVCSccMain444        : VAEntrypointVLD
          VAProfileHEVCSccMain444        : VAEntrypointEncSliceLP
          VAProfileAV1Profile0            : VAEntrypointVLD
          VAProfileAV1Profile0            : VAEntrypointEncSliceLP
          VAProfileHEVCSccMain444_10      : VAEntrypointVLD
          VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

    The above looks ok but then ffmpeg isn't happy

    Code:
    [root@jellyfin ~]#  /usr/lib/jellyfin-ffmpeg/ffmpeg -v verbose -init_hw_device vaapi=va:/dev/dri/renderD128 -init_hw_device opencl@va
    ffmpeg version 6.0.1-Jellyfin Copyright (c) 2000-2023 the FFmpeg developers
      built with gcc 13.2.1 (GCC) 20230801
      configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-gpl --enable-version3 --enable-static --enable-gmp --enable-gnutls --enable-chromaprint --enable-libfontconfig --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libopenmpt --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
      libavutil      58.  2.100 / 58.  2.100
      libavcodec    60.  3.100 / 60.  3.100
      libavformat    60.  3.100 / 60.  3.100
      libavdevice    60.  1.100 / 60.  1.100
      libavfilter    9.  3.100 /  9.  3.100
      libswscale      7.  1.100 /  7.  1.100
      libswresample  4. 10.100 /  4. 10.100
      libpostproc    57.  1.100 / 57.  1.100
    [AVHWDeviceContext @ 0x56d6e039cdc0] libva: VA-API version 1.21.0
    [AVHWDeviceContext @ 0x56d6e039cdc0] libva: Trying to open /usr/lib/dri/iHD_drv_video.so
    [AVHWDeviceContext @ 0x56d6e039cdc0] libva: Found init function __vaDriverInit_1_20
    [AVHWDeviceContext @ 0x56d6e039cdc0] libva: va_openDriver() returns 0
    [AVHWDeviceContext @ 0x56d6e039cdc0] Initialised VAAPI connection: version 1.21
    [AVHWDeviceContext @ 0x56d6e039cdc0] VAAPI driver: Intel iHD driver for Intel(R) Gen Graphics - 24.1.4 ().
    [AVHWDeviceContext @ 0x56d6e039cdc0] Driver not found in known nonstandard list, using standard behaviour.
    [AVHWDeviceContext @ 0x56d6e03cdd00] Failed to get number of OpenCL platforms: -1001.
    Device creation failed: -19.
    Failed to set value 'opencl@va' for option 'init_hw_device': No such device
    Error parsing global options: No such device

    This chimes with clinfo:

    Code:
    [root@jellyfin ~]# clinfo
    Number of platforms                              0

    ICD loader properties
      ICD loader Name                                OpenCL ICD Loader
      ICD loader Vendor                              OCL Icd free software
      ICD loader Version                              2.3.2
      ICD loader Profile                              OpenCL 3.0

    When I do a transcode I get a similar error

    Code:
    /videos/a6d85ba3-efe5-17cc-bd19-065d1b7c6f51/hls1/main/0.ts

    {"Protocol":0,"Id":"a6d85ba3efe517ccbd19065d1b7c6f51","Path":"/mnt/NAS/Films/Possessor (2020).4k.mkv","EncoderPath":null,"EncoderProtocol":null,"Type":0,"Container":"mkv,webm","Size":21737162752,"Name":"Possessor (2020).4k","IsRemote":false,"ETag":"ab89a7993c760b1ef3211d798f206d40","RunTimeTicks":62593179648,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"OpenToken":null,"RequiresClosing":false,"LiveStreamId":null,"BufferMs":null,"RequiresLooping":false,"SupportsProbing":true,"VideoType":0,"IsoType":null,"Video3DFormat":null,"MediaStreams":[{"Codec":"hevc","CodecTag":null,"Language":null,"ColorRange":null,"ColorSpace":"bt2020nc","ColorTransfer":"smpte2084","ColorPrimaries":"bt2020","DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":null,"VideoRange":"HDR","VideoRangeType":"HDR10","VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"4K HEVC HDR","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":27782149,"BitDepth":10,"RefFrames":1,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":true,"IsForced":false,"Height":2160,"Width":3840,"AverageFrameRate":23.976025,"RealFrameRate":23.976025,"Profile":"Main 10","Type":1,"AspectRatio":"16:9","Index":0,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":"yuv420p10le","Level":153,"IsAnamorphic":null},{"Codec":"dts","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":null,"VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":null,"LocalizedDefault":null,"LocalizedForced":null,"LocalizedExternal":null,"DisplayTitle":"English - DTS-HD MA - 5.1 - Default","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":"5.1","BitRate":2285466,"BitDepth":24,"RefFrames":null,"PacketLength":null,"Channels":6,"SampleRate":48000,"IsDefault":true,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":"DTS-HD MA","Type":0,"AspectRatio":null,"Index":1,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null},{"Codec":"PGSSUB","CodecTag":null,"Language":"eng","ColorRange":null,"ColorSpace":null,"ColorTransfer":null,"ColorPrimaries":null,"DvVersionMajor":null,"DvVersionMinor":null,"DvProfile":null,"DvLevel":null,"RpuPresentFlag":null,"ElPresentFlag":null,"BlPresentFlag":null,"DvBlSignalCompatibilityId":null,"Comment":null,"TimeBase":"1/1000","CodecTimeBase":null,"Title":"English SDH","VideoRange":null,"VideoRangeType":null,"VideoDoViTitle":null,"LocalizedUndefined":"Undefined","LocalizedDefault":"Default","LocalizedForced":"Forced","LocalizedExternal":"External","DisplayTitle":"English SDH - PGSSUB","NalLengthSize":null,"IsInterlaced":false,"IsAVC":null,"ChannelLayout":null,"BitRate":null,"BitDepth":null,"RefFrames":null,"PacketLength":null,"Channels":null,"SampleRate":null,"IsDefault":false,"IsForced":false,"Height":null,"Width":null,"AverageFrameRate":null,"RealFrameRate":null,"Profile":null,"Type":2,"AspectRatio":null,"Index":2,"Score":null,"IsExternal":false,"DeliveryMethod":null,"DeliveryUrl":null,"IsExternalUrl":null,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Path":null,"PixelFormat":null,"Level":0,"IsAnamorphic":null}],"MediaAttachments":[],"Formats":[],"Bitrate":30067615,"Timestamp":null,"RequiredHttpHeaders":{},"TranscodingUrl":null,"TranscodingSubProtocol":null,"TranscodingContainer":null,"AnalyzeDurationMs":null,"DefaultAudioStreamIndex":null,"DefaultSubtitleStreamIndex":null}

    /usr/lib/jellyfin-ffmpeg/ffmpeg -analyzeduration 200M -init_hw_device vaapi=va:,kernel_driver=i915,driver=iHD -init_hw_device qsv=qs@va -init_hw_device opencl=ocl@va -filter_hw_device qs -hwaccel vaapi -hwaccel_output_format vaapi -autorotate 0 -i file:"/mnt/NAS/Films/Possessor (2020).4k.mkv" -autoscale 0 -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 h264_qsv -preset 7 -look_ahead 0 -b:v 3616000 -maxrate 3616000 -bufsize 7232000 -g:v:0 72 -keyint_min:v:0 72 -vf "setparams=color_primaries=bt2020:color_trc=smpte2084:colorspace=bt2020nc,scale_vaapi=w=1280:h=720:extra_hw_frames=24,procamp_vaapi=b=16:c=1,tonemap_vaapi=format=nv12:p=bt709:t=bt709:m=bt709:extra_hw_frames=32,hwmap=derive_device=qsv,format=qsv" -codec:a:0 aac -ac 2 -ab 384000 -af "volume=2" -copyts -avoid_negative_ts disabled -max_muxing_queue_size 2048 -f hls -max_delay 5000000 -hls_time 3 -hls_segment_type mpegts -start_number 0 -hls_segment_filename "/var/lib/jellyfin/transcodes/8da3c579b7eb2e4c491b15b477499f78%d.ts" -hls_playlist_type vod -hls_list_size 0 -y "/var/lib/jellyfin/transcodes/8da3c579b7eb2e4c491b15b477499f78.m3u8"


    ffmpeg version 6.0.1-Jellyfin Copyright (c) 2000-2023 the FFmpeg developers
      built with gcc 13.2.1 (GCC) 20230801
      configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-shared --disable-libxcb --disable-sdl2 --disable-xlib --enable-gpl --enable-version3 --enable-static --enable-gmp --enable-gnutls --enable-chromaprint --enable-libfontconfig --enable-libass --enable-libbluray --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libopenmpt --enable-libtheora --enable-libvorbis --enable-libdav1d --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libshaderc --enable-libplacebo --enable-vulkan --enable-opencl --enable-vaapi --enable-amf --enable-libvpl --enable-ffnvcodec --enable-cuda --enable-cuda-llvm --enable-cuvid --enable-nvdec --enable-nvenc
      libavutil      58.  2.100 / 58.  2.100
      libavcodec    60.  3.100 / 60.  3.100
      libavformat    60.  3.100 / 60.  3.100
      libavdevice    60.  1.100 / 60.  1.100
      libavfilter    9.  3.100 /  9.  3.100
      libswscale      7.  1.100 /  7.  1.100
      libswresample  4. 10.100 /  4. 10.100
      libpostproc    57.  1.100 / 57.  1.100
    [AVHWDeviceContext @ 0x5a2ba9d61dc0] Failed to get number of OpenCL platforms: -1001.
    Device creation failed: -19.
    Failed to set value 'opencl=ocl@va' for option 'init_hw_device': No such device
    Error parsing global options: No such device

    My jellyfin user is a member of the groups video render input jellyfin

    I feel like I'm close but I can't quite figure out what the final step is!
    Go to solution
    nyanmisaka
    Offline

    Team Member

    Posts: 261
    Threads: 0
    Joined: 2023 Jun
    Reputation: 10
    #2
    2024-03-22, 03:06 PM
    The last step is to install intel-compute-runtime.

    https://jellyfin.org/docs/general/admini...arch-linux
    https://archlinux.org/packages/extra/x86...e-runtime/
    benoliver999
    Offline

    Junior Member

    Posts: 4
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:United Kingdom
    #3
    2024-03-22, 03:12 PM
    Sorry I should have been clear, that is installed already. This is the list of installed packages

    Code:
    base 3-2
    base-devel 1-1
    clinfo 3.0.23.01.25-1
    grub 2:2.12-2
    htop 3.3.0-1
    intel-compute-runtime 23.48.27912.11-1
    intel-gpu-tools 1.27-2
    intel-media-driver 24.1.4-1
    intel-media-sdk 23.2.2-2
    jellyfin-server 10.8.13-1
    jellyfin-web 10.8.13-1
    kitty-terminfo 0.33.0-1
    libva-utils 2.20.1-1
    linux 6.8.1.arch1-1
    linux-firmware 20240312.3b128b60-1
    mkinitcpio 38.1-1
    neofetch 7.1.0-2
    nfs-utils 2.6.4-1
    onevpl-intel-gpu 24.1.4-1
    openssh 9.7p1-1
    vim 9.1.0151-2
    benoliver999
    Offline

    Junior Member

    Posts: 4
    Threads: 1
    Joined: 2024 Mar
    Reputation: 0
    Country:United Kingdom
    #4
    2024-03-25, 11:56 AM
    So it's an upstream issue with intel-compute-runtime

    https://github.com/intel/compute-runtime/issues/710

    It can be fixed by setting the env vars listed in that thread. If you use systemd it's

    Code:
    sudo systemctl edit jellyfin.service

    Then add the lines towards the top of the file (read the comments in the file!)

    Code:
    [Service]
    Environment="NEOReadDebugKeys=1"
    Environment="OverrideGpuAddressSpace=48"

    Reload and restart and away you go

    Code:
    sudo systemctl daemon-reload
    sudo systemctl restart jellyfin.service
    « Next Oldest | Next Newest »

    Users browsing this thread: 2 Guest(s)


    • View a Printable Version
    • Subscribe to this thread
    Forum Jump:

    Home · Team · Help · Contact
    © Designed by D&D - Powered by MyBB
    L


    Jellyfin

    The Free Software Media System

    Linear Mode
    Threaded Mode