Horribly hacky first take at a Kinect Camera driver. Does RGB and Depth.
main.c implements a simple OpenGL visualization. Hopefully it should be mostly
self-explanatory... You pretty much just open the USB device, call
cams_init(dev, depthimg, rgbimg), and your
rgbimg callbacks get
called as libusb processes events.
- TONS of cleanup. I mean LOTS.
- Determine exactly what the inits do
- Bayer to RGB conversion that doesn't suck
- Integrate support for the servo and accelerometer (which have already been reverse engineered)
BIG TODO: audio.
The audio chip (the Marvell) requires firmware and more init and does a TON of stuff including the crypto authentication to prove that it is an original Kinect and not a clone. Who knows what this thing does to the incoming audio. This should be interesting to look at.
port install cmake cmake . make ./examples/glview
Libfreenect is Copyright (C) 2010 Hector Martin "marcan" firstname.lastname@example.org
This code is licensed to you under the terms of the GNU GPL, version 2 or version 3; see: http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt http://www.gnu.org/licenses/gpl-3.0.txt
Adafruit, for providing the USB logs that I used to work out the initialization sequence and data format.
bushing, for trying to provide USB logs, although he got preempted by Adafruit ;)
A few other people who provided hints and encouragement along the way, you know who you are!