Skip to content
Permalink
d48c9fe7b9
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
52 lines (29 sloc) 2.54 KB

Motion Capture Player

Daniel Bisig - Coventry University, UK - ad5041@coventry.ac.uk

Abstract

This software is a simple tool for playing motion capture data and simultaneously sending this data via the open sound control (OSC) protocol to a client. The player operates either on skeleton joints (positions and orientations) or markers (positions only). This data is stored in a custom file format that can be created using simple python scripts. The player is written in C++ using the OpenFrameworks creative coding environment.

Usage

Player

Conversion of Skeleton Motion Capture Data

Conversion of skeleton motion capture data is from the Biovision (.bvh) format into the custom json format required by the player.

python bvhconv.py --input ../data/example_mocap.bvh --output ../data/example_mocap_skel.json

Conversion of Marker Motion Capture Data

Conversion of marker data is from the IBM (.c3d) format into the custom json format format required by the player.

python c3dconv.py --input ../data/example_mocap.c3d --output ../data/example_mocap_markers.json --frameskip 6

The --frameskip argument determines the interval (in number of frames) at which marker positions should be exported. With --frameskip 6, every sixth frame will be exported. This argument has been introduced to cope with the fact that marker data is often recorded at much higher framerate than skeleton data.

Compiling the Motion Capture Player

Currently, the player requires OpenFrameworks version 0.11.0 to compile. Furthermore, it has the following dependencies:

Configuration of Motion Capture Player

To configure the player, the file ./bin/data/config.json needs to be edited. Configuration involves specifying the file the player should read motion capture data from and the address and port the player sends the OSC messages to.

"mocapFileName": "data/MUR_AccumulationMovementOnPlace_01_mb_proc_rh.json",
"oscSendAddress": "127.0.0.1",
"oscSendPort": 9003

The OSC message content is as follows:

For skeleton data: /mocap/skel

Resources