Re: Strange crash in Player server
Rich Mattes <[email protected]>
| Newsgroups | gmane.science.robotics.playerstage |
|---|---|
| Message-ID | <[email protected]> |
On 7/3/2010 1:26 PM, Paul Osmialowski wrote:
> Hi Rich,
> Will it support cameracompress and cvcam drivers (libjpeg and opencv,
> both available on windows)?
> Not for me, someone keeps on asking me for that :)
>
> Paul
I've started looking into it, it's going to take a decent amount of work
to get jpeg support going in each of the drivers that requires it.
OpenCV wasn't so bad: i set up pykg-config with an opencv.pc file, and
things are going ok. Jpeg checks are performed by looking for the jpeg
library and/or headers; i'm tweaking the checks to resolve to the
correct jpeg lib. Of course, this means that OpenCV and libjpeg (and
pthread) have to be installed before you can run Player on Windows,
we'll have to make that really obvious (or bundle some of the libraries
with the Player installer).
As a side observation, is it really necessary to perform the same check
for opencv.pc, jpeglib.h, etc. for every driver that requires them?
Can't we just look for stuff once in SearchForStuff.cmake and consult
variables like JPEG_FOUND or OPENCV_FOUND? To cite an example,
OpenCV.pc is checked at least four times by
PLAYERDRIVER_REQUIRE_PACKAGE. Further, PLAYERDRIVER_REQUIRE_HEADER
(jpeglib.h) is called at least four times (cameracompress,
cameradecompress, imagecmp, camfilter, etc) inside an IF (HAVE_JPEG)
statement. Considering one of the tests for HAVE_JPEG is
CHECK_INCLUDE_FILES("stdio.h;jpeglib.h" HAVE_JPEGLIB_H), I'm wondering
what the utility of the extra REQUIRE_HEADER call is. I guess the
current way lets people keep their driver CMakeLists.txt comprehensive
and lets people add drivers without digging deep into Player's
buildsystem, but I think it might be worth it to centralize checks for
some of the more common packages.
Rich
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first