Hans de Goede schrieb:
GWater wrote:
Vasily Khoruzhick schrieb:
On 11 January 2009 23:44:38 GWater wrote:
Vasily Khoruzhick schrieb:
On 11 January 2009 22:29:20 GWater wrote:
Vasily Khoruzhick schrieb:
On 11 January 2009 15:25:56 Hans de Goede wrote:
Vasily Khoruzhick wrote:
Hi, Hans

Recent sn9c20x driver written by microdia project
(http://groups.goolge.com/group/microdia) introduce new output format
- sn9c20x-i420. This format is actually scrambled yuv420, so it's
very easy and fast to convert it to yuv420. This patch adds
sn9c20x-i420 decoder to the libv4l-0.5.7
Hi,

As you've probably already seen from the release mail, I've just
released libv4l-0.5.8, which includes your patch.

Is there any more image format conversion code inside the sn9c20x
driver? If so it would be really good to move that to userspace too,
once that is done the driver can be moved in to the mainline kernel
(if considered ready by its devs)
Nope, there's no more image format conversion code inside the sn9c20x
driver, but I really don't know if it's time to move driver into the
mainline kernel. I think we should discuss this question on the
microdia maillist.

Regards,

Hans
Regards
Vasily
Got myself the 0.5.8 release from fedora updates-testing and it works
nicely with my bandwidth-dependent JPEG-compression patch.

Therefore I'd like to push that patch now. I attached it again. Maybe
someone wants add something to the two lines I wrote ;) .

GWater
Yep, I want to make a little modification:

jpeg var should be set to 0 by default, and it should be forced to 1 on
FULL and HALF -speed devices. In this case user can enable jpeg if he
wants to :)
I thought about that, too.

However I got to the conlcusion that this way people with LOW- and FULL-
speed devices can't disable JPEG.

My patch however does still allow everyone to choose:
LOW- and FULL-speed users can choose anyway and HIGH-speed users can use
the "bandwidth" setting to work around the forced non-JPEG output. And a
bandwidth (alternate-)setting of 7 should still offer enough speed for
JPEG.

Please consider this.

GWater
On usb-1 bus you can't use any format except jpeg :) So users has no choice if they use sn9c20x cam on usb-1 :)
Still,
there is the possibility of USB_SPEED_VARIABLE and USB_SPEED_UNKOWN.

What about these poor users?


Why not just make the jpeg flag an int, set it to -1 by default and make the speed check:

if (jpeg == -1) {       
        if (dev->udev->speed == USB_SPEED_HIGH && bandwidth == 8)
                jpeg = 0;
        else
                jpeg = 1;
}

Then default jpeg will depend on speed, and the user can force it either way.

Regards,

Hans

--~--~---------~--~----~------------~-------~--~----~
Lets make microdia webcams plug'n play, (currently plug'n pray)
To post to this group, send email to [email protected]
Visit us online https://groups.google.com/group/microdia
-~----------~----~----~----~------~----~------~--~---


To finish this discussion here is a patch which should implement the above idea.

GWater
From cff8bbce8d6380e4f2f54f5fdadc977ad4f915c1 Mon Sep 17 00:00:00 2001
From: GWater <[email protected]>
Date: Wed, 14 Jan 2009 23:16:15 +0100
Subject: [PATCH] Disable JPEG for high-speed USB 2.0 by default

Signed-off-by: GWater <[email protected]>
---
 sn9c20x-usb.c |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/sn9c20x-usb.c b/sn9c20x-usb.c
index f001016..62fcdb9 100644
--- a/sn9c20x-usb.c
+++ b/sn9c20x-usb.c
@@ -57,7 +57,7 @@ static __u8 bulk;
  * @var jpeg
  *  Module parameter to enable/disable JPEG format
  */
-__u8 jpeg = 1;
+__u8 jpeg = 2;
 
 /**
  * @var bandwidth
@@ -827,6 +827,13 @@ static int usb_sn9c20x_probe(struct usb_interface 
*interface, const struct usb_d
 
        usb_sn9c20x_default_settings(dev);
 
+       if (jpeg == 2) {
+               if (dev->udev->speed == USB_SPEED_HIGH && bandwidth == 8)
+                       jpeg = 0;
+               else
+                       jpeg = 1;
+       }
+
        return 0;
 
 free_dev:
-- 
1.6.0.6

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to