I have 4 USB2.0 cameras and 2 USB3.0 cameras. When I want to use two USB3.0 cameras on one BUS at the same time, they cannot work at the same time. The message: ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Failed to allocate required memory is displayed. My USB topology is as follows:
Error when opening the camera:
‘’’
pss@jetson:~$ gst-launch-1.0 v4l2src device=/dev/video2 ! image/jpeg,width=320,height=240,framerate=60/1 ! jpegdec ! videoconvert ! autovideosink
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Got context from element ‘autovideosink0’: gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)“(GstGLDisplayX11)\ gldisplayx11-0”;
Pipeline is PREROLLED …
Setting pipeline to PLAYING …
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Failed to allocate required memory.
Additional debug info:
../sys/v4l2/gstv4l2src.c(759): gst_v4l2src_decide_allocation (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
Buffer pool activation failed
Execution ended after 0:00:00.249645337
Setting pipeline to NULL …
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming stopped, reason not-negotiated (-4)
Freeing pipeline …
‘’’
I read other posts saying that multiple USB 3.0 cameras can work, but it seems that this is not the case in my case.
