Skip to main content

splat4d

Compress a folder of antimatter15 .splat gaussian-splat frames into one small, streamable .splat4d file with deterministic, tunable error bounds. This package ships the native Rust CLI — pip install splats4d puts the splat4d executable on your PATH.

pip install splats4d

# defaults: --pos-mm 2 --color-levels 4 --rot-steps 0 (exact rotation) --scale-pct 2
splat4d encode -i frames_dir -o scene.splat4d

frames_dir contains frame_0000.splat, frame_0001.splat, … plus an optional frames.json manifest ({"fps": 20, "frames": [{"file": "...", "timestamp": 0.0}, …]}); without a manifest, files are taken in sorted order at --fps.

What you get

  • 25–48× smaller than the raw frame series on real captures (10–19× smaller than gzipping the same frames), encoding at ~140 MB/s.
  • Hard error bounds, verified: every attribute of every splat in every decoded frame is within your chosen bound (±mm position, ±levels color, ±quaternion steps, ±% scale). Each encode decodes everything back and asserts the bounds before it reports success.
  • Streaming & seeking: closed keyframe GOPs indexed by absolute byte ranges — clients play and scrub via plain HTTP Range requests straight from an object store (S3/GCS/R2). A WebGPU viewer is included in the repo.

Commands

splat4d encode -i <dir> -o <file>   # compress (see --help for all bounds/tuning flags)
splat4d verify <file> -i <dir>      # exhaustive bound check against the source frames
splat4d decode <file> --frame 42 -o f42.splat   # reconstruct one frame
splat4d info <file>                 # print header / chunk index

Format spec, benchmarks, and the browser viewer: github.com/adamraudonis/splats4D · project page

Download files

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

Source Distribution

splats4d-0.1.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

splats4d-0.1.0-py3-none-win_amd64.whl (818.3 kB view details)

Uploaded Python 3Windows x86-64

splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl (928.0 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl (1.0 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file splats4d-0.1.0.tar.gz.

File metadata

  • Download URL: splats4d-0.1.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e97d88d842528187d71bded3cdbdd5c43b2c9731b6a771a7f32cfd67cb794caf
MD5 e84658d826c60de13ba9b65c1289b61b
BLAKE2b-256 f9923fb7a39a7ff138ce2edf9ec4b6f7280058e85454a4a7e88c22c4504febfe

See more details on using hashes here.

File details

Details for the file splats4d-0.1.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: splats4d-0.1.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 818.3 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 b2b37a1ce23dae1d2d4ce5196e8c5f334d92c2ab37365d6ba711142a55dc27aa
MD5 c603679a705e4cb6a5804503c4abbb0e
BLAKE2b-256 daed5c070aa517e91855f27c33128cab0610c0f314ad4d3433af8660b12b3c6a

See more details on using hashes here.

File details

Details for the file splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 04fb6e3b16d65c70e0aa26426aa0d0daa30c2327e7096ae78a9ed67f6e335157
MD5 72f028ee6b2f442e4348672f71a1594a
BLAKE2b-256 10abbbaf7cff4ee0cc5c1511ed8a5dfecec15ae6d69c5edd241e306c0d81f73b

See more details on using hashes here.

File details

Details for the file splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3ab41c2713494e413190c9761d48e76d03fe1823d0e2f679b67a8edacee686ec
MD5 0b9e43d494acd68fa3f8f0852bfd655d
BLAKE2b-256 ceb2fbcbccf0e572ec8062fd8671e2f76260c6ca5b8577c242b5c38995f557c0

See more details on using hashes here.

File details

Details for the file splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 928.0 kB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aac80bda7b89a0ca54e5d462a530c181343cef3bff1a5e894f5066e243565f55
MD5 815238dbec899093f6afa437a92854d0
BLAKE2b-256 76ec721651c6ef5d182fdb169ec78ddf75f847aeb1196c1315463af9035d9fb3

See more details on using hashes here.

File details

Details for the file splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7de82e25b0fe9a188841a99b5b0170c71e4ff8646267aae1d6c7bcce0ea07c43
MD5 5e80587066d549d75aed32ae29aced7e
BLAKE2b-256 69c2bf587e413a1b27bb32f679488e31d58568b62533174bbd00450d3e02f4e3

See more details on using hashes here.

Supported by

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