Skip to main content

A library to make it easy to use the body tracking information from Virtual Desktop in Python

Project description

PyVDLib

A library to make it easy to use the body tracking information from Virtual Desktop in Python

Installation

PyVDLib can be installed with pip install pyvdlib and imported with import PyVDLib

Usage

AwaitVirtualDesktopSyncEvent(timeout)

  • timeout (optional) The duration in milliseconds to wait before timing out (default is 1000 ms).

Performs a blocking wait, halting the execution until an update is received from Virtual Desktop's event synchronization pulse, or until the specified timeout duration is reached.

GetVirtualDesktopBodyDict()

Returns a dict with the following keys:

  • FaceIsValid (bool)
  • IsEyeFollowingBlendshapesValid (bool)
  • ExpressionWeights (dict of 70 floats, keys from 0-69)
  • ExpressionConfidences (dict of 2 floats, keys from 0-1)
  • LeftEyeIsValid (bool)
  • RightEyeIsValid (bool)
  • LeftEyePose (pose)
  • RightEyePose (pose)
  • LeftEyeConfidence (float)
  • RightEyeConfidence (float)
  • LeftHandActive (bool)
  • RightHandActive (bool)
  • LeftHandJointStates (dict of 26 FingerJointState's, keys from 0-25)
  • RightHandJointStates (dict of 26 FingerJointState's, keys from 0-25)
  • LeftAimState (HandTrackingAimState)
  • RightAimState (HandTrackingAimState)
  • BodyTrackingCalibrated (bool)
  • BodyTrackingHighFidelity (bool)
  • BodyTrackingConfidence (float)
  • BodyJoints (dict of 84 BodyJointLocation's, keys from 0-83)
  • SkeletonJoints (dict of 84 SkeletonJoints's, keys from 0-83)
  • SkeletonChangedCount (Uint32)

Quaternion

x: float y: float z: float w: float

Vector3

x: float y: float z: float

Pose

Orientation: Quaternion Position: Vector3

FingerJointState

Pose: Pose Radius: float AngularVelocity: Vector3 LinearVelocity: Vector3

HandTrackingAimState

AimStatus: np.uint64 AimPose: Pose PinchStrengthIndex: float PinchStrengthMiddle: float PinchStrengthRing: float PinchStrengthLittle: float

BodyJointLocation

LocationFlags: np.uint64 Pose: Pose

The active joint locations.

Location flags function similarly to a boolean, but instead of being 0 or 1, they are either 0 or 15. These flags include bits for position and orientation, as well as a valid and tracked bit. As it currently stands, these are either all activated or all deactivated.

SkeletonJoint

Joint: np.uint32 ParentJoint: np.uint32 Pose: Pose

A static T-Pose of the users proportions.

List of joint mappings can be found here: LINK

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyvdlib-1.1.0.tar.gz (25.6 MB view details)

Uploaded Source

Built Distribution

pyvdlib-1.1.0-py3-none-any.whl (4.6 kB view details)

Uploaded Python 3

File details

Details for the file pyvdlib-1.1.0.tar.gz.

File metadata

  • Download URL: pyvdlib-1.1.0.tar.gz
  • Upload date:
  • Size: 25.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for pyvdlib-1.1.0.tar.gz
Algorithm Hash digest
SHA256 d16126f694c5e1ea486cac17e606d895ace83bc80e39427ee2260748db251909
MD5 b218b6617358286324198474bcbf9f90
BLAKE2b-256 6ebac4761da4cdcea87dcb644876a7e54dc5a7ab07b323ef4c84bf018e5c0c91

See more details on using hashes here.

File details

Details for the file pyvdlib-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: pyvdlib-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for pyvdlib-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9c2fd6fa529ebeb288e91464dbe7a1628992dd98f0d7656e1bcc03129eda8326
MD5 b921957c8df61b4e0b94aa3f25b67ff5
BLAKE2b-256 478cfcd7e4527bba0bbe8802a058a6b20c8a1b80332ae2b0f07f1c1ebcb10df5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page