Repository navigation
feat(mcap): add SOMA body and hand recording, replay, and live preview - #1253
Open
nv-mhaselton wants to merge 1 commit into
Open
nv-mhaselton wants to merge 1 commit into
nv-mhaselton wants to merge 1 commit into
Conversation
Contributor
|
📝 Docs preview is not auto-deployed for fork PRs. A maintainer with write access to |
Contributor
Extend the existing body and hand commands with SOMA schema selection and support for joint-rotations and joint-poses. Preserve received FlatBuffer payloads in MCAP and render native SOMA skeletons through the existing sources. Share recording, replay, and visualization helpers while preserving legacy defaults and core replay behavior. Keep controllers opt-in for SOMA body workflows. Add round-trip, sparse-data, channel-selection, EOF, and repeatability tests, and document installation and usage. Signed-off-by: Michael Haselton <mhaselton@nvidia.com>
nv-mhaselton
force-pushed
the
feat/soma-mcap-workflows
branch
from
October 13, 2026 20:32
8e73110 to
7d5b500
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Extend the existing full-body and hand MCAP commands with selectable SOMA inputs for recording, offline replay, and live preview. Preserve the FullBodyPose and OpenXR hand defaults. SOMA body recording includes controllers only when explicitly enabled with
--controllers.joint-rotationsandjoint-posesrepresentations.Core schemas and replay ticking remain unchanged. Left and right hand trackers advance independently, following existing replay behavior. This does not introduce timestamp synchronization, resampling, or body/hand fusion.
Type of change
Testing
Validated live publishing, recording, and offline replay for body and hands in both representations. Repeated replay of each capture produced identical evaluated outputs.
Setup
For a fresh development environment, run from the repository root:
These examples use Viser and do not require the native Televiz build.
Automated checks
Tests cover repeated native MCAP round trips, payload and timestamp preservation, sparse joints, tracked-channel selection, EOF behavior, independent hand playback, and visualization.
Interactive validation
Follow the MCAP example README for complete publisher, live viewer, recorder, and replay commands.
For body joint-rotations:
--body-representation joint-rotations--body-schema soma --soma-body-representation joint-rotationsFor hand joint-rotations:
--hand-representation joint-rotations--hand-schema soma --soma-hand-representation joint-rotationsRepeat both workflows with
joint-posesinstead ofjoint-rotations. Match the representation across all commands and use a separate recording file for each mode. Offline replay does not require a CloudXR runtime or client.Checklist
SKIP=check-copyright-year pre-commit run --all-filesgit commit -s) per the DCOSummary by CodeRabbit