出力

In this section we go over the motion capture outputs that Kinoca can be configured to work with.

UDP

Send mocap data to a UDP port. Each UDP packet is a mocap frame in JSON format. The JSON schema can be downloaded here.

A frame without inverse kinematics contains the 3D keypoints, in meters:

{
  "version": "1.0.0",
  "timestamp_us": 1728467000000000,
  "frame": 42,
  "features": {
    "nose": [0.02, 1.61, 0.13],
    "left_shoulder": [0.18, 1.42, 0.05]
  }
}

When a 3D model is set up for inverse kinematics, features is replaced by bones, which contains the model-space 4x4 transform of each bone as an array of rows.

Kinoca mocap frame

A single motion capture frame, as sent over UDP or written as one line of a file dump. A frame contains either 3D keypoints (features) or, when a 3D model is set up for inverse kinematics, bone transforms (bones).

type

object

properties

  • version

Version of Kinoca that produced the frame.

type

string

examples

1.0.0

  • timestamp_us

Capture time of the frame in microseconds.

type

integer

  • frame

Index of the frame, starting at 0 when motion capture starts.

type

integer

minimum

0

  • features

Triangulated 3D keypoints keyed by keypoint name (e.g. "nose", "left_shoulder"). Positions are [x, y, z] in meters, in the world reference frame. Keypoints that could not be triangulated are omitted, and the object is empty when nobody is detected.

type

object

additionalProperties

vec3_

  • bones

Model-space transforms of the mapped bones, keyed by the node name in the 3D model.

type

object

additionalProperties

mat4_

vec3

type

array

items

type

number

maxItems

3

minItems

3

mat4

4x4 homogeneous transform as an array of 4 rows.

type

array

items

type

array

items

type

number

maxItems

4

minItems

4

maxItems

4

minItems

4

File dump

Dump the mocap frames to a file on disk. Uses the same format as UDP, with one frame per line.

VMC protocol

This enables Kinoca to be compatible with all kinds of VR software, such as EVMC4U, Warudo and Animaze.