v4l2src problems

Krzysztof Borowczyk k.borowczyk at samsung.com
Fri Aug 29 03:37:36 PDT 2014


Hello,

 

I’m trying to have two parallel “pipelines” in GstPipeline. One is supposed to read from udp and stream to rtmp, the second one from /dev/video0 to rtmp. I tested with output set to screen (autovideosink) and that fails also, I get first frame of video from udp, and then it locks – the second (v4l2) window shows whatever was in the background.

 

I can run both of them separately, but when I try to start a GstPipeline with both of them, I get errors: 

 

0:00:04.907879045  6393 0x7f190420e190 ERROR                   v4l2 gstv4l2bufferpool.c:551:gst_v4l2_buffer_pool_streamon:<v4l2source:pool:src> error with STREAMON 22 (Invalid argument)

0:00:04.907934968  6393 0x7f190420e190 WARN                    v4l2 gstv4l2bufferpool.c:994:gst_v4l2_buffer_pool_poll:<v4l2source> error: poll error 1: Invalid argument (22)

0:00:04.908032710  6393 0x7f190420e190 WARN                 v4l2src gstv4l2src.c:749:gst_v4l2src_create:<v4l2source> error: Failed to allocate a buffer

GStreamer ERROR: gstv4l2bufferpool.c(994): gst_v4l2_buffer_pool_poll (): /GstPipeline:pipeline/GstBin:pipeline_0/GstBin:source/GstV4l2Src:v4l2source:

poll error 1: Invalid argument (22)

0:00:04.908091528  6393 0x7f190420e190 WARN                 basesrc gstbasesrc.c:2933:gst_base_src_loop:<v4l2source> error: Internal data flow error.

0:00:04.908103434  6393 0x7f190420e190 WARN                 basesrc gstbasesrc.c:2933:gst_base_src_loop:<v4l2source> error: streaming task paused, reason error (-5)

 

What could be causing this kind of problem? Where I could make a conflict? I run a similar pipeline from the command line and it run without problems (although I’m not sure, if it creates one or two main GstPipeline objects).

 

The full log looks like this (GST_DEBUG=*:3,v4l2src:5):

 

0:00:04.904773101  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:306:gst_v4l2src_negotiate:<v4l2source> caps of src: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 5/1, 5/2 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 20/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 15/2 }; image/jpeg, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }

0:00:04.904891005  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:307:gst_v4l2src_negotiate:<v4l2source> thiscaps: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 5/1, 5/2 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 20/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 15/2 }; image/jpeg, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 15/1, 10/1 }; image/jpeg, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }; image/jpeg, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction){ 30/1, 15/1 }

0:00:04.905109735  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:315:gst_v4l2src_negotiate:<v4l2source> caps of peer: video/x-raw, format=(string)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }

0:00:04.905145185  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:316:gst_v4l2src_negotiate:<v4l2source> peercaps: video/x-raw, format=(string)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]; video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }

0:00:04.905175861  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:326:gst_v4l2src_negotiate:<v4l2source> peer: video/x-raw, format=(string)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

0:00:04.905190613  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:327:gst_v4l2src_negotiate:<v4l2source> ipcaps: video/x-raw, format=(string)I420, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]

0:00:04.905219649  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:326:gst_v4l2src_negotiate:<v4l2source> peer: video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }

0:00:04.905242035  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:327:gst_v4l2src_negotiate:<v4l2source> ipcaps: video/x-raw, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, NV12, NV21, NV16, NV24, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10LE, I420_10BE, I422_10LE, I422_10BE, Y444_10LE, Y444_10BE, GBR, GBR_10LE, GBR_10BE, NV12_64Z32 }

0:00:04.905311464  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:339:gst_v4l2src_negotiate:<v4l2source> intersect: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 5/1, 5/2 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 20/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }

0:00:04.905362557  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:340:gst_v4l2src_negotiate:<v4l2source> icaps: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 5/1, 5/2 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)1024, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)1280, height=(int)960, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 15/2, 5/1 }; video/x-raw, format=(string)YUY2, width=(int)800, height=(int)600, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 20/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)640, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)352, height=(int)288, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)320, height=(int)240, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)176, height=(int)144, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }; video/x-raw, format=(string)YUY2, width=(int)160, height=(int)120, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 30/1, 15/1 }

0:00:04.905419994  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:256:gst_v4l2src_fixate:<v4l2source> fixating caps video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction){ 5/1, 5/2 }

0:00:04.905439574  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:279:gst_v4l2src_fixate:<v4l2source> fixated caps video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction)5/1

0:00:04.905453604  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:390:gst_v4l2src_negotiate:<v4l2source> fixated to: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction)5/1

0:00:04.905466635  6393 0x7f190420e190 DEBUG                v4l2src gstv4l2src.c:391:gst_v4l2src_negotiate:<v4l2source> caps: video/x-raw, format=(string)YUY2, width=(int)1600, height=(int)1200, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, framerate=(fraction)5/1

0:00:04.907879045  6393 0x7f190420e190 ERROR                   v4l2 gstv4l2bufferpool.c:551:gst_v4l2_buffer_pool_streamon:<v4l2source:pool:src> error with STREAMON 22 (Invalid argument)

0:00:04.907934968  6393 0x7f190420e190 WARN                    v4l2 gstv4l2bufferpool.c:994:gst_v4l2_buffer_pool_poll:<v4l2source> error: poll error 1: Invalid argument (22)

0:00:04.908032710  6393 0x7f190420e190 WARN                 v4l2src gstv4l2src.c:749:gst_v4l2src_create:<v4l2source> error: Failed to allocate a buffer

GStreamer ERROR: gstv4l2bufferpool.c(994): gst_v4l2_buffer_pool_poll (): /GstPipeline:pipeline/GstBin:pipeline_0/GstBin:source/GstV4l2Src:v4l2source:

poll error 1: Invalid argument (22)

0:00:04.908091528  6393 0x7f190420e190 WARN                 basesrc gstbasesrc.c:2933:gst_base_src_loop:<v4l2source> error: Internal data flow error.

0:00:04.908103434  6393 0x7f190420e190 WARN                 basesrc gstbasesrc.c:2933:gst_base_src_loop:<v4l2source> error: streaming task paused, reason error (-5)

GStreamer ERROR: gstv4l2src.c(749): gst_v4l2src_create (): /GstPipeline:pipeline/GstBin:pipeline_0/GstBin:source/GstV4l2Src:v4l2source

0:00:04.908440954  6393 0x7f19041a2680 FIXME               basesink gstbasesink.c:3059:gst_base_sink_default_event:<sink> stream-start event without group-id. Consider implementing group-id handling in the upstream elements

GStreamer ERROR: gstbasesrc.c(2933): gst_base_src_loop (): /GstPipeline:pipeline/GstBin:pipeline_0/GstBin:source/GstV4l2Src:v4l2source:

streaming task paused, reason error (-5)

0:00:05.161195439  6393 0x7f190420e050 FIXME               basesink gstbasesink.c:3059:gst_base_sink_default_event:<sink> stream-start event without group-id. Consider implementing group-id handling in the upstream elements

 

-- 

Best regards,
Krzysztof Borowczyk

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140829/83ed5033/attachment-0001.html>


More information about the gstreamer-devel mailing list