Linux 2.6.40/3.0 Kernel Has New Microsoft Kinect Driver

Posted by Michael Larabel on May 25, 2011

Here's another change for the Linux 3.0 Kernel (or Linux 2.6.40 if the kernel versioning change doesn't end up happening for this cycle)... Microsoft Kinect support as a new V4L kernel driver.

Since last November there's been an open-source Linux driver for Microsoft's Kinect 3D sensor to take advantage of its RGB camera and depth-sensing functionality. With the next Linux kernel release, there's now a new Linux driver that's been integrated into the mainline tree. As part of the 3.0-rc1 Video 4 Linux pull request, there's a Kinect color camera driver. Additionally, there's other new drivers, support for new remote controls, driver enhancements, and DVB API support for the DVB-T2 standard. The Kinect driver though is what's most interesting.

This current GSPCA dirver for the Microsoft Kinect hardware is based upon the code from the OpenKinect project. For now it just takes advantage of the RGBA sensor or the output from the mono-chrome sensor, but it doesn't handle the processed depth stream yet. Basically, in its current form you can use your Microsoft Kinect as a web-camera or an IR camera with the "Linux 3.0" kernel.

The Kinect driver related commits can be found from this Git web search. Here's the commit adding in the driver. Below is the commit message with more details.
[media] gspca - kinect: New subdriver for Microsoft Kinect

The Kinect sensor is a device used by Microsoft for its Kinect project, which is a system for controller-less Human-Computer interaction targeted for Xbox 360.

In the Kinect device, RGBD data is captured from two distinct sensors: a regular RGB sensor and a monochrome sensor which, with the aid of a IR structured light, captures what is finally exposed as a depth map; so what we have is basically a Structured-light 3D scanner.

The Kinect gspca subdriver just supports the video stream for now, exposing the output from the RGB sensor or the unprocessed output from the monochrome sensor; it does not deal with the processed depth stream yet, but it allows using the sensor as a Webcam or as an IR camera (an external source of IR light might be needed for this use).

The low level implementation is based on code from the OpenKinect project (http://openkinect.org).

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Linux Desktop Security Could Be A Whole Lot Better
  2. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  3. New NVIDIA Linux Driver Supports The GeForce GTX 780
  4. Chrome 28 To Offer More Speed Improvements
  5. Digia Announces "Boot To Qt" Project
  6. X.Org Libraries Hit By Round Of Security Issues
  7. Wayland's Weston Gets Output Scaling Support
  8. Raspberry Pi Gets New Wayland Weston Renderer
  9. Debian GNU/Hurd 2013 Release Brings New Packages
  10. Intel Ultrabook Performance Is Faster With Mesa 9.2
  11. Hot Relocation HDD To SSD Support For Btrfs
Latest Forum Talk
  1. Radeon HD 7850 Catalyst wine performance
  2. Linux Desktop Security Could Be A Whole Lot Better
  3. Raspberry Pi Gets New Wayland Weston Renderer
  4. OpenChrome Driver Is Far From Feature Complete
  5. how to use old laptops with via gfx
  6. Digia Announces "Boot To Qt" Project
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite