- DietPi version | DietPi v10.0.1
- Distro version | trixie
- Kernel version | Linux DockerPi 6.12.62+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.62-1+rpt1 (2025-12-18) aarch64 GNU/Linux
- Architecture | arm64
- SBC model | RPi4
- Power supply used | RPi PSU
- SD card used | SSD
Raspberry Pi 4 + DietPi: no /dev/video* with dtoverlay=rpivid-v4l2 on 6.12.62+rpt kernel (Moonlight HW decode)
Hi all,
I’m trying to get V4L2 hardware video decoding working on a Raspberry Pi 4 running DietPi so I can use Moonlight with hardware decode. Moonlight itself is fine, but the system has no V4L2 decoder devices at all, so there’s nothing for Moonlight (or FFmpeg) to use.
Environment
-
Device: Raspberry Pi 4 (4GB)
-
OS: DietPi (64‑bit, aarch64)
-
Kernel:
uname -a
Linux DockerPi 6.12.62+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.62-1+rpt1 (2025-12-18) aarch64 GNU/Linux
Current boot config
Relevant part of my /boot/config.txt:
#-------GPU memory splits-------
gpu_mem=256
arm_64bit=1
dtoverlay=disable-wifi
dtoverlay=vc4-kms-v3d
dtoverlay=rpivid-v4l2
# HDMI
hdmi_group=1
hdmi_mode=16 # 1080p60 CEA
disable_overscan=1
Same dtoverlay=rpivid-v4l2 line appears in /boot/firmware/config.txt as well.
Symptoms
Despite the above:
bash
ls -l /dev/video*
ls: cannot access '/dev/video*': No such file or directory
dmesg | grep -Ei 'rpivid|bcm2835-codec|v4l2'
# (no output)
v4l2-ctl --list-devices
# (no output)
Trying to inspect the expected decoder nodes fails as there are none:
bash
v4l2-ctl -d /dev/video10 --all
Cannot open device /dev/video10, exiting.
v4l2-ctl -d /dev/video11 --all
Cannot open device /dev/video11, exiting.
Moonlight is being launched directly from a TTY via a system service (not inside Docker), so this isn’t a container device‑mapping issue.
What I’ve checked
Kernel config and overlays:
bash
zgrep RPIVID /proc/config.gz 2>/dev/null || echo "no RPIVID options in kernel config"
no RPIVID options in kernel config
ls /boot/firmware/overlays/rpivid*
ls: cannot access '/boot/firmware/overlays/rpivid*': No such file or directory
So it looks like:
-
The current
6.12.62+rpt-rpi-v8kernel has no RPivid options built in. -
The firmware set does not ship
rpivid-v4l2.dtboeither.
That would explain why dtoverlay=rpivid-v4l2 is effectively a no‑op and why no /dev/video* devices appear.
Questions
-
On current DietPi for Raspberry Pi, is RPivid/V4L2 hardware decoding intentionally removed from the 6.12.x
+rptkernels? -
What is the recommended way (on DietPi) to get a kernel/firmware combo that does provide RPivid and the corresponding overlay?
I’d like to keep the rest of this DietPi install as‑is and just use whatever kernel/firmware path you recommend to get /dev/video10/11/12 back for V4L2 hardware decoding.
Happy to provide any additional logs or try test kernels if needed. I used AI to help draft this post and it seems accurate, but apologies for any errors. Thanks!