Re: [PATCH 1/1] gspca: Add high-speed modes for PS3 Eye camera

From: Antonio Ospite
Date: Sun Jan 04 2015 - 10:35:33 EST


On Mon, 29 Dec 2014 11:00:03 -0400
Joe Howse <josephhowse@xxxxxxxxxxx> wrote:

> Add support in the PS3 Eye driver for QVGA capture at higher
> frame rates: 187, 150, and 137 FPS. This functionality is valuable
> because the PS3 Eye is popular for computer vision projects and no
> other camera in its price range supports such high frame rates.
>
> Correct a QVGA mode that was listed as 40 FPS. It is really 37 FPS
> (half of 75 FPS).
>
> Tests confirm that the nominal frame rates are achieved.
>
> Signed-off-by: Joe Howse <josephhowse@xxxxxxxxxxx>

Tested-by: Antonio Ospite <ao2@xxxxxx>

Thanks Joe.

I noticed that qv4l2 displays max 60fps even though from the video I can
perceive the higher framerate, and same happens in guvcview.

gst-inspect-1.0 won't even let me set framerates higher than 75 so
I didn't test with GStreamer.

I know that the camera is also able to stream raw Bayer data which
requires less bandwidth than the default YUYV, although the driver does
not currently expose that; maybe some higher framerates can be achieved
also at VGA with Bayer output.

In case you wanted to explore that remember to set supported framerates
appropriately in ov772x_framerates for the 4 combinations of formats and
resolutions (i.e. Bayer outputs will support more framerates).

Ciao,
Antonio

> ---
> drivers/media/usb/gspca/ov534.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/usb/gspca/ov534.c b/drivers/media/usb/gspca/ov534.c
> index 90f0d63..a9c866d 100644
> --- a/drivers/media/usb/gspca/ov534.c
> +++ b/drivers/media/usb/gspca/ov534.c
> @@ -12,6 +12,8 @@
> * PS3 Eye camera enhanced by Richard Kaswy http://kaswy.free.fr
> * PS3 Eye camera - brightness, contrast, awb, agc, aec controls
> * added by Max Thrun <bear24rw@xxxxxxxxx>
> + * PS3 Eye camera - FPS range extended by Joseph Howse
> + * <josephhowse@xxxxxxxxxxx> http://nummist.com
> *
> * This program is free software; you can redistribute it and/or modify
> * it under the terms of the GNU General Public License as published by
> @@ -116,7 +118,7 @@ static const struct v4l2_pix_format ov767x_mode[] = {
> .colorspace = V4L2_COLORSPACE_JPEG},
> };
>
> -static const u8 qvga_rates[] = {125, 100, 75, 60, 50, 40, 30};
> +static const u8 qvga_rates[] = {187, 150, 137, 125, 100, 75, 60, 50, 37, 30};
> static const u8 vga_rates[] = {60, 50, 40, 30, 15};
>
> static const struct framerates ov772x_framerates[] = {
> @@ -769,12 +771,16 @@ static void set_frame_rate(struct gspca_dev *gspca_dev)
> {15, 0x03, 0x41, 0x04},
> };
> static const struct rate_s rate_1[] = { /* 320x240 */
> +/* {205, 0x01, 0xc1, 0x02}, * 205 FPS: video is partly corrupt */
> + {187, 0x01, 0x81, 0x02}, /* 187 FPS or below: video is valid */
> + {150, 0x01, 0xc1, 0x04},
> + {137, 0x02, 0xc1, 0x02},
> {125, 0x02, 0x81, 0x02},
> {100, 0x02, 0xc1, 0x04},
> {75, 0x03, 0xc1, 0x04},
> {60, 0x04, 0xc1, 0x04},
> {50, 0x02, 0x41, 0x04},
> - {40, 0x03, 0x41, 0x04},
> + {37, 0x03, 0x41, 0x04},
> {30, 0x04, 0x41, 0x04},
> };
>
> --
> 1.9.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html


--
Antonio Ospite
http://ao2.it

A: Because it messes up the order in which people normally read text.
See http://en.wikipedia.org/wiki/Posting_style
Q: Why is top-posting such a bad thing?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/