# Raspberry Pi 4 + DietPi: no /dev/video\* with dtoverlay=rpivid-v4l2 on 6.12.62+rpt kernel (Moonlight HW decode)

**URL:** https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988
**Category:** Troubleshooting
**Tags:** raspberry-pi-4
**Created:** [19 February 2026 03:55 UTC](https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988 "2026-02-19T03:55:25Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![nooz](https://dietpi.com/forum/letter_avatar_proxy/v4/letter/n/3ec8ea/32.png) [@nooz](https://dietpi.com/forum/u/nooz)
#### Post date: [19 February 2026 03:55 UTC](https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988/1 "2026-02-19T03:55:25Z")

</div>

### 

- 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:

```auto
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`:

```auto
#-------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:

```auto
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:

```auto
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:

```auto
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-v8` kernel has **no RPivid options built in**.

- The firmware set does **not ship `rpivid-v4l2.dtbo`** either.

That would explain why `dtoverlay=rpivid-v4l2` is effectively a no‑op and why no `/dev/video*` devices appear.

## Questions

1. On current DietPi for Raspberry Pi, is RPivid/V4L2 hardware decoding intentionally removed from the 6.12.x `+rpt` kernels?

2. 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!

---

<div class="post-metadata">

### Author: ![Joulinar](https://dietpi.com/forum/user_avatar/dietpi.com/joulinar/32/57_2.png) [@Joulinar](https://dietpi.com/forum/u/Joulinar)
#### Post date: [19 February 2026 06:23 UTC](https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988/2 "2026-02-19T06:23:58Z")

</div>

We from DietPi team don’t maintain the kernel. It’s the original one from RPi foundation.

---

<div class="post-metadata">

### Author: ![Jappe](https://dietpi.com/forum/user_avatar/dietpi.com/jappe/32/1788_2.png) [@Jappe](https://dietpi.com/forum/u/Jappe)
#### Post date: [19 February 2026 13:23 UTC](https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988/3 "2026-02-19T13:23:51Z")

</div>

Did you activate RPI-codecs with `dietpi-config`?  
On my RPi4 I get

```auto
root@RPi4:~# uname -a
Linux RPi4 6.12.62+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.62-1+rpt1 (2025-12-18) aarch64 GNU/Linux

root@RPi4:~# ls -l /dev/video*
crw-rw---- 1 root video 81, 1 17. Jan 23:00 /dev/video10
crw-rw---- 1 root video 81, 2 17. Jan 23:00 /dev/video11
crw-rw---- 1 root video 81, 3 17. Jan 23:00 /dev/video12
crw-rw---- 1 root video 81, 4 17. Jan 23:00 /dev/video18
crw-rw---- 1 root video 81, 0 17. Jan 23:00 /dev/video19
crw-rw---- 1 root video 81, 5 17. Jan 23:00 /dev/video31

root@RPi4:~# dmesg | grep -Ei 'rpivid|bcm2835-codec|v4l2'
[4.907422] bcm2835-codec bcm2835-codec: Device registered as /dev/video10
[4.907452] bcm2835-codec bcm2835-codec: Loaded V4L2 decode
[4.912592] bcm2835-codec bcm2835-codec: Device registered as /dev/video11
[4.912618] bcm2835-codec bcm2835-codec: Loaded V4L2 encode
[4.915395] bcm2835-codec bcm2835-codec: Device registered as /dev/video12
[4.915422] bcm2835-codec bcm2835-codec: Loaded V4L2 isp
[4.917129] bcm2835-codec bcm2835-codec: Device registered as /dev/video18
[4.917154] bcm2835-codec bcm2835-codec: Loaded V4L2 image_fx
[4.919334] bcm2835-codec bcm2835-codec: Device registered as /dev/video31
[4.919361] bcm2835-codec bcm2835-codec: Loaded V4L2 encode_image

root@RPi4:~# v4l2-ctl --list-devices
bcm2835-codec-decode (platform:bcm2835-codec):
        /dev/video10
        /dev/video11
        /dev/video12
        /dev/video18
        /dev/video31

rpi-hevc-dec (platform:rpi-hevc-dec):
        /dev/video19
        /dev/media0

bcm2835-codec (vchiq:bcm2835-codec):
        /dev/media1

```

I don’t use `rpivid-v4l2` nor `vc4-kms-v3d` tho, you don’t need it for decoding support

```sh
root@RPi4:~# grep dtoverlay /boot/config.txt
dtoverlay=disable-wifi
dtoverlay=argonone

```

For moonlight `/dev/video10` (comes from `bcm2835-codec`) should be enough

### edit:

I just found out `rpivid-v4l2` is deprecated, `bcm2835-codec` + `rpi-hevc-dec` stack is the way to go.

---

<div class="post-metadata">

### Author: ![system](https://dietpi.com/forum/uploads/default/original/1X/7e1021de2213860bce185915ce2c1786e56490ec.png) [@system](https://dietpi.com/forum/u/system)
#### Post date: [17 August 2026 01:23 UTC](https://dietpi.com/forum/t/raspberry-pi-4-dietpi-no-dev-video-with-dtoverlay-rpivid-v4l2-on-6-12-62-rpt-kernel-moonlight-hw-decode/24988/4 "2026-08-17T01:23:51Z")

</div>

This topic was automatically closed 178 days after the last reply. New replies are no longer allowed.
