You guys with more experience could tell me why this strange behavior with my app.

First of all, I built my app from a code well known in the Video For Linux spec. It is a capture example.

1º - Why is this  /* Buggy driver paranoia. */?
           min = fmt.fmt.pix.width * 2;

       if (fmt.fmt.pix.bytesperline < min)
               fmt.fmt.pix.bytesperline = min;
       min = fmt.fmt.pix.bytesperline * fmt.fmt.pix.height;
       if (fmt.fmt.pix.sizeimage < min)
               fmt.fmt.pix.sizeimage = min;

2º - I am using libv4l, and using the V4L2_PIX_FMT_SBGGR8 pixelformat in order to get 640x480 of resolution. Otherwise I get only 160x120!

This is where the problem lies, I can´t get a good image, I am actually getting no more than fuzzy image. So I presumed that I am geting smth else from the buffer instead of the data I should get. I started checking the parameters and plz, have a look at this wierd response:
fmt.fmt.pix.width:        640   <- Fine
fmt.fmt.pix.height:       480   <- Fine
fmt.fmt.pix.bytesperline: 1920  <- How comes ? It is 3 times more, in the 
SBGGR8 pixelformat each pixel is 1 byte!
fmt.fmt.pix.sizeimage:    921600 <- The image is (fmt.fmt.pix.bytesperline * 
fmt.fmt.pix.height)

I believe that this sizeimage should be set to 307200, representing 640 * 480.


Is there someone familiar with this problem and how to solve it??
Great regards.
Guilherme Longo





--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to