<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le dim. 18 oct. 2020 19 h 45, zakhar.khadanovich <<a href="mailto:zakhar.khadanovich@sorama.eu">zakhar.khadanovich@sorama.eu</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I have /dev/video1 mipi csi device connected to Jetson Nano. I have<br>
configured it to have 2 modes with frame size 64x9600 and 64x4096. Frame<br>
size is stranges because it's actually not video data and I use toshiba<br>
tc358746 to create mipi frames. And I have a problem with making gstreamer<br>
to use second mode.<br>
<br>
I can see my devices supports 2 frame sizes:<br>
root@jetson-nano-emmc:~# v4l2-ctl --list-formats-ext --device=/dev/video1<br>
ioctl: VIDIOC_ENUM_FMT<br>
Type: Video Cap<br>
<br>
[0]: 'AR24' (32-bit BGRA 8-8-8-8)<br>
Size: Discrete 64x9600<br>
Interval: Discrete 0.040s (25.000 fps)<br>
Size: Discrete 64x4096<br>
Interval: Discrete 0.040s (25.000 fps)<br>
<br>
If I use v4l2-ctl it works fine:<br>
v4l2-ctl --verbose --device /dev/video1 --stream-mmap --stream-to=/dev/null<br>
--set-fmt-video=width=64,height=9600<br>
VIDIOC_QUERYCAP: ok<br>
VIDIOC_G_FMT: ok<br>
VIDIOC_S_FMT: ok<br>
Format Video Capture:<br>
Width/Height : 64/9600<br>
Pixel Format : 'AR24' (32-bit BGRA 8-8-8-8)<br>
Field : None<br>
Bytes per Line : 256<br>
Size Image : 2457600<br>
Colorspace : sRGB<br>
Transfer Function : Default (maps to sRGB)<br>
YCbCr/HSV Encoding: Default (maps to ITU-R 601)<br>
Quantization : Default (maps to Full Range)<br>
Flags :<br>
VIDIOC_REQBUFS returned 0 (Success)<br>
VIDIOC_QUERYBUF returned 0 (Success)<br>
VIDIOC_QUERYBUF returned 0 (Success)<br>
VIDIOC_QUERYBUF returned 0 (Success)<br>
VIDIOC_QUERYBUF returned 0 (Success)<br>
VIDIOC_QBUF returned 0 (Success)<br>
VIDIOC_QBUF returned 0 (Success)<br>
VIDIOC_QBUF returned 0 (Success)<br>
VIDIOC_QBUF returned 0 (Success)<br>
VIDIOC_STREAMON returned 0 (Success)<br>
<br>
But if I use gstreamer it anyway uses 64x4096. It shows caps as<br>
width=(int)64, heigh=(int)9600, height=(int)4096. So it appends 4096 and<br>
overwrites whatever I specified as height. Why it appends height=(int)4096<br>
to my caps? <br>
gst-launch-1.0 -v v4l2src device=/dev/video1 !<br>
video/x-raw,width=64,heigh=9600 ! videoconvert ! appsink name=mysink<br>
caps=video/x-raw,format=ABGR,width=64,heigh=9600<br>
Pipeline is live and does not need PREROLL ...<br>
Setting pipeline to PLAYING ...<br>
New clock: GstSystemClock<br>
/GstPipeline:pipeline0/GstV4l2Src:v4l2src0.GstPad:src: caps = video/x-raw,<br>
width=(int)64, heigh=(int)9600, height=(int)4096, framerate=(fraction)25/1,<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Correct heigh -> height in your caps filter, and it should work as expected ;-)</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
format=(string)BGRA, colorimetry=(string)sRGB,<br>
interlace-mode=(string)progressive<br>
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps =<br>
video/x-raw, width=(int)64, heigh=(int)9600, height=(int)4096,<br>
framerate=(fraction)25/1, format=(string)BGRA, colorimetry=(string)sRGB,<br>
interlace-mode=(string)progressive<br>
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps =<br>
video/x-raw, width=(int)64, heigh=(int)9600, height=(int)4096,<br>
framerate=(fraction)25/1, interlace-mode=(string)progressive,<br>
format=(string)ABGR<br>
/GstPipeline:pipeline0/GstAppSink:mysink.GstPad:sink: caps = video/x-raw,<br>
width=(int)64, heigh=(int)9600, height=(int)4096, framerate=(fraction)25/1,<br>
interlace-mode=(string)progressive, format=(string)ABGR<br>
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps =<br>
video/x-raw, width=(int)64, heigh=(int)9600, height=(int)4096,<br>
framerate=(fraction)25/1, format=(string)BGRA, colorimetry=(string)sRGB,<br>
interlace-mode=(string)progressive<br>
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps =<br>
video/x-raw, width=(int)64, heigh=(int)9600, height=(int)4096,<br>
framerate=(fraction)25/1, format=(string)BGRA, colorimetry=(string)sRGB,<br>
interlace-mode=(string)progressive<br>
<br>
<br>
<br>
<br>
--<br>
Sent from: <a href="http://gstreamer-devel.966125.n4.nabble.com/" rel="noreferrer noreferrer" target="_blank">http://gstreamer-devel.966125.n4.nabble.com/</a><br>
_______________________________________________<br>
gstreamer-devel mailing list<br>
<a href="mailto:gstreamer-devel@lists.freedesktop.org" target="_blank" rel="noreferrer">gstreamer-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel" rel="noreferrer noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel</a><br>
</blockquote></div></div></div>