v4l2src does not support progressive interlacing

Nicolas Dufresne nicolas at ndufresne.ca
Fri Oct 19 01:43:00 UTC 2018


Le jeudi 18 octobre 2018 à 11:27 -0700, Tim Harvey a écrit :
> Greetings,
> 
> I've got a v4l2src capture pipeline using an interlaced video source
> which used to work on GStreamer 1.8.3 that I've found no longer
> negotiates on GStreamer 1.14.1:
> 
> root at bionic-armhf:~# v4l2-ctl -d7 --get-fmt-video
> Format Video Capture:
>         Width/Height      : 720/480
>         Pixel Format      : 'UYVY' (UYVY 4:2:2)
>         Field             : Sequential Bottom-Top
>         Bytes per Line    : 1440
>         Size Image        : 691200
>         Colorspace        : SMPTE 170M
>         Transfer Function : Rec. 709
>         YCbCr/HSV Encoding: ITU-R 601
>         Quantization      : Limited Range
>         Flags             :
> root at bionic-armhf:~# gst-launch-1.0 --version
> gst-launch-1.0 version 1.14.1
> GStreamer 1.14.1
> https://launchpad.net/distros/ubuntu/+source/gstreamer1.0
> root at bionic-armhf:~# gst-launch-1.0 v4l2src device=/dev/video7 !
> video/x-raw,format=UYVY ! jpegenc ! rtpjpegpay ! udpsink host=$SERVER
> port=5000
> Setting pipeline to PAUSED ...
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstSystemClock
> ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
> Device
> '/dev/video7' does not support progressive interlacing
> Additional debug info:
> gstv4l2object.c(3768): gst_v4l2_object_set_format_full ():
> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
> Device wants interleaved interlacing
> Execution ended after 0:00:00.003064667
> Setting pipeline to PAUSED ...
> Setting pipeline to READY ...
> Setting pipeline to NULL ...
> Freeing pipeline ...
> 
> Any idea what changed here that causes this?

1.8 to 1.14 is quite a big bump. Can you share some logs ?

  GST_DEBUG_NO_COLOR=1 GST_DEBUG="v4l2*:7" gst-launch-1.0 ...

One of the difference I know of, is that we no longer probe for
interlaced mode support. This was really slow with most USB Webcams.
Though, somehow, from the two possible interlace mode, only progressive
seems to have been tried. The log should tell me more about the issue.
You could also try the following:

  gst-launch-1.0 v4l2src device=/dev/video7 ! video/x-raw,format=UYVY,interlace-mode=interleaved ! jpegenc ! rtpjpegpay ! udpsink host=$SERVER port=5000

Of course, the new negotiation should have added interleaved to the
list of caps to try. I believe that if jpegenc was exposing interlace-
mode={propressive, interleaved} it would have worked. Let me know if
it's what I think, we'll file a bug for this. 
> 
> Regards,
> 
> Tim
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



More information about the gstreamer-devel mailing list