Re: working on webcam driver

2009-05-17 Thread MK
Thanks much for the feedback!  Here's what happened:

Because the vendor id (0c45) is listed by the gspca website but not 
the product (612a), I decided to try inserting the id into one of the 
drivers/media/video/gspca.  When I actually grepped (had not grepped 
the tree itself yet), low and behold 612a is in sonixj.  The module 
compiles and responds to the camera, although the results in gstreamer, 
et. al, are disappointing -- the camera is not really usable, I suspect 
from the output it is the kernel driver, but I am not sure.  Since I 
didn't write this stuff, I think working alone it will be more trouble 
than it is worth to track the problem down, esp. if this is mostly a 
problem with an (obscure) inexpensive item that few linux users 
actually possess.

So, I am going to cut my loses early on this project and cop out.  
I've learned a bunch about the kernel and in the process written some 
nifty little char drivers that are probably more useful to me than a 
webcam anyway. I think my time would be better spent on other things, 
eg, I might become useful in someone else's (more significant) linux 
kernel/driver project.  I will have a look around.

But thanks again!  You were much nicer than mr Greg Kroah-Hartman ;) :0

Sincerely, Mark Eriksen (getting his feet wet)


--
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


Re: working on webcam driver

2009-05-17 Thread leandro Costantino
Hi Mark,
just searching 0c45:612a gspca could save you lot of time.
I suppose you were looking at the old gspca homepage, because it
listed on Jean F. Moine site
http://moinejf.free.fr/webcam.html ( it dont know even it that page if
still updated )

About the gstreamer, what kind of troubles are you having?. It's the
webcam streaming?
Did you follow the steps using libv4lconvert?.

I wrote that patch a year ago, so , if there's any problem let me know.
If you need help, about the lib4vlconvert thing, look at deaglecito.blogspot.com

Best Regards
Costantino Leandro

On Sun, May 17, 2009 at 12:08 PM, MK halfcountp...@intergate.com wrote:
 Thanks much for the feedback!  Here's what happened:

 Because the vendor id (0c45) is listed by the gspca website but not
 the product (612a), I decided to try inserting the id into one of the
 drivers/media/video/gspca.  When I actually grepped (had not grepped
 the tree itself yet), low and behold 612a is in sonixj.  The module
 compiles and responds to the camera, although the results in gstreamer,
 et. al, are disappointing -- the camera is not really usable, I suspect
 from the output it is the kernel driver, but I am not sure.  Since I
 didn't write this stuff, I think working alone it will be more trouble
 than it is worth to track the problem down, esp. if this is mostly a
 problem with an (obscure) inexpensive item that few linux users
 actually possess.

 So, I am going to cut my loses early on this project and cop out.
 I've learned a bunch about the kernel and in the process written some
 nifty little char drivers that are probably more useful to me than a
 webcam anyway. I think my time would be better spent on other things,
 eg, I might become useful in someone else's (more significant) linux
 kernel/driver project.  I will have a look around.

 But thanks again!  You were much nicer than mr Greg Kroah-Hartman ;) :0

 Sincerely, Mark Eriksen (getting his feet wet)



 --
 video4linux-list mailing list
 Unsubscribe mailto:video4linux-list-requ...@redhat.com?subject=unsubscribe
 https://www.redhat.com/mailman/listinfo/video4linux-list

--
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


Re: working on webcam driver

2009-05-14 Thread MK
Since I'm cross-posting this (as advised) I should introduce myself by 
saying I am a neophyte C programmer getting into kernel programming by 
trying to write a driver for an unsupported webcam.  So far I've gotten 
the device to register and have enumerated the various interfaces.

On 05/11/2009 02:50:00 PM, Erik Andrén wrote:
First of all, this list is deprecated. Send mails to
linux-media@vger.kernel.org if you want to reach the kernel community.

 Secondly, have you researched that there is no existing driver for
 your camera? A good way to start would perhaps to search for the usb
 id and linux in google to see if it generates some hits.

I've done this last bit already, and I just checked out gspca.  There 
is a lot of listing for the vendor id, but not the product id, so I 
imagine there is no point in trying any of the drivers (unless I hack 
the source to accept the id string).

However, a rather unhelpful person at the linux driver backport group 
informs me not all USB video drivers are under
drivers/media/video/usbvideo/  In fact, the majority of them are not. 
but then tells me I should take off and go find them myself with a web 
browser (very nice).  

Does anyone know where these drivers are located?  The same person also 
claims that the kernel now has support for all devices that 
follow the USB video class specification, and [sic] that the additional 
23 device specific drivers in the tree* are just for non-conforming 
devices.  This kind of flies in the face of everything else I have 
read about linux and usb webcams.  I also notice that it is impossible 
to select anything other than the v4l layer with xconfig, ie. the 
individual drivers cannot be selected.

Is it normal to include module sources in the tree without making it 
possible to configure them into a regular build?

Sincerely, Mark Eriksen

*I can only find the six under drivers/media, and nothing in 
documentation/ is of assistance


--
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


Re: working on webcam driver

2009-05-14 Thread Hans de Goede

On 05/14/2009 06:00 PM, MK wrote:

Since I'm cross-posting this (as advised) I should introduce myself by
saying I am a neophyte C programmer getting into kernel programming by
trying to write a driver for an unsupported webcam.  So far I've gotten
the device to register and have enumerated the various interfaces.

On 05/11/2009 02:50:00 PM, Erik Andrén wrote:

First of all, this list is deprecated. Send mails to
linux-media@vger.kernel.org if you want to reach the kernel community.

Secondly, have you researched that there is no existing driver for
your camera? A good way to start would perhaps to search for the usb
id and linux in google to see if it generates some hits.


I've done this last bit already, and I just checked out gspca.  There
is a lot of listing for the vendor id, but not the product id, so I
imagine there is no point in trying any of the drivers (unless I hack
the source to accept the id string).

However, a rather unhelpful person at the linux driver backport group
informs me not all USB video drivers are under
drivers/media/video/usbvideo/  In fact, the majority of them are not.
but then tells me I should take off and go find them myself with a web
browser (very nice).

Does anyone know where these drivers are located?


Most non yvc (see below) usb webcams are driven through the gspca usb
webcam driver framework. This is a v4l driver which consists of gspca-core
+ various subdrivers for a lot of bridges, see drivers/media/video/gspca


  The same person also

claims that the kernel now has support for all devices that
follow the USB video class specification, and [sic] that the additional
23 device specific drivers in the tree* are just for non-conforming
devices.


This is correct recently the USB consortium (or whatever they are called)
have created a new spec called UVC, this is one standard protocol for all
webcams to follow. All *newer* webcams use this, but a lot of cams still
in the stores predate UVC (which stands for USB Video Class).

The first thing to find out to get your webcam supported is what kind of
bridge chip it is using, try looking at the windows driver .inf file,
typical bridges are the sonix series (often refenced to as sn9c10x or
sn9c20x), spca5xx series, zc3xx, vc032x, etc. If you see a reference
to anything like this in the windows driver .inf file (or inside dll's)
that would be good to know. Also it would be very helpful to have the usb
id of your camera.

Regards,

Hans
--
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


Re: working on webcam driver

2009-05-14 Thread Theodore Kilgore



On Thu, 14 May 2009, Hans de Goede wrote:


On 05/14/2009 06:00 PM, MK wrote:

Since I'm cross-posting this (as advised) I should introduce myself by
saying I am a neophyte C programmer getting into kernel programming by
trying to write a driver for an unsupported webcam.  So far I've gotten
the device to register and have enumerated the various interfaces.

On 05/11/2009 02:50:00 PM, Erik Andrén wrote:

First of all, this list is deprecated. Send mails to
linux-media@vger.kernel.org if you want to reach the kernel community.

Secondly, have you researched that there is no existing driver for
your camera? A good way to start would perhaps to search for the usb
id and linux in google to see if it generates some hits.


I've done this last bit already, and I just checked out gspca.  There
is a loit of listing for the vendor id, but not the product id, so I
imagine there is no point in trying any of the drivers (unless I hack
the source to accept the id string).

However, a rather unhelpful person at the linux driver backport group
informs me not all USB video drivers are under
drivers/media/video/usbvideo/  In fact, the majority of them are not.
but then tells me I should take off and go find them myself with a web
browser (very nice).

Does anyone know where these drivers are located?


Most non yvc (see below) usb webcams are driven through the gspca usb
webcam driver framework. This is a v4l driver which consists of gspca-core
+ various subdrivers for a lot of bridges, see drivers/media/video/gspca


 The same person also

claims that the kernel now has support for all devices that
follow the USB video class specification, and [sic] that the additional
23 device specific drivers in the tree* are just for non-conforming
devices.


This is correct recently the USB consortium (or whatever they are called)
have created a new spec called UVC, this is one standard protocol for all
webcams to follow. All *newer* webcams use this, but a lot of cams still
in the stores predate UVC (which stands for USB Video Class).

The first thing to find out to get your webcam supported is what kind of
bridge chip it is using, try looking at the windows driver .inf file,
typical bridges are the sonix series (often refenced to as sn9c10x or
sn9c20x), spca5xx series, zc3xx, vc032x, etc. If you see a reference
to anything like this in the windows driver .inf file (or inside dll's)
that would be good to know. Also it would be very helpful to have the usb
id of your camera.

Regards,

Hans


All of the above is excellent advice, especially in view of the fact that 
you say, There is a lot of listing for the vendor id, but not the product 
id, so I imagine there is no point in trying any of the drivers (unless I 
hack the source to accept the id string), apparently with reference to 
the cameras supported by gspca.


From there, things could go in several directions. First, it might 
possibly be the case that it suffices only to add the camera's Vendor and 
Product ID to an existing driver. Or, it might be a completely different 
one. Or, it might be that everything can be solved but for the fact that 
the camera is using an undocumented and unsolved compression algorithm, 
which is the ultimate obstacle to overcome and also the most difficult. 
Perhaps in addition to the list from Hans, above, an output of lsusb or 
the content of the /proc/bus/usb/devices file (available if your kernel 
supports usbfs, otherwise not) would help.


Finally, since you say that the Vendor ID appears, it could possibly be 
the case that someone is already working on support for your particular 
camera. The matter would be more clear if the Vendor and Product ID 
numbers are known.



Theodore Kilgore