6.1.75-vendor-rk35xx
ls -l /dev | grep -E "mpp|rga|dri|dma_heap"
drwxr-xr-x 2 root root 80 Dec 31 1969 dma_heap
drwxr-xr-x 3 root root 140 Nov 7 09:38 dri
crw------- 1 root root 241, 0 Nov 7 09:38 mpp_service
crw------- 1 root root 10, 122 Nov 7 09:38 rga
I am having some issues, very similar to https://forum.radxa.com/t/opencl-fails-with-failed-creating-base-context-during-opening-of-kernel-driver-on-reboots-for-rockchip-rk3558-orange-pi-5-plus/21558.
That is when I install the OpenCL extensions, it seems to work fine, but upon reboot the system is non responsive.
I am following instructions for that that libmali https://github.com/tsukumijima/libmali-rockchip/releases/download/v1.9-1-2d267b0/libmali-valhall-g610-g13p0-gbm_1.9-1_arm64.deb
For the 6.1 LTS kernel on Ubuntu-Rockchip & Armbian and the legacy 5.10 LTS kernel, install v1.9-1-2d267b0.
For the 6.1 LTS kernel on other SBC vendor-made distros, install v1.9-1-55611b0.
ocker exec -it jellyfin /usr/lib/jellyfin-ffmpeg/ffmpeg -v debug -init_hw_device rkmpp=rk -init_hw_device opencl=ocl@rk
ffmpeg version 7.0.2-Jellyfin Copyright (c) 2000-2024 the FFmpeg developers
built with gcc 12 (Debian 12.2.0-14)
configuration: --prefix=/usr/lib/jellyfin-ffmpeg --target-os=linux --extra-version=Jellyfin --disable-doc --disable-ffplay --disable-ptx-compression --disable-static --disable-libxcb --disable-sdl2 --disable-xlib --enable-lto=auto --enable-gpl --enable-version3 --enable-shared --enable-gmp --enable-gnutls --enable-chromaprint --enable-opencl --enable-libdrm --enable-libxml2 --enable-libass --enable-libfreetype --enable-libfribidi --enable-libfontconfig --enable-libharfbuzz --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libopenmpt --enable-libdav1d --enable-libsvtav1 --enable-libwebp --enable-libvpx --enable-libx264 --enable-libx265 --enable-libzvbi --enable-libzimg --enable-libfdk-aac --arch=arm64 --cross-prefix=/usr/bin/aarch64-linux-gnu- --toolchain=hardened --enable-cross-compile --enable-rkmpp --enable-rkrga
libavutil 59. 8.100 / 59. 8.100
libavcodec 61. 3.100 / 61. 3.100
libavformat 61. 1.100 / 61. 1.100
libavdevice 61. 1.100 / 61. 1.100
libavfilter 10. 1.100 / 10. 1.100
libswscale 8. 1.100 / 8. 1.100
libswresample 5. 1.100 / 5. 1.100
libpostproc 58. 1.100 / 58. 1.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'.
Reading option '-init_hw_device' ... matched as option 'init_hw_device' (initialise hardware device) with argument 'rkmpp=rk'.
Reading option '-init_hw_device' ... matched as option 'init_hw_device' (initialise hardware device) with argument 'opencl=ocl@rk'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument debug.
Applying option init_hw_device (initialise hardware device) with argument rkmpp=rk.
Applying option init_hw_device (initialise hardware device) with argument opencl=ocl@rk.
arm_release_ver: g13p0-01eac0, rk_so_ver: 10
Failed creating base context during opening of kernel driver.
Kernel module may not have been loaded
[AVHWDeviceContext @ 0xaaab04dcb0d0] 1 OpenCL platforms found.
[AVHWDeviceContext @ 0xaaab04dcb0d0] 1 OpenCL devices found on platform "ARM Platform".
arm_release_ver: g13p0-01eac0, rk_so_ver: 10
Failed creating base context during opening of kernel driver.
Kernel module may not have been loaded
[AVHWDeviceContext @ 0xaaab04dcb0d0] 0.0: ARM Platform / Unknown Device
Any idea what's up?
Dont forget that you can now use the vendor 6.1.x kernel now for hardware acceleration using MPP -
acas@t6:~$ ls -l /dev/rga
crw-rw---- 1 root video 10, 121 Aug 17 15:12 /dev/rga
acas@t6:~$ ls -l /dev/mpp_service
crw-rw---- 1 root video 241, 0 Aug 17 15:12 /dev/mpp_service
acas@t6:~$ uname -a
Linux t6 6.1.75-vendor-rk35xx #1 SMP Thu Aug 8 17:42:28 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
acas@t6:~$ hostnamectl
Static hostname: t6
Icon name: computer
Machine ID: 8a38793a5b9543f2a8467803940786e8
Boot ID: 0840de02a4a249e884141dee335ede77
Operating System: Armbian-unofficial 24.8.0-trunk noble
Kernel: Linux 6.1.75-vendor-rk35xx
Architecture: arm64
dont need to be stuck on 5.10 for MPP support. Works fine with rkmppenc just as for kernel 5.10 series.
The only quirk is that for Ubuntu 24.04 you have to hack/build rkmppenc from source at the moment.
@Anderson Castro i try. with docker container. but you need to change a little bit. since the docker run cli command on official use net=host I cannot access the jellyfin. so I just delete that line and add this line and work fine for me:
in case someone still not know. jellyfin now support official RK3588/3588S HWA. here the official steps https://jellyfin.org/docs/general/administration/hardware-acceleration/rockchip/