Package: v4l2loopback-dkms Version: 0.9.1-2 Severity: normal 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") The following, however, doesn't (I added some debugging): ,---- | $ gst-launch-1.0 v4l2src device=/dev/video0 ! videocrop left=160 ! v4l2sink device=/dev/video1 | Setting pipeline to PAUSED ... | Pipeline is live and does not need PREROLL ... | Setting pipeline to PLAYING ... | New clock: GstSystemClock | 0:00:00.246143117 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at YUYV@48x32: 0 | 0:00:00.246290508 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at UYVY@48x32: 0 | 0:00:00.246359603 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at 422P@48x32: 0 | 0:00:00.246427807 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at YU12@48x32: 0 | 0:00:00.246493806 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at YV12@48x32: 0 | 0:00:00.246559342 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at 411P@48x32: 0 | 0:00:00.246627256 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at YVU9@48x32: 0 | 0:00:00.246695596 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at YUV9@48x32: 0 | 0:00:00.246762468 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at JPEG@48x32: 0 | 0:00:00.246820456 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at MJPG@48x32: 0 | 0:00:00.246877908 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at dvsd@48x32: 0 | 0:00:00.246936149 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at RGB4@48x32: 0 | 0:00:00.247000757 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at BGR4@48x32: 0 | 0:00:00.247063194 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at RGB3@48x32: 0 | 0:00:00.247125751 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at BGR3@48x32: 0 | 0:00:00.247189433 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at RGBP@48x32: 0 | 0:00:00.247297051 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at RGBO@48x32: 0 | 0:00:00.247360952 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at GREY@48x32: 0 | 0:00:00.247424629 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at VP80@48x32: 0 | 0:00:00.247495616 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at MPG4@48x32: 0 | 0:00:00.247555950 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at MPG2@48x32: 0 | 0:00:00.247618681 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at MPG1@48x32: 0 | 0:00:00.247676672 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at H263@48x32: 0 | 0:00:00.247735644 8590 0x13bd050 WARN v4l2 gstv4l2object.c:2167:gst_v4l2_object_probe_caps_for_format_and_size:<v4l2sink0> Unknown frame interval type at H264@48x32: 0 | 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. | Additional debug info: | gstbasesrc.c(2943): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: | streaming task paused, reason error (-5) | Execution ended after 0:00:00.526926752 | Setting pipeline to PAUSED ... | Setting pipeline to READY ... | Setting pipeline to NULL ... | Freeing pipeline ... `---- 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 :-) Thanks, Roland. -- System Information: Debian Release: stretch/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.2.0-1-amd64 (SMP w/8 CPU cores) Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages v4l2loopback-dkms depends on: ii dkms 2.2.0.3-2 v4l2loopback-dkms recommends no packages. Versions of packages v4l2loopback-dkms suggests: ii v4l2loopback-utils 0.9.1-2 -- no debconf information -- Roland Mas Indépendant en informatique libre -- Free software freelance http://www.gnurandal.com/

