gst-plugins-bad fails on VIDIOC_S_EXT_CTRLS failed: Bad address, Driver did not accept the bitstream parameters.
- Kernel Version 5.10.3-MANJARO-ARM
- Hardware: Pinephone
- CPU: Allwiner A64
- GStreamer Version: 1.18.3
Gstreamer fails to play any video on Pinephone with gst-plugins-bad, vainfo only works with LIBVA driver name, request video path, request media path environment variables set. gst-plugins-bad fails with the same error with or without the environment variables.
$ zcat /proc/config.gz | grep CEDRUS
CONFIG_VIDEO_SUNXI_CEDRUS=y
$ vainfo
$ export LIBVA_DRIVER_NAME=v4l2_request
$ export LIBVA_V4L2_REQUEST_VIDEO_PATH=/dev/video1
$ export LIBVA_V4L2_REQUEST_MEDIA_PATH=/dev/media0
vainfo: VA-API version: 1.10 (libva 2.8.0)
vainfo: Driver version: v4l2-request
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264MultiviewHigh : VAEntrypointVLD
VAProfileH264StereoHigh : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
$ export GST_DEBUG=5
$ gst-play-1.0 file_example_MP4_1280_10MG.mp4
0:00:08.753821933 292786 0xffffa400e640 ERROR v4l2codecs-decoder gstv4l2decoder.c:677:gst_v4l2_decoder_set_controls:<v4l2decoder1> VIDIOC_S_EXT_CTRLS failed: Bad address
0:00:08.753826558 292786 0xaaaae5c86c00 DEBUG bin gstbin.c:2330:update_degree:<videosink> element videosink-actual-sink-glimage not linked on any sinkpads
0:00:08.753903684 292786 0xffffa400e640 WARN v4l2codecs-h264dec gstv4l2codech264dec.c:1008:gst_v4l2_codec_h264_dec_submit_bitstream:<v4l2slh264dec0> error: Driver did not accept the bitstream parameters.