ros-drivers / camera_umd

40 stars 81 forks source link

Documentation Needed! #16

Open linas opened 10 years ago

linas commented 10 years ago

Hi,

I'm trying to figure out the relationship between this, the http://wiki.ros.org/uvc_camera project, the http://wiki.ros.org/libuvc_camera and possibly the https://github.com/ericperko/uvc_cam project.

So: -- I cannot find the source code for http://wiki.ros.org/uvc_camera anywhere -- except perhaps I now have the general idea that it is here? It would be great if http://wiki.ros.org/uvc_camera gave the source code location... It would be great if there was a README or README.md for this repo that explained something like this...

-- Similarly, it looks like maybe https://github.com/ktossell/libuvc_ros is the primary/mainline repo for the http://wiki.ros.org/libuvc_camera project, right? It also doesn't have a README ...

-- Somehow, I get the impression that maybe libuvc_camera is the wave of thefuture, and this project is the older/deprecated branch? Or am I wrong?

-- This project includes a few files from https://github.com/ericperko/uvc_cam ... that project appears to be maybe dead (no updates for 18 months, pull requests are ignored) but some ros nodes still ask for it -- e.g. pi_vision. should pi_vision be getting ported to either libuvc_camera or uvc_camera ??

Sorry for all the questions, I'm a bit lost in the woods...

ericperko commented 10 years ago

Unless libuvc_camera doesn't work for you, I would recommend you use that repo. That is the maintained UVC ROS driver and should be preferred. Note that a lot of the uvc_cam drivers are actually Video4Linux-based and hence don't work on OS X or Windows, while libuvc_camera uses the UVC spec only and so could work on more than just Linux.

I was intending to let my fork of uvc_cam die (it was created for a one-off project years ago and I simply left it up in case people found it useful) when support for rosbuild went away. I see that it's still being used in the ros-by-example book though.

@pirobot , do you intend to switch the next version of your book to libuvc_camera or are there reasons to continue using these V4L-based camera drivers?

linas commented 10 years ago

Eric, thank you. Could I get you to add text to the README at uvc_cam that more-or-less says what you say above? Even a cut-n-paste copy would probably be sufficient... (Or I could change the readme myself, and ask you to pull it... if that's easier).

(I'm in a similar situation: I'm working on a one-off project that uses a forked&modified copy of pi_vision, which seems to need uvc_cam, and I'm trying to figure out how to move it into a more modern, maintainable state. Thus my confusion)

pirobot commented 10 years ago

Hi Eric,

I can certainly switch to libuvc_camera in the next book revisions. Your fork has been very useful since ROS Electric as it seemed to provide better defaults for brightness and other parameters than the other drivers--hence my preference for it over these past few years. But I understand the need to move on so thanks for getting me this far!

ericperko commented 10 years ago

@pirobot I'm glad my driver has worked well for you so far. I don't know if it still has better defaults for certain parameters (I'm pretty sure it's been a few years since I even compiled my driver...), but if so let's file some tickets to get it sorted out with libuvc_camera so that that will work as a good replacement.

I don't know if there is a reason to keep a V4L-based driver around as a recommended driver - are there cameras likely to be supported via V4L that aren't supported via UVC?

@linas I've filed a ticket for myself to add that readme; I should get to it in the next few days.

pirobot commented 10 years ago

@ericperko When I get a chance to work on the Indigo revisions for my books, I'll post back here any issues I have (if any) when switching to the libuvc_camera driver.

pirobot commented 9 years ago

@ericperko I am finally doing the Indigo revisions of my ROS By Example book (Volume 1). It looks like the libuvc_camera driver requires udev rules and specific vendor IDs for the cameras to be used. Since these topics are not covered in the book, I am going to stick with your uvc_cam driver. I actually created a fork of your repository for the Hydro version of the book and have now created an indigo-devel branch. I just tested catkin_make under Indigo and the driver builds and runs fine without modification so I will continue to use it for now.

linas commented 9 years ago

There is also https://github.com/bosch-ros-pkg/usb_cam which appears to be fully maintained ...

pirobot commented 9 years ago

@linas - Thanks for the tip--the Bosch driver looks quite promising. Actually, they look good enough that I think I'll use them in the Indigo revision of my book. So thanks again!