v4l2jpegdec: fails with "ERROR ... v4l2allocator ... failed queueing buffer 0: Invalid argument"
Hi, I tested v4l2jpeg with the following pipeline:
gst-launch-1.0 souphttpsrc location="https://webcam1.lpl.org/axis-cgi/mjpg/video.cgi" ssl-strict=false ! multipartdemux ! v4l2jpegdec ! videoconvert ! autovideosink
and receive:
0:00:04.515223334 930 0x1f22bb0 ERROR v4l2allocator gstv4l2allocator.c:1270:gst_v4l2_allocator_qbuf:<v4l2jpegdec0:pool:sink:allocator> failed queueing buffer 0: Invalid argument
0:00:04.520104667 930 0x1f22bb0 ERROR v4l2bufferpool gstv4l2bufferpool.c:1196:gst_v4l2_buffer_pool_qbuf:<v4l2jpegdec0:pool:sink> could not queue a buffer 0
0:00:04.521659334 930 0x1f22bb0 ERROR v4l2bufferpool gstv4l2bufferpool.c:2094:gst_v4l2_buffer_pool_process:<v4l2jpegdec0:pool:sink> failed to queue buffer
ERROR: from element /GstPipeline:pipeline0/GstSoupHTTPSrc:souphttpsrc0: Internal data stream error.
While the same pipeline with jpegdec
works fine.
I tried increasing the CMA size but that did not help so far.
Note: Another pipeline using v4l2h264dec
works fine.
Listing the device with v4l2-ctl -d /dev/video1 --all
yields:
Driver Info:
Driver name : coda
Card type : CODA960
Bus info : platform:coda
Driver version : 5.8.0
Capabilities : 0x84208000
Video Memory-to-Memory
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x04208000
Video Memory-to-Memory
Streaming
Extended Pix Format
Priority: 2
Format Video Capture:
Width/Height : 1920/1088
Pixel Format : 'NV12' (Y/CbCr 4:2:0)
Field : None
Bytes per Line : 1920
Size Image : 3133440
Colorspace : JPEG
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
Format Video Output:
Width/Height : 1920/1088
Pixel Format : 'JPEG' (JFIF JPEG)
Field : None
Bytes per Line : 0
Size Image : 3133440
Colorspace : JPEG
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
Selection Video Capture: compose, Left 0, Top 0, Width 1920, Height 1088, Flags:
Selection Video Capture: compose_default, Left 0, Top 0, Width 1920, Height 1088, Flags:
Selection Video Capture: compose_bounds, Left 0, Top 0, Width 1920, Height 1088, Flags:
Selection Video Capture: compose_padded, Left 0, Top 0, Width 1920, Height 1088, Flags:
Streaming Parameters Video Output:
Capabilities : timeperframe
Frames per second: 30.000 (30/1)
Write buffers : 0
User Controls
horizontal_flip 0x00980914 (bool) : default=0 value=0
vertical_flip 0x00980915 (bool) : default=0 value=0
min_number_of_capture_buffers 0x00980927 (int) : min=1 max=1 step=1 default=1 value=1 flags=read-only
I am running a Buildroot setup on an i.MX 6 Solo board. Linux kernel 5.8.0-rc5. GStreamer 1.16.2.
Is there an issue with my setup/pipeline or should I try something else?