Kinect for Windows SDK (Silverlight Required)
research.microsoft.com
research.microsoft.com
Q:I know that other drivers and development software for Kinect are available on the Web. Can I use the Kinect sensor device with these other drivers or software instead of the SDK Beta?
A: No. Use of the Kinect sensor device is subject to its own warranty and software license agreement that allow you to use it solely in connection with an Xbox 360 or Xbox 360 S console. Only Microsoft can grant you the additional rights that you need to use the Kinect sensor device with a personal computer. Microsoft grants these additional rights in the SDK Beta license, but only for uses of the Kinect sensor device in connection with the SDK Beta. If you use the Kinect sensor with a platform other than Xbox 360, Xbox 360 S, or Windows (with the SDK Beta), you void the warranty you received when you purchased the Kinect sensor device.
I can has open source now?
Edit: I just looked at the Skeletal viewer sample. Looks like they do have skeleton tracking in the SDK. Woot!
Edit 2: They also have sound localization from the Kinect's microphones!!
I'm not sure about others, but I I did not expect either features to be in the initial SDK. This might explain why it took them so long (they said it would be released in Spring). They seem to have gone all-out!
I mean lets be real here. Touch is a great way to interact with computing devices but it screws up the screen. Until someone invents a smudge proof surface that will always be the case. Beyond that usability studies show touch screens on PCs just don't work. People's shoulders start to hurt very quickly.
Kinect solves that. It's touch without touching. It can be done without having to reach over the keyboard. It IS the future if Microsoft can capitalize on it.
What you're suggesting I imagine is points at an item but doesn't touch it. Maybe they coordinate themselves with a virtual reflection on the screen or something so they needn't physically touch it?
The background technology is indeed complex, but that doesn't really matter much. The biggest stopper is the fact that you are still putting and abstraction between yourself and the object you're manipulating.
Touching something and directly manipulating (touch screens) is a very close coupling with little abstraction. But having to point, but coordinate your "reflection", or point but don't touch is a stretch.
Part of my logic here is that all of this is a placeholder.
EVENTUALLY someone will invent a smudge proof technology with tactile elements and we'll probably evolve to the point where are screens are angled (think Star Trek consoles) so the reaching isn't so much an issue.
Until that comes along there will be abstractions and I think Kinect has a chance at being the best of those abstractions.
(In the above I assume you meant a mouse by "moving your finger". If you meant an iPad like interaction I'd agree it is better but I think it is unfeasible for desktop interaction)
You seem to be imagining a trackpad that doesn’t have to be touched, that can consequently track a much larger area and that can track 3D space. That’s pretty sweet, I guess, if it works reliably and is as precise as current trackpads but it doesn’t seem all that amazing.
Also, remember Kinect has a fairly solid voice controlled engine. I know many people who use the Android talk to text function regularly. I wouldnt mind using similar tech to execute searching, reading and communicating via text on the web.
Perhaps touching the screen instead of acquiring the mouse would be quicker and even lower cognitive load. This wouldn't be for every interaction, but as an adjunct to the keyboard - as the mouse is.
Not sure if true though - my mouse is at the same elevation as the keyboard, whereas the screen requires raising a hand about a foot. The cognitive load is lower though - people often instinctively touch the screen (if they haven't been screen-trained), especially when looking at someone else's screen. Perhaps that's a key? Collaborative use: a mouse is per person, but several can look and touch a screen.
You might be interested in DiamondTouch [1] which allows multiple users on one touch table. I tried it out at a presentation at the MediaLab in Nov 2010. The trick, if I remember correct, is that the user sits on a special chair. The chair, then detects an electric connection between the user and the table.
- You can't copy the runtimes with your application. Everyone has to download the SDK
- All non SDK software (OpenKinect, OpenNI + OK, etc...) is now warrenty voiding
- Assume all software you see may be violating the SDK license
"Built to be open". Yup.
1) For virtually every MS SDK I can think of, everyone has to download it. I can't think of any where this isn't the case, although I wouldn't be surprised if there was a couple. That's standard MS practice.
2) I think those things always voided the warranty. In general, I think hacks, whether on Android, iPhone, Wii, Roombas, Dysons, or whatever will void the warranty.
I remember the iPhone SDK beta license even prohibited developers from discussing the SDK or exchanging ideas with others, thereby leaving no room for forums, newsgroups, open source projects, tutorials, magazine articles, users' groups, or books(same with iOS beta now,btw) and is restricted to people signing up for it.
I don't think that the new Metro UI shipping in Windows 8 is just about touch, I also suspect that the new interface is going to be gesture sensitive as well.
Windows 8 is looking very shiny.
I definitely answered my own question.
You can run it in a VM.
That's out...
They don't, and there are lot of people, especially worldwide where Macs are less common and are much more expensive. Learning something is an investment of your free time, whereas hardware needs cold cash. Not exactly equivalent or comparable especially when not in the first world.
The previous poster's point was that the open source software allows one to use the Kinect in a cross-platform, standards-compliant setting. Microsoft's coming out with something half as featureful, with serious platform restrictions. Their SDK's only advantages are "officialness" and a more complete audio API.
A small example:
http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java#...
http://c4c.posterous.com/installing-openni-kinect-drivers-an...
You sound like a web dev, which is fair enough, but isn't Microsoft busy (for varying values of busy) trying to promote native technologies and discourage the browser as a platform view for obvious business reasons?
For Microsoft to release a commercial license they have to be able to support it. That means relatively no bugs, staffing tech support, etc... I don't think Microsoft is ready to do that with Kinect.
In fact, I think this SDK is a response to the homebrew solutions that were coming out. I think Microsoft saw the focus shifting off them and onto the open source community and they didn't want to lose the good PR. Meaning this SDK was probably rushed out the door (and I'd suspect has some serious bugs in it)
At the risk of speculating, I'd say MS need some more time before the release the commercial license, for the reasons mentioned by you (robustness of the code, staffing tech support etc.) and also to possibly see the reception of the software by the developer community, before deciding on commercial terms (It IS labelled beta afterall).
Edit - From http://research.microsoft.com/en-us/um/redmond/projects/kine...
> "This SDK is designed for non-commercial purposes only; a commercial version is expected to be available at a later date."
I'm just going to miss libfreenect and using my Mac to do this development.