Tool/software: Linux
We are using am5728evm with linux sdk for capturing two streams of video data.One channel video is fed to vin3a form external dvi decoder. The another channel video is from usb webcam.Both the video streams are working fine individually whereas when combined we are facing issues.please see the debugs of gstreamer below.
root@am57xx-evm:~# gst-launch-1.0 v4l2src device=/dev/video1 ! 'video/x-raw,width=1024,height=768,framerate=30/1,format=YUY2' ! queue ! videoconvert ! queue ! ducatih264enc ! h264parse ! queue ! mp4mux ! filesink location=/home/root/1.mp4 v4l2src device=/dev/video2 ! 'video/x-raw,width=640,height=480,framerate=30/1' ! queue ! videoconvert ! queue ! ducatih264enc ! h264parse ! queue ! mp4mux ! filesink location=/home/root/2.mp4 -e --gst-debug=2
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
0:00:00.274108786 1379 0x146f20 WARN v4l2bufferpool gstv4l2bufferpool.c:749:gst_v4l2_buffer_pool_start:<v4l2src0:pool:src> Uncertain or not enough buffers, enabling copy threshold
0:00:00.517393865 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.271529222
0:00:00.550822190 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.304964246
0:00:00.634399185 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 2 - ts: 0:00:00.388549222
0:00:00.701258926 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.455418873
0:00:00.734689366 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.488852547
0:00:00.815439701 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.555720873
0:00:00.848230048 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.589155873
0:00:00.881084160 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.622589873
0:00:00.913889146 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.656023710
0:00:00.948172936 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.689457872
0:00:00.981538960 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.722892548
0:00:01.015699773 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.756326385
0:00:01.048675397 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.789760710
0:00:01.081732354 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.823194710
0:00:01.114597365 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.856628710
0:00:01.148554194 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.890062873
0:00:01.181526890 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.923496710
0:00:01.214738218 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.956931873
0:00:01.247596396 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:00.990365710
0:00:01.280439609 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.023800873
0:00:01.313269809 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.057234873
0:00:01.346618916 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.090668873
0:00:01.379501169 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.124102710
0:00:01.412447350 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.157536710
0:00:01.445250710 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.190970710
0:00:01.478615921 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.224405710
0:00:01.518544243 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.257840572
0:00:01.551003889 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.291274059
0:00:01.583288179 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.324707897
0:00:01.616551561 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.358141897
0:00:01.649094654 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.391576409
0:00:01.681350315 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.425011059
0:00:01.713642576 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.458445060
0:00:01.746147280 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.491879060
0:00:01.778488504 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.525312897
0:00:01.810923424 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.558747059
0:00:01.842842040 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.592186710
0:00:01.875787896 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.625615222
0:00:01.908953840 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.659049872
0:00:01.942132146 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.692484385
0:00:01.975327208 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.725918547
0:00:02.008516250 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.759352385
0:00:02.041676501 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.792786547
0:00:02.074809423 1379 0x146f20 WARN v4l2src gstv4l2src.c:827:gst_v4l2src_create:<v4l2src0> lost frames detected: count = 1 - ts: 0:00:01.826220710
0:00:04.970443140 1379 0x146ef0 ERROR v4l2allocator gstv4l2allocator.c:735:gst_v4l2_allocator_start:<v4l2src1:pool:src:allocator> error requesting 2 buffers: Cannot allocate memory
0:00:04.970705522 1379 0x146ef0 ERROR v4l2bufferpool gstv4l2bufferpool.c:849:gst_v4l2_buffer_pool_start:<v4l2src1:pool:src> we received 0 buffer from device '/dev/video2', we want at least 2
0:00:04.970871116 1379 0x146ef0 ERROR bufferpool gstbufferpool.c:531:gst_buffer_pool_set_active:<v4l2src1:pool:src> start failed
0:00:04.971082420 1379 0x146ef0 WARN v4l2src gstv4l2src.c:511:gst_v4l2src_decide_allocation:<v4l2src1> error: Failed to allocate required memory.
0:00:04.971272415 1379 0x146ef0 WARN v4l2src gstv4l2src.c:511:gst_v4l2src_decide_allocation:<v4l2src1> error: Buffer pool activation failed
0:00:04.971563100 1379 0x146ef0 WARN basesrc gstbasesrc.c:3172:gst_base_src_prepare_allocation:<v4l2src1> Subclass failed to decide allocation
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src1: Failed to allocate required memory.
0:00:04.971817023 1379 0x146ef0 WARN basesrc gstbasesrc.c:2943:gst_base_src_loop:<v4l2src1> error: Internal data flow error.
0:00:04.971859967 1379 0x146ef0 WARN basesrc gstbasesrc.c:2943:gst_base_src_loop:<v4l2src1> error: streaming task paused, reason not-negotiated (-4)
Additional debug info:
../../../gst-plugins-good-1.6.3/sys/v4l2/gstv4l2src.c(511): gst_v4l2src_decide_allocation (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src1:
Buffer pool activation failed
EOS on shutdown enabled -- waiting for EOS after Error
Waiting for EOS...
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src1: Internal data flow error.
Additional debug info:
../../../../gstreamer-1.6.3/libs/gst/base/gstbasesrc.c(2943): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src1:
streaming task paused, reason not-negotiated (-4)