Skip to main content

Whitebox Plugin - Insta360 Camera Support

This is a plugin for whitebox that enables support for Insta360 cameras using the insta360 library.

Live X4 preview sessions publish transient, non-persistent gravity observations for the matching device_connection_<id> stream. Raw X4 acceleration maps to the right-handed Three.js leveling-root frame (+X world, viewer-left with the current +Z camera target; +Y up; +Z target-forward) as (ay, ax, az), is confidence-gated and EMA-filtered on every eligible sample. This Device calibration is distinct from ThreeJS's private, unchanged source-to-SphereGeometry projection basis (x, y, z) -> (z, y, -x). Gyroscope values are not integrated and no yaw is inferred.

Live publication is uncapped by default, with no intentional rate delay. Set WHITEBOX_INSTA360_LEVELING_MAX_HZ in Whitebox's container environment to a positive finite number (fractional Hz supported) to limit publication using monotonic elapsed time. Missing or 0 means uncapped; negative, nonfinite, empty or malformed values fail daemon startup with a configuration error, as do nonzero values too small to represent as a floating-point rate. Restart the daemon after changing its environment; recreate its container when changing Compose environment values.

This is a maximum publication cadence, not guaranteed sensor or render FPS. Filtering is independent of the cap. Delivery keeps only the latest pending trusted value, replacing obsolete observations during rate waits or slow sends rather than replaying a backlog. A replacement stream generation discards retired pending data and starts a new cadence with an immediate first publication. Video remains independently transported; this does not imply video-frame synchronization or camera-equivalent stabilization.

Installation

Install a compatible regular release in Whitebox's backend Python environment:

poetry add whitebox-plugin-device-insta360

Python installation does not build the frontend. Follow Whitebox's regular installation and explicit core assembly workflow, then restart backend workers and reload the browser as described in frontend installation and recovery. Use the guides from your matching core checkout when working on unpublished changes.

Adding Plugin to Whitebox Locally (For Development)

Clone this repository into the prepared Whitebox development environment. For live frontend changes, follow the explicit editable-session workflow: install only intended owners editable, select this owner in a ready session, and restart Django with development enabled before reloading the browser. An unselected editable frontend blocks browser bootstrap; installing it and starting the server alone is not supported. The same guide explains returning to a saved regular wheel and reassembling before restart.

Running Plugin Tests Locally

The Whitebox backend runner discovers installed Python tests in whitebox_test_plugin_device_insta360; follow the core guide's Python testing instructions and run the backend's make test from /app in its prepared development container. That is distinct from browser frontend admission. From this plugin checkout in the prepared backend development container, make test-frontend runs the owner source suite through core's tooling. Source tests do not prove installed frontend behavior; use the installed application checks for the matched regular installation and assembled application.

Contribution Guidelines

  1. Write tests for each new feature.
  2. Ensure coverage is 90% or more.
  3. Google style docstrings should be used for all functions and classes.

Metadata

Release files for whitebox-plugin-device-insta360 0.1.41

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for whitebox-plugin-device-insta360 0.1.41
File Size Uploaded Provenance
whitebox_plugin_device_insta360-0.1.41.tar.gz 89.8 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for whitebox-plugin-device-insta360 0.1.41
File Interpreter ABI Platform
whitebox_plugin_device_insta360-0.1.41-py3-none-any.whl Python 3 none any Details

Total release size: 195.5 kB

Release files / whitebox_plugin_device_insta360-0.1.41.tar.gz

Download URL whitebox_plugin_device_insta360-0.1.41.tar.gz
Size 89.8 kB
Tags Source
SHA-256 checksum
How to use checksums
4c14b23593e36c31ea8d1a74df37212944cd043b27fa9a32ae93e320bf822806
BLAKE2b-256 checksum
How to use checksums
97821bf2cd8ee5b6b4307f30c7e2ae8eef7905df09ffc233462ba6397e7644df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.0.dev0 CPython/3.14.4 Linux/6.1.75+

Release files / whitebox_plugin_device_insta360-0.1.41-py3-none-any.whl

Download URL whitebox_plugin_device_insta360-0.1.41-py3-none-any.whl
Size 105.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6c7b658b2b1452ad8be1b3db0b41a3ab6e1329f19968655c46780a24cbd2d422
BLAKE2b-256 checksum
How to use checksums
78bd0c7581c21007d1cb7a77986054ff17e6ebfe2418239400b98bb86d4d2506
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.2.0.dev0 CPython/3.14.4 Linux/6.1.75+

Security for whitebox-plugin-device-insta360 0.1.41

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.41 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page