Control: tags -1 confirmed
thanks

On 10/01/2015 05:25 PM, Roland Mas wrote:
> 
> I'm trying to intercept a video stream from a webcam and crop it a bit
> before passing it on for further processing.  I found v4l2loopback,
> which sounds like it's exactly what I'm looking for.  However, I get
> crashes as soon as I try to insert processing in the pipeline.
> 
> The following works:
> 
> ,----
> | $ gst-launch-1.0 v4l2src device=/dev/video0 ! v4l2sink device=/dev/video1
> `----
> 
> (Works as in I'm able to see the video with "gst-launch-1.0 v4l2src
> device=/dev/video1 ! xvimagesink")


interesting.
to the best of my knowledge, v4l2loopback and GStreamer-1.0 don't work
together at all.
good to hear that they finally do work together.


> The following, however, doesn't (I added some debugging):
[...]
> | 0:00:00.247794498  8590      0x13bd050 WARN                    v4l2 
> gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0>
>  Unknown frame interval type at YVYU@48x32: 0
> | 0:00:00.618841172  8590      0x13bd050 ERROR          v4l2allocator 
> gstv4l2allocator.c:1299:gst_v4l2_allocator_dqbuf:<v4l2sink0:pool:sink:allocator>
>  buffer 1 was not queued, this indicate a driver bug.
> | 0:00:00.618972830  8590      0x13bd050 WARN                 basesrc 
> gstbasesrc.c:2943:gst_base_src_loop:<v4l2src0> error: Internal data flow 
> error.
> | 0:00:00.619019484  8590      0x13bd050 WARN                 basesrc 
> gstbasesrc.c:2943:gst_base_src_loop:<v4l2src0> error: streaming task paused, 
> reason error (-5)
> | ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal 
> data flow error.

which is *not* a crash. GStreamer just tells you that it can't play this
pipeline, and gst-launch does a controlled quit after that.

> 
>   I'm pretty sure the problem lies with v4l2loopback, since replacing
> the v4l2sink with a simple xvimagesink in both pipelines gives me the
> unaltered stream in the first case and a cropped one in the second case.
> 
>   This takes out much of the value of v4l2loopback, if I can only resend
> video as-is :-)

as v4l2loopback doesn't do any deep inspection of the video processing
(how is it supposed to know what's the original and what's the altered
stream?) the problem must lie somewhere else.

probably even with GStreamer (check the negotiated caps in both cases).

gmadsr
IOhannes



Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to