Skip to content

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

Description

@youssefqarri
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

  • 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
  • GStreamer 1.26.2 (gstreamer1.0-plugins-bad 1.26.2-3+rpt3+deb13u2)
  • Test file attached: 10 s SMPTE bars, 1080p25, HEVC Main (libx265, keyint=50, hvc1)

Steps to reproduce

gst-launch-1.0 filesrc location=test_hevc_1080p25.mp4 ! qtdemux ! h265parse ! v4l2slh265dec ! fakevideosink sync=false

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:

ffmpeg -hwaccel drm -i test_hevc_1080p25.mp4 -f null -

Notes

  • 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.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions