You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
rpivid: "phase1_cb: Post wait: 0xffffffff" on every frame with GStreamer v4l2slh265dec, broken decode — ffmpeg works fine on same driver (Pi 4B & Pi 5) #7536
Decoding 1080p25 HEVC (Main, yuv420p) through GStreamer's stateless decoder v4l2slh265dec triggers a kernel error from the rpivid driver on every single frame (250 frames → 250 errors) and produces broken output. The same file decodes flawlessly on the same device/driver via ffmpeg's V4L2 request-API hwaccel (zero kernel errors), so the hardware and the stream are fine — this looks like an incompatibility between GStreamer's v4l2codecs plugin and rpivid.
Environment
Raspberry Pi 4B and Raspberry Pi 5 — both reproduce, identical signature (feb00000.codec / 1000800000.codec)
Raspberry Pi OS (Debian 13 trixie), kernel 6.12.47+rpt-rpi-v8
Result — dmesg shows one error per decoded frame (250 for this 10 s clip, on both models):
rpi-hevc-dec feb00000.codec: phase1_cb: Post wait: 0xffffffff
With a real sink (kmssink), playback runs at ~41 % of realtime with corrupted fr
https://github.com/user-attachments/assets/07a97b8e-97f9-4cd1-8e6f-3690159a337d
ames.
Control test — same file, same device, same driver, via ffmpeg: realtime hardware decode, exit 0, zero kernel errors:
Possibly related to #6873 (same message appears there as log spam, but that reporter has smooth playback under Kodi; here the decode output is actually broken).
Possibly related to missing SAND (NC12/NC30) format support in GStreamer v4l2codecs (discussed on GStreamer Discourse).
We can reproduce at will on both models and are happy to test any diagnostic patch.
test_hevc_1080p25.mp4
Describe the bug
Describe the bug
Decoding 1080p25 HEVC (Main, yuv420p) through GStreamer's stateless decoder v4l2slh265dec triggers a kernel error from the rpivid driver on every single frame (250 frames → 250 errors) and produces broken output. The same file decodes flawlessly on the same device/driver via ffmpeg's V4L2 request-API hwaccel (zero kernel errors), so the hardware and the stream are fine — this looks like an incompatibility between GStreamer's v4l2codecs plugin and rpivid.
Environment
Steps to reproduce
gst-launch-1.0 filesrc location=test_hevc_1080p25.mp4 ! qtdemux ! h265parse ! v4l2slh265dec ! fakevideosink sync=falseResult — dmesg shows one error per decoded frame (250 for this 10 s clip, on both models):
Control test — same file, same device, same driver, via ffmpeg: realtime hardware decode, exit 0, zero kernel errors:
ffmpeg -hwaccel drm -i test_hevc_1080p25.mp4 -f null -Notes
Steps to reproduce the behaviour
gst-launch-1.0 filesrc location=test_hevc_1080p25.mp4 ! qtdemux ! h265parse ! v4l2slh265dec ! fakevideosink sync=false
Device (s)
Raspberry Pi 5, Raspberry Pi 4 Mod. B
System
Raspberry Pi OS (Debian 13 trixie), kernel 6.12.47+rpt-rpi-v8
Logs
No response
Additional context
No response