The OpenKinect Community -

Cross-platform driver for the Microsoft Kinect Camera



libfreenect is an open source, cross platform development library for the Microsoft Kinect camera. It provides basic functionality to connect to the camera, set configuration values, retrieve (and in some cases decompress) images, and provides functionalty for the LED and Motor.

Design Overview

libfreenect provides access to devices via two structs:

Either or both of these structs are passed to the functions in order to interact with the hardware. The USB access is handled by libusb-1.0, which should work in a mostly non-blocking fashion across all platforms (see function documentation for specifics).

Should You Use libfreenect?

The main design goal of libfreenect is to provide a simple, usable reference implementation of the Kinect USB protocol for access via non-Xbox hardware. With this in mind, the library does not contain any algorithms relevant to computer vision usages of the camera.

If you are looking for machine vision algorithms, we recommend the OpenCV library, available at

If you are looking to use the kinect in a larger framework that may involve other depth sensors, we recommend the OpenNI framework, available at

Note that libfreenect can be used as a hardware node in OpenNI.

Author(s): Hector Martin, Josh Blake, Kyle Machulis, OpenKinect community
autogenerated on Mon Jun 10 2019 13:46:43