v4l2src and stepwise framesizes

Chuck Crisler ccrisler at mutualink.net
Wed Nov 14 11:56:29 PST 2012


I am using good plugins v. 0.10.25. V4l2 is enumerating the supported frame
sizes of my capture device. The frame sizes are from 768x768 down to 128x92
in steps of (16,16). When V4L2 displays the frame sizes, it seems to be
subtracting the width and height step from each size to get the next
smaller, rather than simply subtracting the height step from each width,
then the width step and doing all of the heights again. The result is that
a lot of/most supported sizes are rejected because it can't negotiate a
format. My desired capture size is 640x480 which I know is supported by the
device but is being rejected by v4l2src when started from gst-launch. I
have another application that directly communicates with the capture driver
and then uses VLC to capture video at 640x480. Is this a known issue and/or
is there something that I have missed that I need to do to get this to
work? Here is a snippet of the v4l2 log showing some resolutions for I420.

format=(fourcc)I420, width=(int)752, height=(int)720, framerate=(fraction)[
0/1, 100/1 ]; video/x-raw-yuv, format=(fourcc)I420, width=(int)736,
height=(int)704, framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw-yuv,
format=(fourcc)I420, width=(int)720, height=(int)688, framerate=(fraction)[
0/1, 100/1 ]; video/x-raw-yuv, format=(fourcc)I420, width=(int)704,
height=(int)672, framerate=(fraction)[ 0/1, 100/1 ]; video/x-raw-yuv,
format=(fourcc)I420, width=(int)688, height=(int)656, framerate=(fraction)[
0/1, 100/1 ]; video/x-raw-yuv, format=(fourcc)I420, width=(int)672,
height=(int)640, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)656,
height=(int)624, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)640,
height=(int)608, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)624,
height=(int)592, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)608,
height=(int)576, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)592,
height=(int)560, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)576,
height=(int)544, framerate=(fraction){ 30000/1001, 15000/1001, 10000/1001,
6000/1001 }; video/x-raw-yuv, format=(fourcc)I420, width=(int)560,
height=(int)528, framerate=(fraction){ 30000/1001,

Thank you very much,
Chuck Crisler
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20121114/0679b1d8/attachment-0001.html>


More information about the gstreamer-devel mailing list