I am simply trying to play video with gstreamer on a Raspberry Pi Model 3B+ running Raspberry Pi OS 64-bit. ffplay and vlc work fine, but gstreamer doesn't. The command and output are:

gst-launch-1.0 playbin uri=file:~/Downloads/sample_640x360.mp4
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
Redistribute latency...
ERROR: from element /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstKMSSink:kmssink0: GStreamer encountered a general resource error.
Additional debug info:
../sys/kms/gstkmssink.c(1711): gst_kms_sink_show_frame (): /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstKMSSink:kmssink0:
drmModeSetPlane failed: Permission denied (13)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
ERROR: from element /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0: Internal data stream error.
Additional debug info:
../gst/isomp4/qtdemux.c(6545): gst_qtdemux_loop (): /GstPlayBin:playbin0/GstURIDecodeBin:uridecodebin0/GstDecodeBin:decodebin0/GstQTDemux:qtdemux0:
streaming stopped, reason error (-5)
ERROR: pipeline doesn't want to preroll.
Freeing pipeline ...

What am I missing?

  • Even gst-launch-1.0 videotestsrc ! videoconvert ! autovideosink doesn't work, however gst-launch-1.0 videotestsrc ! videoconvert ! ximagesink does.
    – Dane
    Jan 12, 2023 at 12:31
  • From the error message, it is trying to render to a kmssink (direct rendering to a DRM device), but it got a permission denied error trying to configure the DRM mode. What happens if you add your user to the "videos" group? That might grant it access to the DRM device.
    – David C.
    Nov 27, 2023 at 18:30

1 Answer 1


I got this working with

gst-launch-1.0 filesrc location=/home/pi/Downloads/sample_640x360.mp4 ! qtdemux ! h264parse ! avdec_h264 ! autovideoconvert ! ximagesink

The following also works, but is very slow/jerky:

gst-launch-1.0 playbin uri=file:///home/pi/Downloads/sample_640x360.mp4 video-sink=ximagesink

Still not sure why autovideosink is not working.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.