Browse by type
OBS Plugin to access Kinect data (and setup a virtual green screen based on depth).
Download the latest releases and copy the files in your OBS folder, restart OBS and you should have a "Kinect source" available
Clone and build OBS-studio first. Be sure to have the Kinect for Windows SDK
Copy the config.lua.default to config.lua and changes the values accordingly.
This project relies on Premake to generate its files, download the last version and use it the main folder (for example, to generate a Visual Studio 2019 solution use the premake5 vs2019 command).
Open the project workspace/solution (located in build/) and build it.
Not yet, I still have to try to use libfreenect(2) for that. Unfortunately since some of the features I'm planning are based on Windows Kinect SDK features (like body indexing), theses will probably never be available to other systems.
Not yet, I hope I will be able to add support for it in the future.
Unfortunately, Microsoft used a proprietary port on the Xbox One. You have to buy a USB 3.0 and AC adapter to use it on your computer (search for PeakLead Kinect to USB on Amazon).
Don't forget to install the Kinect for Windows runtime before using this plugin.
I don't know, it looked fun.
Maybe you could use the infrared image for an horror game stream (where you play in the dark).
Be sure to tune the depth/infrared to color values to what suits you the most.
Kinect gives us a color map (like any webcam does) and a depth map, allowing to get the distance between a pixel and the Kinect sensor. The green screen effect discard pixels being too far (or too close) and voilà. It also allows you to crop the source image, in case you have some depth artifacts. It also helps to decrease CPU power required for this effect (as cropped pixels are not processed).
There's also a cool effect of transition that you can enable, just play around and have fun.
Since 0.2 there's also a "Body" filter which uses the body informations from Kinect (basically Kinect tries to identifies pixels associated with a human being), which can filter you out even if you move away from the sensor.
That's because the color and the IR sensor of the kinect are one centimeter apart and don't see exactly the same thing. What you're seeing is really a "depth shadow".

(image from https://daqri.com/blog/depth-cameras-for-mobile-ar/)
I hope to be able to improve this (using the body index masking).
That's how Kinect depth map is, but I'm doing my best to improve it.
Since version 0.2 you can use blur passes on the filter image to improve the result. You can also try to use the new body filter.
Kinect cannot read depth below 50cm in front of it, invalid depth are discarded.
I tested it with the HTC Vive base stations (SteamVR 1.0) and didn't have any issues, should be fine.
I'm lacking a better name, being a developper implies I sucks at naming things.
I don't have the space to use a real green screen, and don't want to run into light setup.
Also I wanted a Kinect so badly since it got out.
Great, how about posting it in the issues so we can talk about it?
Fork this project, improve it and make a pull request
Because I don't speak it, I could only do the english and french translations, but you can make it available by making a pull request with your language file!
Color to depth mapping is done using a depth mapping texture, which allows the shader to get a color pixel depth coordinates but involves an indirect/dependent texture lookup. Every GPU on the market should support this (even the integrated ones) but it can be rather expensive on some GPUs.
In case this is an issue for you, you can uncheck that box to generate color to depth values on the CPU.
I do not recommend unchecking this box if you're not experiencing any issue.
$ claude mcp add obs-kinect \
-- python -m otcore.mcp_server <graph>