https://openkinect.org/w/api.php?action=feedcontributions&user=Thantrix&feedformat=atom
OpenKinect - User contributions [en]
2024-03-29T11:16:13Z
User contributions
MediaWiki 1.30.0
https://openkinect.org/w/index.php?title=Low_Level&diff=1314
Low Level
2011-04-28T19:54:57Z
<p>Thantrix: Moved the low-level API documentation from the High-level page. Separation makes more sense.</p>
<hr />
<div>core.c<br />
<pre><br />
freenect_init()<br />
freenect_shutdown()<br />
freenect_process_events()<br />
freenect_num_devices()<br />
freenect_open_device()<br />
freenect_close_device()<br />
freenect_set_user()<br />
freenect_get_user()<br />
freenect_set_log_level()<br />
freenect_set_log_callback()<br />
fn_log()<br />
</pre><br />
<br />
tilt.c<br />
<pre><br />
freenect_get_tilt_state()<br />
freenect_update_tilt_state()<br />
freenect_set_tilt_degs()<br />
freenect_set_led()<br />
freenect_get_tilt_degs()<br />
freenect_get_tilt_status()<br />
freenect_get_mks_accel()<br />
</pre><br />
<br />
cameras.c<br />
<pre><br />
stream_process()<br />
stream_init()<br />
stream_freebufs()<br />
stream_setbuf()<br />
convert_packed_to_16bit()<br />
convert_packed_to_8bit()<br />
convert_packed11_to_16bit()<br />
depth_process()<br />
convert_uyuy_to_rgb()<br />
convert_bayer_to_rgb()<br />
video_process()<br />
send_cmd()<br />
write_register()<br />
freenect_start_depth()<br />
freenect_start_video()<br />
freenect_stop_depth()<br />
freenect_stop_video()<br />
freenect_set_depth_callback()<br />
freenect_set_video_callback()<br />
freenect_get_video_mode_count()<br />
freenect_get_video_mode()<br />
freenect_get_current_video_mode()<br />
freenect_find_video_mode()<br />
freenect_set_video_mode()<br />
freenect_get_depth_mode_count()<br />
freenect_get_depth_mode()<br />
freenect_get_current_depth_mode()<br />
freenect_find_depth_mode()<br />
freenect_set_depth_mode()<br />
freenect_set_depth_buffer()<br />
freenect_set_video_buffer()<br />
</pre></div>
Thantrix
https://openkinect.org/w/index.php?title=High_Level&diff=1313
High Level
2011-04-28T19:54:09Z
<p>Thantrix: </p>
<hr />
<div>KEY<br />
{| style="width:400px;color:green; background-color:#ffffcc;" cellpadding="3" cellspacing="0" border="1"<br />
|Type<br />
|Character<br />
|-<br />
|boolean<br />
|Z<br />
|-<br />
|byte<br />
|B<br />
|-<br />
|char<br />
|C<br />
|-<br />
|double<br />
|D<br />
|-<br />
|float<br />
|F<br />
|-<br />
|int<br />
|I<br />
|-<br />
|long<br />
|J<br />
|-<br />
|object<br />
|L<br />
|-<br />
|short<br />
|S<br />
|-<br />
|void<br />
|V<br />
|-<br />
|array<br />
|[<br />
|}<br />
<br />
Kinect Device<br />
<br />
<pre><br />
public class KinectDevice {<br />
public KinectDevice()<br />
Signature: ()V;<br />
<br />
public setLEDStatus(LEDStatus)<br />
Signature: (LLEDStatus;)V<br />
public getLEDStatus()<br />
Signature: ()LLEDStatus;<br />
<br />
public setMotorPosition(float)<br />
Signature: (F)V<br />
public getMotorPosition()<br />
Signature: ()F<br />
<br />
public getRGBImage()<br />
Signature: ()LI<br />
<br />
public getDepthImage()<br />
Signature: ()LI<br />
<br />
}<br />
</pre><br />
<br />
Kinect LED<br />
<pre><br />
<br />
public class KinectLed {<br />
public KinectLed(KinectDevice);<br />
Signature: (LKinectDevice;)V<br />
public LEDStatus getStatus();<br />
Signature: ()LEDStatus;<br />
public void setStatus(LEDStatus);<br />
Signature: (LLEDStatus;)V<br />
}<br />
<br />
</pre></div>
Thantrix
https://openkinect.org/w/index.php?title=Main_Page&diff=1312
Main Page
2011-04-28T19:53:41Z
<p>Thantrix: /* API Documentation */</p>
<hr />
<div>__NOTOC__<br />
[[Image:logo_openkinect_shaded.svg]]<br />
<br />
'''Welcome to the OpenKinect project'''<br />
{{Languages}}<br />
== About ==<br />
<br />
'''OpenKinect''' is an open community of people interested in making use of the amazing Xbox Kinect hardware with our PCs and other devices. We are working on free, open source libraries that will enable the Kinect to be used with Windows, Linux, and Mac.<br />
<br />
The OpenKinect community consists of over 2000 members contributing their time and code to the Project. Our members have joined this Project with the mission of creating the best possible suite of applications for the Kinect. OpenKinect is a true "open source" community!<br />
<br />
Our primary focus is currently the '''libfreenect''' software. Code contributed to OpenKinect where possible is made available under an Apache20 or optional GPL2 license. <br />
<br />
* Source code is available here: https://github.com/OpenKinect/libfreenect<br />
<br />
* Get started right away by [[Getting Started|installing]] the software to your platform.<br />
<br />
== Communications ==<br />
<br />
If you want to participate or just watch the progress of the OpenKinect effort, subscribe to the OpenKinect [http://groups.google.com/group/openkinect/ mailing list]. In the application form, please tell us something about yourself and you'll be approved automatically. You could also subscribe to the low-traffic announcement-only [http://groups.google.com/group/openkinect-announce/ mailing list].<br />
<br />
*You can follow us on ''Twitter'' [http://twitter.com/openkinect @openkinect]. Please use the #tag #openkinect when tweeting your work.<br />
<br />
*You can meet people in your area working on OpenKinect through [[Meetup_Groups|''Meetup Groups'']]:<br />
** [http://meetup.com/OpenKinect NYC] <br />
** [http://qccolab.com QC-Colab Davenport, IA] <br />
** [http://www.meetup.com/3DVision/ San Francisco]<br />
<br />
*You can also chat with people developing on OpenKinect software on ''IRC'': [irc://irc.freenode.net/#OpenKinect #OpenKinect] on irc.freenode.net or using this web based [http://webchat.freenode.net/ chat]. <br />
*Channel logs (daily rotation) can be found [http://falcon4ever.pcsx2.net/kinect/logs/ here].<br />
<br />
== Project information ==<br />
<br />
* '''[[Roadmap|Project Roadmap]]''' - The current roadmap for the project (libfreenect, analysis library, and applications)<br />
* '''[[People]]''' - Who is doing what: project leader, maintainers, contributors etc.<br />
* '''[[History|Project History]]''' - The bounty, key dates and milestones<br />
* '''[[Policies|Project Policies]]''' - The official name of the project, license, contribution policy, developers coordination and decision making<br />
* '''[[Getting Started|Installation]]''' - How to download, build and install on Linux, OS X and Windows<br />
* '''[[Contributing Code]]''' - Official repositories, use of a fork and source header, signing off, submissions and evaluation etc.<br />
* '''[[Code Integration]]''' - How to deal with how we use git: repository policy, git usage, workflow, starting development, integration process etc.<br />
* '''[[Contributing]]''' - There are many ways to contribute: testing, administrative tasks, support related, documentation, collaboration etc.<br />
* '''[[FAQ]]''' - Frequently asked questions<br />
* '''[[Documentation]]''' - Documenation<br />
* '''[[Project_ideas|Project Ideas]]''' - Ideas and concepts to explore using OpenKinect<br />
* '''[[Gallery|Gallery and websites]]''' - Videos and links to things people are doing with OpenKinect<br />
* '''[[Official_Logos|Official Logos]]''' - Official OpenKinect logos for use in your projects<br />
<br />
== API Documentation ==<br />
<br />
* [[High Level]] - High-level API documentation<br />
* [[Low Level]] - Low-level API documentation<br />
<br />
== Wrappers ==<br />
<br />
* [[Python_Wrapper|Python]]<br />
* [[C_Sync_Wrapper|C Synchronous]] - Provides functions to get data instead of callbacks<br />
* [[Action_Script_3|Actionscript]]<br />
* [[C++_Wrapper|C++]]<br />
* [[CSharp_Wrapper|C#]]<br />
* [[Java_JNI_Wrapper|Java JNI]]<br />
* [[Java_JNA_Wrapper|Java JNA]]<br />
* [[Javascript_Wrapper|Javascript]]<br />
* [[Getting_Started_With_Common_Lisp|Common Lisp]] - Getting started with libfreenect on Common Lisp<br />
<br />
== Utilities ==<br />
<br />
* [[fakenect#Record|Record]] - Dumps Kinect data to PPM, PGM, and a bin dump for RGB, Depth, and Accel respectively.<br />
* [[fakenect|Fakenect]] - libfreenect simulator/mock interface that lets you use the kinect demos without having a kinect (plays back data from [[fakenect#Record|Record]])<br />
<br />
== Knowledge base ==<br />
<br />
* '''[[Protocol Documentation]]''' - Kinect USB procotol, structures and hardware control commands for the cameras, motor, LED and audio<br />
* [http://www.freepatentsonline.com/20100118123.pdf Reference design] - US Patent Application "Depth mapping using projected patterns"<br />
* [[Camera_DSP|NUI Camera DSP]] - Camera DSP, architecture, instruction set, firmware, and capabilities<br />
* [[lsusb output]] - Device identifier output<br />
* [[USB Devices]] - Overview of the hardware devices<br />
* [[USB Protocol Information]] - Other information about the Kinect USB protocol<br />
* [[Init Analysis]] - Messing with various init sequences<br />
* [[Imaging Information]] - Information about the imaging data returned by the Kinect<br />
* [[Research Material]] - Research material for software layer implementation<br />
* [[Hardware_info]] - Hardware information<br />
* [[Calibration]] - Gathering information for including calibration facilities<br />
<br />
== Links ==<br />
<br />
'''OpenNI'''<br />
* http://openni.org - Open Natural Interaction, an industry-led, not-for-profit organization formed to certify and promote the compatibility and interoperability of Natural Interaction (NI) devices, applications and middleware<br />
* http://github.com/openni - Open source framework for natural interaction devices<br />
* http://github.com/PrimeSense/Sensor - Open source driver for the PrimeSensor Development Kit<br />
<br />
''' Tech '''<br />
<br />
* http://www.ifixit.com/Teardown/Microsoft-Kinect-Teardown/4066/ - Hardware teardown. Chip info is here. (via adafruit)<br />
* http://kinecthacks.net/kinect-pinout/ - Pinout info of the Kinect Sensor<br />
* http://www.primesense.com/?p=535 - Primesense reference implementation (via adafruit thread)<br />
* http://www.sensorland.com/HowPage090.html - How sensors work and the bayer filter<br />
* http://www.numenta.com/htm-overview/education/HTM_CorticalLearningAlgorithms.pdf - Suggestions to implement pseudocode near the end<br />
* http://www.dwheeler.com/essays/floss-license-slide.html - Which licenses are compatible with which<br />
* http://www.eetimes.com/design/signal-processing-dsp/4211071/Inside-Xbox-360-s-Kinect-controller - Another Hardware Teardown. Note this article incorrectly states that the PS1080 talks to the Marvell chip.<br />
* http://nvie.com/posts/a-successful-git-branching-model/ - Model for branching within Git<br />
* http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/SubmittingPatches - Linux contribution procedure <br />
* http://git.kernel.org/?p=git/git.git;a=blob_plain;f=Documentation/SubmittingPatches;hb=HEAD - Git project contribution procedure</div>
Thantrix
https://openkinect.org/w/index.php?title=High_Level&diff=1282
High Level
2011-04-22T19:11:21Z
<p>Thantrix: </p>
<hr />
<div>KEY<br />
{| style="width:400px;color:green; background-color:#ffffcc;" cellpadding="3" cellspacing="0" border="1"<br />
|Type<br />
|Character<br />
|-<br />
|boolean<br />
|Z<br />
|-<br />
|byte<br />
|B<br />
|-<br />
|char<br />
|C<br />
|-<br />
|double<br />
|D<br />
|-<br />
|float<br />
|F<br />
|-<br />
|int<br />
|I<br />
|-<br />
|long<br />
|J<br />
|-<br />
|object<br />
|L<br />
|-<br />
|short<br />
|S<br />
|-<br />
|void<br />
|V<br />
|-<br />
|array<br />
|[<br />
|}<br />
<br />
Kinect Device<br />
<br />
<pre><br />
public class KinectDevice {<br />
public KinectDevice()<br />
Signature: ()V;<br />
<br />
public setLEDStatus(LEDStatus)<br />
Signature: (LLEDStatus;)V<br />
public getLEDStatus()<br />
Signature: ()LLEDStatus;<br />
<br />
public setMotorPosition(float)<br />
Signature: (F)V<br />
public getMotorPosition()<br />
Signature: ()F<br />
<br />
public getRGBImage()<br />
Signature: ()LI<br />
<br />
public getDepthImage()<br />
Signature: ()LI<br />
<br />
}<br />
</pre><br />
<br />
Kinect LED<br />
<pre><br />
<br />
public class KinectLed {<br />
public KinectLed(KinectDevice);<br />
Signature: (LKinectDevice;)V<br />
public LEDStatus getStatus();<br />
Signature: ()LEDStatus;<br />
public void setStatus(LEDStatus);<br />
Signature: (LLEDStatus;)V<br />
}<br />
<br />
</pre><br />
<br />
----<br />
<br />
core.c<br />
<pre><br />
freenect_init()<br />
freenect_shutdown()<br />
freenect_process_events()<br />
freenect_num_devices()<br />
freenect_open_device()<br />
freenect_close_device()<br />
freenect_set_user()<br />
freenect_get_user()<br />
freenect_set_log_level()<br />
freenect_set_log_callback()<br />
fn_log()<br />
</pre><br />
<br />
tilt.c<br />
<pre><br />
freenect_get_tilt_state()<br />
freenect_update_tilt_state()<br />
freenect_set_tilt_degs()<br />
freenect_set_led()<br />
freenect_get_tilt_degs()<br />
freenect_get_tilt_status()<br />
freenect_get_mks_accel()<br />
</pre><br />
<br />
cameras.c<br />
<pre><br />
stream_process()<br />
stream_init()<br />
stream_freebufs()<br />
stream_setbuf()<br />
convert_packed_to_16bit()<br />
convert_packed_to_8bit()<br />
convert_packed11_to_16bit()<br />
depth_process()<br />
convert_uyuy_to_rgb()<br />
convert_bayer_to_rgb()<br />
video_process()<br />
send_cmd()<br />
write_register()<br />
freenect_start_depth()<br />
freenect_start_video()<br />
freenect_stop_depth()<br />
freenect_stop_video()<br />
freenect_set_depth_callback()<br />
freenect_set_video_callback()<br />
freenect_get_video_mode_count()<br />
freenect_get_video_mode()<br />
freenect_get_current_video_mode()<br />
freenect_find_video_mode()<br />
freenect_set_video_mode()<br />
freenect_get_depth_mode_count()<br />
freenect_get_depth_mode()<br />
freenect_get_current_depth_mode()<br />
freenect_find_depth_mode()<br />
freenect_set_depth_mode()<br />
freenect_set_depth_buffer()<br />
freenect_set_video_buffer()<br />
</pre></div>
Thantrix
https://openkinect.org/w/index.php?title=High_Level&diff=1278
High Level
2011-04-16T00:11:32Z
<p>Thantrix: This edit incorporates a more detailed High-level documentation. Functions signatures for all relevant c files have been included, sans return and parameters.</p>
<hr />
<div>KEY<br />
{| style="width:400px;color:green; background-color:#ffffcc;" cellpadding="3" cellspacing="0" border="1"<br />
|Type<br />
|Character<br />
|-<br />
|boolean<br />
|Z<br />
|-<br />
|byte<br />
|B<br />
|-<br />
|char<br />
|C<br />
|-<br />
|double<br />
|D<br />
|-<br />
|float<br />
|F<br />
|-<br />
|int<br />
|I<br />
|-<br />
|long<br />
|J<br />
|-<br />
|object<br />
|L<br />
|-<br />
|short<br />
|S<br />
|-<br />
|void<br />
|V<br />
|-<br />
|array<br />
|[<br />
|}<br />
<br />
Kinect Device<br />
<br />
<pre><br />
public class KinectDevice {<br />
public KinectDevice()<br />
Signature: ()V;<br />
<br />
public setLEDStatus(LEDStatus)<br />
Signature: (LLEDStatus;)V<br />
public getLEDStatus()<br />
Signature: ()LLEDStatus;<br />
<br />
public setMotorPosition(float)<br />
Signature: (F)V<br />
public getMotorPosition()<br />
Signature: ()F<br />
<br />
public getRGBImage()<br />
Signature: ()LI<br />
<br />
public getDepthImage()<br />
Signature: ()LI<br />
<br />
}<br />
</pre><br />
<br />
Kinect LED<br />
<pre><br />
<br />
public class KinectLed {<br />
public KinectLed(KinectDevice);<br />
Signature: (LKinectDevice;)V<br />
public LEDStatus getStatus();<br />
Signature: ()LEDStatus;<br />
public void setStatus(LEDStatus);<br />
Signature: (LLEDStatus;)V<br />
}<br />
<br />
</pre><br />
<br />
----<br />
<br />
core.c<br />
<pre><br />
freenect_init()<br />
freenect_shutdown()<br />
freenect_process_events()<br />
freenect_num_devices()<br />
freenect_open_device()<br />
freenect_close_device()<br />
freenect_set_user()<br />
freenect_get_user()<br />
freenect_set_log_level()<br />
freenect_set_log_callback()<br />
fn_log()<br />
</pre><br />
<br />
tilt.c<br />
<pre><br />
freenect_get_tilt_state()<br />
freenect_update_tilt_state()<br />
freenect_set_tilt_degs()<br />
freenect_set_led()<br />
freenect_get_tilt_degs()<br />
freenect_get_tilt_status()<br />
freenect_get_mks_accel()<br />
</pre><br />
<br />
cameras.c<br />
<pre><br />
freenect_start_depth()<br />
freenect_start_video()<br />
freenect_stop_depth()<br />
freenect_stop_video()<br />
freenect_set_depth_callback()<br />
freenect_set_video_callback()<br />
freenect_set_video_format()<br />
freenect_set_depth_format()<br />
freenect_set_depth_buffer()<br />
freenect_set_video_buffer<br />
stream_process()<br />
stream_init()<br />
stream_freebufs()<br />
stream_setbuf()<br />
conver_packed_to_16bit()<br />
conver_packed_to_8bit()<br />
depth_process()<br />
convert_uyuy_to_rgb()<br />
convert_bayer_to_rgb()<br />
video_process()<br />
write_register()<br />
</pre><br />
<br />
internal.c<br />
<pre><br />
send_cmd()<br />
</pre></div>
Thantrix