Fixed a tiny bug in KinectDemo where it wasn't swapping buffers right
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Fixed interop call stubs in KinectNative to reflect new API. Motor Class now uses new API calls (C# usage stays the same). None of these changes have been tested on a real kinect yet.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Restructuring enumerations and structures for shorter class names. Eg. VideoFormat instead of VideoCamera.DataFormat. Little bit more work for new API.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Adding in missing Enumerations file and new FrameMode class
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Fixed a tiny bug in KinectDemo where it wasn't swapping buffers right
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Fixed interop call stubs in KinectNative to reflect new API. Motor Class now uses new API calls (C# usage stays the same). None of these changes have been tested on a real kinect yet.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Restructuring enumerations and structures for shorter class names. Eg. VideoFormat instead of VideoCamera.DataFormat. Little bit more work for new API.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Adding in missing Enumerations file and new FrameMode class
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Restructured Frame mode stuff into C# classes DepthFrameMode and VideoFrameMode. Refactored VideoCamera to be in line with new API. The VideoCamera class now contains an array of valid frame modes when it's instantiated in a Kinect Device. Users can then use this to set the new Mode property of the VideoCamera to switch to a new mode. Still untested on Kinect.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Fixed a bunch of conflicts... dunno why I had them in the first place. No code changes since last commit
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Updated DepthCamera, DepthMap and ImageMap to come in line with new API. Should be ready for Kinect testing now.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Updated KinectDemo to work with new API. This thing basically needs a re-write. But right now, it atleast runs with default settings.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)
Add (partial) audio support.

This commit supports streaming of audio from the four microphones.
We still need to implement timestamps, user-provided audio (for
cancellation), and firmware upload support.  But if you have already
loaded the firmware (say, with NUIse), this works great.

Due to the way we're handling isochronous transfers in libusbemu, this
will probably not work on Windows yet.

To enable audio, add -DBUILD_AUDIO to your cmake command line or enable
the BUILD_AUDIO option in the cmake gui.

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
Add support for fetching the audio firmware.

This commit adds a python script to download and extract the audio firmware.
Since we do not have permission to redistribute the audio firmware itself,
we add a build option (BUILD_REDIST_PACKAGE) to disable adding the firmware
to the install and instead shipping the firmware fetcher program.

Packagers should enable this option and add a postinstallation hook that
downloads and places the firmware in /usr/share/libfreenect/.

Users should leave this option disabled, but should NOT redistribute packages
or firmware.

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
audio: Add support for uploading firmware; refactor some other things

This patch separates audio support out into a separate libfreenect-audio.h
header.  It updates the CMake lists to place audio support files (either
fwfetcher.py or audios.bin) in the appropriate install folder, rather
than under $PREFIX/lib.

To support uploading the audio firmware, I added two new calls to our
libusb wrapper - we need bulk transfer support to actually send the
firmware, and we need to count the number of interfaces in the current
configuration to distinguish a device in the bootloader from one which has
already had firmware uploaded.  These calls will need to be implemented
in libusbemu before audio will work on Windows.

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
src/loader.c: add support for searching for firmware in multiple file paths.

The firmware uploader will look for audios.bin in the following locations:
$LIBFREENECT_FIRMWARE_PATH/
./
~/.libfreenect/
/usr/local/share/libfreenect/audios.bin
/usr/share/libfreenect/audios.bin

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
audio: Add OpenGL audio viewer application.

This program should show the audio waveforms that are being received in real time.

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
src/CMakeLists.txt: fix a bug in firmware fetching setup.

If you enabled BUILD_AUDIO but not BUILD_PYTHON, then nothing ever
included FindPythonInterp, so PYTHON_EXECUTABLE path wouldn't be set,
and fwfetcher.py would be the first argument in the call to download
the firmware.  Since fwfetcher.py is not marked executable, this would
fail.

Signed-off-by: Drew Fisher <drew.m.fisher@gmail.com>
initial support for disconnecting the Kinect device on-the-fly without hanging the system

Signed-off-by: Marcos Paulo Berteli Slomp <mslomp@gmail.com>
Fixed some struct stuff in DepthCamera so info is loaded right (types and offsets were wrong). Fleshed out KinectDemo UI. Depth camera doesn't want to start for some reason.
Signed-off-by: Aditya Gaddam <adityagaddam@gmail.com> (LostInCake)