-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
@robertoj: $ ffmpeg ffmpeg: symbol lookup error: ffmpeg: undefined symbol: av_buffersrc_get_status, version LIBAVFILTER_10 Looks like Friendlyelec deleted some functions in their version of the library, or based it on an outdated version. ffmpeg is version 7:7.1.5-0+deb13u1 Filename: pool/main/f/ffmpeg/ffmpeg_7.1.5-0+deb13u1_arm64.deb MD5sum: 18e560e3b4c4b992d74d2bf3020d9a53 No v4l2request info with `mpv -v`
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
@eselarm: Thanks enormously for this information. I'm not a hardware expert, so much of this is over my head, but you clarified a number of things for me right away and raised a new bunch of questions. Will research things further. One correction: the Friendlyelec libav* libraries are under /usr/local and take preference to those under /usr, so they won't be affected by a Debian update.
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
@Igor, @robertoj: Update: Friendlyelec image uses its own libav* libraries, not the Debian ones: # ls -1 /usr/local/lib/aarch64-linux-gnu libavcodec.so libavcodec.so.61 libavcodec.so.61.19.101 libavfilter.so libavfilter.so.10 libavfilter.so.10.4.100 libavutil.so libavutil.so.59 libavutil.so.59.39.100 It also has the following packages, not in Armbian: # dpkg -l *mpp* ... ii librockchip-mpp-dev 20260226-2 arm64 Media Process Platform ii librockchip-mpp1 20260226-2 arm64 Media Process Platform ii libv4l-rkmpp 1.8.0-1 arm64 A rockchip-mpp V4L2 wrapper plugin for chromium video dec and enc ii rockchip-mpp-demos 20260226-2 arm64 Media Process Platform Demos I copied the relevant files from Friendlyelec system to Armbian system (both are Trixie), ran ldconfig, and ran `strace mpv my.mp4` on both systems. Comparison of strace output revealed that certain apparently required device files under /dev/dma_heap are missing on Armbian, plus incorrect permissions on /dev/mpp_service: On Friendlyelec: # ls -l /dev/dma_heap total 0 crw-rw-r-- 1 root video 251, 4 Jul 20 06:48 cma crw-rw-r-- 1 root video 251, 5 Jul 20 06:48 cma-uncached crw-rw-r-- 1 root video 251, 0 Jul 20 06:48 system crw-rw-r-- 1 root video 251, 1 Jul 20 06:48 system-dma32 crw-rw-r-- 1 root video 251, 2 Jul 20 06:48 system-uncached crw-rw-r-- 1 root video 251, 3 Jul 20 06:48 system-uncached-dma32 # ls -l /dev/mpp_service crw-rw-rw- 1 root video 241, 0 Jul 20 06:48 /dev/mpp_service On Armbian: # ls -l /dev/dma_heap total 0 crw------- 1 root root 251, 0 Jul 19 19:41 system crw------- 1 root root 251, 1 Jul 19 19:41 system-uncached # ls -l /dev/mpp_service crw------- 1 root root 241, 0 Jul 20 06:48 /dev/mpp_service Removing the cma= arg from the kernel cmdline gave me /dev/dma_heap/cma, and I manually fixed up the permissions, but still no video accel for mpv. Something else is apparently required, perhaps the remaining missing device files under /dev/dma_heap.
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
@Igor: Update: I have HW accel with sound for chromium with my minimal trixie/vendor image, which I installed xfce on top of. This is the image from armbian.org as opposed to the latest release from Github, which is what I tested in my review of Gnome images above. However Chromium doesn’t support AC3 audio, which means it can’t play the majority of the files in my video collection with sound: https://issues.chromium.org/issues/41253735 And there's a good deal besides that Chromium cannot do. This is why Chromium is not enough and we need mpv/ffmpeg/libav* support. mpv plays literally every media file you can throw at it.
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
Results of my testing of prebuilt images with the Nano Pi M6: Armbian vendor kernel image (Gnome/resolute): no HW acceleration, even with Chromium. HDMI sound works but headphone output doesn’t. HDMI sound incorrectly identified as “Analog Output”. Armbian mainline kernel image (Gnome/resolute): HW acceleration works with Chromium but not with mpv. No sound, period. An audio device is identified and VU meter is active in the mixer, but both HDMI and headphones are silent. Official Friendlyelec image (Gnome/trixie): HW accel works with every media player I tested. Sound works perfectly, with devices correctly identified. System appears to be stable, with no crashes so far. Results of my testing of prebuilt images with the Rock Pi 5B: Armbian vendor kernel image (Gnome/resolute): no HW acceleration, even with Chromium. HDMI and headphone sound both work. HDMI sound incorrectly identified as “Analog Output”. Armbian mainline kernel image (Gnome/noble): HW acceleration works with Chromium. No sound. Clicking on the sound icon on the taskbar crashed the system and corrupted the filesystem, making the image unbootable. Official Radxa image (KDE/bookworm): HW accel and sound work for all media players I tested. There are issues with the ethernet driver and occasional video crashes when switching to fullscreen mode. Otherwise, the system appears to be stable. Verdict: if you want a usable RK3588-based workstation, use the images provided by the manufacturers. Armbian isn't quite there yet.
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
@robertoj: Yes, it truly is the vanilla mpv. The package is from debian.org, not Friendlyelec. $ apt list mpv mpv/stable,now 0.40.0-3+deb13u1 arm64 [installed] $ apt list ffmpeg ffmpeg/stable,now 7:7.1.5-0+deb13u1 arm64 [installed,automatic] $ mpv --version mpp[949]: mpp_platform: client 18 driver is not ready! mpv v0.40.0 Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects libplacebo version: v7.349.0 FFmpeg version: 7.1.2-0+deb13u1 (runtime 7.1.3-3rockchip) FFmpeg library versions: libavcodec 61.19.101 libavdevice 61.3.100 libavfilter 10.4.100 libavformat 61.7.100 (runtime 61.7.103) libavutil 59.39.100 libswresample 5.3.100 libswscale 8.3.100 $ cat /etc/issue Debian GNU/Linux 13 \n \l $ uname -a Linux NanoPi-M6 6.1.141 #16 SMP Thu Dec 4 14:51:28 CST 2025 aarch64 GNU/Linux $ apt-cache show mpv Package: mpv Version: 0.40.0-3+deb13u1 Maintainer: Debian Multimedia Maintainers <debian-multimedia@lists.debian.org> Architecture: arm64 ... Filename: pool/main/m/mpv/mpv_0.40.0-3+deb13u1_arm64.deb Size: 1270108 SHA256: ab039661c5016d96161fb9649b99cdde34ec4dfc83248ed9e42abb30318ac901
-
Hardware video acceleration with recent armbian/mainline kernel (Kodi)
With the official friendlyelec image for Nano Pi M6 (trixie, gnome, 6.1 kernel), I'm getting hardware acceleration with the plain vanilla mpv from Debian: mpv --vo=gpu my.mp4 mpp[2968]: mpp_platform: client 18 driver is not ready! ● Video --vid=1 (h264 1080x1920 59.9998 fps) [default] ● Audio --aid=1 (aac 2ch 44100 Hz 128 kbps) [default] arm_release_ver: g24p0-00eac0, rk_so_ver: 10-616430-r0 mpp[2968]: mpp_info: mpp version: 958803d7 author: Herman Chen 2026-02-26 fix[h265d_rkv]: Fix rkv ref and poc setup overflow Using hardware decoding (rkmpp). AO: [pipewire] 44100Hz stereo 2ch floatp VO: [gpu] 1080x1920 drm_prime[nv12] Everything works wonderfully, and CPU usage is about 25%, compared to 500% for Armbian. Why can't rkmpp be enabled on Armbian to give us harware accel out of the box? @Igor: The overlay link you provided above (mesa-vpu) is broken. And no such overlay exists in the prebuilt images for the Nano Pi M6. Result: still no hardware acceleration for my M6 with Armbian.
-
Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
@bedna: Actually, my previous answer was incorrect. That area is not empty: it contains the Protective MBR, GPT partition header and GPT partition table, and we don’t want to copy those for the following reasons: a) There’s no reason to do so, since we create the partitions later; b) If we did, we’d end up with a corrupted partition table anyway unless we copied the backup header and tables too. That’s why we skip this area and begin writing at 0x8000 (32k), which is where the Armbian bootloader begins. If you’re just making backups, there’s no reason not to copy all the data, however. Different goals, different methods.
- Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
- State of support for Raspberry Pi 5
- Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
-
Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
@quaSimba: Thanks for your remarks and the link to the guide on Github. Hopefully I'll one day have a RPi to work with so I can support it in my script and tutorial. @fxkl47BF: The completion packages were removed because they can be horribly laggy on low-powered SoCs and I find them annoying in general. They can be easily reinstalled if desired.
-
Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
The automated script has been updated to support the Nano Pi M6 (Noble mainline kernel IOT/minimal image and Noble Gnome desktop vendor kernel image both tested). Use the -m option to include all loaded modules in the initrd. The boot partition size has also been increased to 400MB, which should fix out-of-space errors when upgrading via apt. The tutorial has been updated accordingly.
-
Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
Successfully tested on the Orange Pi 5 with Ubuntu Noble minimal mainline image. Note that this image kernel panics every now and then on bootup (something to do with power management and interrupts). Disabling networking seems to solve the issue The automated script now supports configuring the network interface on the target using ifupdown. This is primarily useful for statically configured setups
- Full root filesystem encryption on an Armbian system (NEW, replaces 2017 tutorial on this topic)
MMGen
Members
-
Joined
-
Last visited