ok,try TX2-NX,Thanks.
TX2-NX susport Virtual channel? Our company needs to use 4 camera.
such as: vc-id = <0>;
TX2-NX support interlaced ,What do I need to configure interlaced.Is there any documentation or examples?
Thanks
Yes, there needs to be the following property in the sensor mode of the device tree
is_interlaced = 1;
By default the interlaced captures will be top and bottom. The following property is optional and only needs to be set for interleaved captures
interlaced_type = 1;
And to add on,
The image size in the DT should be of the field sizeand not the entire frame size.
So a 1920x1080i capture the height should be 540 and not 1080.
Supporting interlaced captures essentially signifies that both fields TOP and BOTTOM will be captured in the same frame buffer.
I try TX2-NX,But the image is only half. I feel TX2-NX donot support it,or I configuration is not right.
Could you post the normal frame to compare.
Which app are you using?
For interlaced captures, the application needs to allocate a full image sized buffer. Since we specify only the field size in DT, v4l2-ctl by default allocates a smaller buffer.
I use video.sh
gst-launch-1.0 v4l2src device=/dev/video$1 ! “video/x-raw,format=UYVY,width=960,height=240,framerate=$2/1” ! nvvidconv ! “video/x-raw(memory:NVMM),format=NV12” ! nvoverlaysink sync=false
March Net had written their own app for this to verify. ->.Is there any examples?Thanks
Sorry, I mean you need to developer your own APP for it. I don’t have sample code on hand.
if i written their app for this to verify, so i donot support it on TX2
.
I tried it on Xavier NX yesterday, the image is only half,I feel to TX2 donot support interlaced scan.
Have a try nvv4l2camerasrc that support interlaced mode.
gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! \
'video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, \
height=(int)240, interlace-mode=interlaced, framerate=(fraction)25/1' ! \
nvdeinterlace mode=1 ! 'video/x-raw(memory:NVMM), format=(string)NV12' \
! nv3dsink -e
gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! \
'video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, \ height=(int)480, interlace-mode=interlaced, framerate=(fraction)30/1' ! \ nvdeinterlace mode=1 ! 'video/x-raw(memory:NVMM), format=(string)NV12' \ ! nv3dsink -e
WARNING: erroneous pipeline: no element “nvdeinterlace”
2,
gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! \
'video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, \ height=(int)480, interlace-mode=interlaced, framerate=(fraction)30/1' ! \ 'video/x-raw(memory:NVMM), format=(string)NV12' \ ! nv3dsink -e
(gst-launch-1.0:14231): GStreamer-CRITICAL **: 14:45:48.774: gst_element_make_from_uri: assertion ‘gst_uri_is_valid (uri)’ failed
WARNING: erroneous pipeline: no element “video”
No way to use nvv4l2camerasrc
Please have a try below command.
gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! 'video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, height=(int)480, interlace-mode=interlaced' ! nvvidconv ! xvimagesink -e
$ gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! ‘video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, height=(int)480, interlace-mode=interlaced’ ! nvvidconv ! xvimagesink -e
Setting pipeline to PAUSED …
Pipeline is live and does not need PREROLL …
Setting pipeline to PLAYING …
New clock: GstSystemClock
Caught SIGSEGV
#0 0x0000007f967b7e28 in __GI___poll (fds=0x5561ee8360, nfds=547986625080, timeout=) at …/sysdeps/unix/sysv/linux/poll.c:41
#1 0x0000007f968c4e08 in () at /usr/lib/aarch64-linux-gnu/libglib-2.0.so.0
#2 0x0000005561dafb10 in ()
Spinning. Please run ‘gdb gst-launch-1.0 23015’ to continue debugging, Ctrl-C to quit, or Ctrl-\ to dump core.
No correct image comes out
gst-launch-1.0 nvv4l2camerasrc device=/dev/video0 num-buffers=100 ! ‘video/x-raw(memory:NVMM), format=(string)UYVY, width=(int)960, height=(int)480, interlace-mode=interlaced, framerate=(fraction)30/1’ ! nvvidconv ! xvimagesink -e
No correct image comes out
What about changing height to 240
Changing height to 240,No correct image comes out
Could you try interlace-mode=(string)progressive
Changing interlace-mode=(string)progressive ,No correct image comes out