Fork of libfreenect for adding cross-compilation support for Nitrogen Logic controllers
Clone or download
Pull request Compare This branch is 14 commits ahead, 213 commits behind OpenKinect:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
cmake_modules
cmake_toolchain
doc
examples
fakenect
include
platform
src
wrappers
.gitignore
APACHE20
CMakeLists.txt
CONTRIB
GPL2
HACKING
README.asciidoc
crosscompile.sh
mkcontrib.sh

README.asciidoc

Cross-compilation fork of libfreenect for Nitrogen Logic

See crosscompile.sh for more info.

TODO: Document cross-compilation better

libfreenect

Ongoing Development and Maintenance by the OpenKinect Community

  • Original Code and Engineering: Hector Martin (marcan)

  • Community Lead: Josh Blake (JoshB)

  • Integration: Kyle Machulis (qDot)

Description

libfreenect is the core library for accessing the Microsoft Kinect USB camera. Currently, the library supports access to:

  • RGB and Depth Images

  • Motors

  • Accelerometer

  • LED

Audio is currently being worked on.

Information Resources

Information about the OpenKinect project can be found at

For questions, support, and discussion, check out the google groups mailing list at

Or the IRC channel at

#openkinect on Freenode

We are also on twitter at

Requirements

For the driver, you’ll need

  • libusb-1.0 >= 1.0.9 (*nix and OS X)

  • libusb-win32 (Windows)

  • Cmake >= 2.6 (All platforms)

For the glview sample, you’ll need

  • OpenGL

  • glut

  • pthreads (Either platform provided or pthread-win32 for windows)

For links to the software listed, see http://openkinect.org/wiki/Getting_Started#Dependencies

See the platform specifics section for other information specific to the platform you may be working on.

Basic Compiling Instructions

To use CMake:

  • Make a directory somewhere. Like, say, 'build' in your repo directory.

  • Go into that directory

  • Type cmake ..

  • Watch the magic happen

  • After this, just run make and you’ll be fine.

  • If you want to use an IDE or whatever, well, you’ll figure it out.

Platform Specifics

OS X

libusb is available through various package managers including homebrew and Macports. OpenGL and GLUT come as prebuilt frameworks.

Linux

Should "just work" if you have the following packages installed:

  • libusb-1.0-dev

If you want to see the glview example:

  • freeglut3-dev (or whatever freeglut dev package your distro has)

  • libxmu-dev

  • libxi-dev

udev rules are available in the platform/linux directory so that you are not required to run as root.

Windows

Windows support is now available in libfreenect. The inf files in the platform/windows directory can be used for installing the device, and the library will need libusb-win32 to compile.

Wrappers

libfreenect has interface to several languages. Look in the wrappers/ directory for them:

  • C (using a synchronous API)

  • C++

  • C#

  • python

  • actionscript

  • Java (JNA)

Licensing

The libfreenect project is covered under a dual Apache v2/GPL v2 license. The licensing criteria are listed below, as well as at the top of each source file in the repo.

This file is part of the OpenKinect Project. http://www.openkinect.org

Copyright (c) 2010 individual OpenKinect contributors. See the CONTRIB
file for details.

This code is licensed to you under the terms of the Apache License,
version 2.0, or, at your option, the terms of the GNU General Public
License, version 2.0. See the APACHE20 and GPL2 files for the text of
the licenses, or the following URLs:
http://www.apache.org/licenses/LICENSE-2.0
http://www.gnu.org/licenses/gpl-2.0.txt

If you redistribute this file in source form, modified or unmodified,
you may:

- Leave this header intact and distribute it under the same terms,
  accompanying it with the APACHE20 and GPL2 files, or
- Delete the Apache 2.0 clause and accompany it with the GPL2 file, or
- Delete the GPL v2 clause and accompany it with the APACHE20 file

In all cases you must keep the copyright notice intact and include a
copy of the CONTRIB file.

Binary distributions must follow the binary distribution requirements
of either License.