python/optirx

This package contains a third-party networking module for receiving motion capture data broadcast from the Motive system.

Motion Capture Stream Processing

A pure Python library to receive motion capture data from OptiTrack.

class optirx.optirx.SenderData(appname, version, natnet_version)
appname

Alias for field number 0

natnet_version

Alias for field number 2

version

Alias for field number 1

class optirx.optirx.FrameOfData(frameno, sets, other_markers, rigid_bodies, skeletons, labeled_markers, latency, timecode, timestamp, is_recording, tracked_models_changed)
frameno

Alias for field number 0

is_recording

Alias for field number 9

labeled_markers

Alias for field number 5

latency

Alias for field number 6

other_markers

Alias for field number 2

rigid_bodies

Alias for field number 3

sets

Alias for field number 1

skeletons

Alias for field number 4

timecode

Alias for field number 7

timestamp

Alias for field number 8

tracked_models_changed

Alias for field number 10

class optirx.optirx.ModelDefs(datasets)
datasets

Alias for field number 0

class optirx.optirx.RigidBody(id, position, orientation, markers, mrk_ids, mrk_sizes, mrk_mean_error, tracking_valid)
id

Alias for field number 0

markers

Alias for field number 3

mrk_ids

Alias for field number 4

mrk_mean_error

Alias for field number 6

mrk_sizes

Alias for field number 5

orientation

Alias for field number 2

position

Alias for field number 1

tracking_valid

Alias for field number 7

class optirx.optirx.Skeleton(id, rigid_bodies)
id

Alias for field number 0

rigid_bodies

Alias for field number 1

class optirx.optirx.LabeledMarker(id, position, size, occluded, point_cloud_solved, model_solved)
id

Alias for field number 0

model_solved

Alias for field number 5

occluded

Alias for field number 3

point_cloud_solved

Alias for field number 4

position

Alias for field number 1

size

Alias for field number 2

class optirx.optirx.ModelDataset(type, name, data)
data

Alias for field number 2

name

Alias for field number 1

type

Alias for field number 0

optirx.optirx.mkcmdsock(ip_address=None, port=0)[source]

Create a command socket.

optirx.optirx.mkdatasock(ip_address=None, multicast_address='239.255.42.99', port=1511)[source]

Create a data socket.

optirx.optirx.unpack(data, version=(2, 5, 0, 0))[source]

Unpack raw NatNet packet data.

Arguments:
data byte buffer version version of the NatNet protocol (a tuple of integers)
class optirx.optirx.DataThread(ip_address=None, multicast_address='239.255.42.99', port=1511, version=(2, 5, 0, 0), packet_limit=500, *args, **kwargs)[source]
cancel()[source]
get_packets()[source]

Returns a list of all packets seen so far.

run()[source]