Motion Server – One Kinect v2 on Multiple Devices

One day I felt that using one Kinect on one PC isn’t enough. There could be more interesting things to do with multiple screens.
So I consider sharing the Kinect data with multiple devices. You may know that I created an app called Kv2 Viewer that can access Kinect data on the phone. With the similar technology, I successfully send Kinect data to multiple devices.
Firstly I write a server program to make a Win 8.1 PC as a server. Then all other clients that want the Kinect data would just need to connect to this PC.

Here are the simple demos I made in the video:

Body views
MotionServer
They all get the joint positions, joint states first and generate the body views on screen, not reciving body view images from the server.

Girls staring at target
MotionServer_Girls
The girls from different directions would stares at you (According to your head position). And if you act like pointing at something, they would stare at that (According to your hand position.)

About TangoChen

Original name: Jingzhou Chen. VR Prototyper at Tencent, Microsoft MVP on Emerging Experiences(More Personal Computing), dropout.
This entry was posted in Kinect, Tech. Bookmark the permalink.

3 Responses to Motion Server – One Kinect v2 on Multiple Devices

  1. nikky says:

    This is very impressive.

    Can you explain with more details exactly what you did to get the data to multiple computers?

    • TangoChen says:

      Hi, nikky. I convert all body(skeleton) data to strings like “Skeleton0PosX,Skeleton0PosY,Skeleton0PosZ|Skeleton1PosX,Skeleton1PosY,Skeleton1PosZ|Skeleton3PosX,…” (e.g. “1.5f,4.2f,3.5f|3.56f,2.43f,2.54f|1.3f,…”) Send the string to every connected clients over Wi-Fi. Then on the client side, I use string.Split(‘|’) to split it as skeleton positions and use string.Split(‘,’) to get XYZ strings and convert ’em to floats.
      It may not be a smart way but it just works. :)

  2. Tommy says:

    Quite nice! There aren’t many ways to do this. I think that (Lab Streaming Layer) LSL can also provide network capabilities for Kinect motion but it’s really intended for university researchers.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.