Is there a alternative way for (gst)interlace-mode=proggressive?

According to Accelerated Gstreamer User Guide interlace-mode=proggressive does not work on TX2. Is there a alternative way to do it ?

Hi,
We only support progressive mode. Please share the failure pipeline so that we can check and give suggestion.

It worked on standart onboard cam pipeline but not on this one :

const char* gst = ("v4l2src device=/dev/video1 ! video/x-raw,width=720,height=576,format=(string)YUY2, framerate=(fraction)25/1,interlace-mode=(string)progressive ! nvvidconv flip-method=4  ! video/x-raw(memory:NVMM),width=720,height=576,format=(string)I420 ! nvvidconv ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR   ! appsink")

and my error:

OpenCV(3.4.1-dev) Error: Unspecified error (GStreamer: unable to start pipeline
) in cvCaptureFromCAM_GStreamer, file /home/nvidia/opencv/modules/videoio/src/cap_gstreamer.cpp, line 890
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:

OpenCV(3.4.1-dev) /home/nvidia/opencv/modules/videoio/src/cap_gstreamer.cpp:890: error: (-2) GStreamer: unable to start pipeline
in function cvCaptureFromCAM_GStreamer

OpenCV(3.4.1-dev) Error: Assertion failed (0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows) in Mat, file /home/nvidia/opencv/modules/core/src/matrix.cpp, line 464
terminate called after throwing an instance of ‘cv::Exception’
what(): OpenCV(3.4.1-dev) /home/nvidia/opencv/modules/core/src/matrix.cpp:464: error: (-215) 0 <= roi.x && 0 <= roi.width && roi.x + roi.width <= m.cols && 0 <= roi.y && 0 <= roi.height && roi.y + roi.height <= m.rows in function Mat

Hi,
Are you able to launch the pipeline via gst-launch-1.0?

$ gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=720,height=576,format=(string)YUY2, framerate=(fraction)25/1,interlace-mode=(string)progressive ! nvvidconv flip-method=4  ! video/x-raw(memory:NVMM),width=720,height=576,format=(string)I420 ! nvvidconv ! video/x-raw, format=(string)BGRx ! videoconvert ! video/x-raw, format=(string)BGR ! appsink

Hi DaneLLL,

I tried what you said here is the result :
gst-launch-1.0 v4l2src device=/dev/video1 ! video/x-raw,width=720,height=576,format=YUY2, framerate=25/1,interlace-mode=progressive ! nvvidconv flip-method=4 ! video/x-raw,width=720,height=576,format=I420 ! nvvidconv ! video/x-raw, format=BGRx ! videoconvert ! video/x-raw, format=BGR ! appsink

Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Internal data flow error.
Additional debug info:
gstbasesrc.c(2948): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
streaming task paused, reason not-negotiated (-4)
ERROR: pipeline doesn’t want to preroll.
Setting pipeline to PAUSED …
Setting pipeline to READY …
Setting pipeline to NULL …
Freeing pipeline …

Hi,
Could you run

$ v4l2-ctl -d /dev/video1 --list-formats-ext

to check if your v4l2 source supports 720x576p25 YUYV?