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
Metadata
Release files for splats4d 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| splats4d-0.1.0.tar.gz | 22.4 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| splats4d-0.1.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64 | Details |
| splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64 | Details |
| splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
| splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl | Python 3 | none | macOS 10.12+ x86-64 | Details |
Total release size: 5.0 MB
Release files / splats4d-0.1.0.tar.gz
| Download URL | splats4d-0.1.0.tar.gz |
|---|---|
| Size | 22.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e97d88d842528187d71bded3cdbdd5c43b2c9731b6a771a7f32cfd67cb794caf
|
|
BLAKE2b-256 checksum How to use checksums |
f9923fb7a39a7ff138ce2edf9ec4b6f7280058e85454a4a7e88c22c4504febfe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / splats4d-0.1.0-py3-none-win_amd64.whl
| Download URL | splats4d-0.1.0-py3-none-win_amd64.whl |
|---|---|
| Size | 818.3 kB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b2b37a1ce23dae1d2d4ce5196e8c5f334d92c2ab37365d6ba711142a55dc27aa
|
|
BLAKE2b-256 checksum How to use checksums |
daed5c070aa517e91855f27c33128cab0610c0f314ad4d3433af8660b12b3c6a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | splats4d-0.1.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | Linux glibc 2.17+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
04fb6e3b16d65c70e0aa26426aa0d0daa30c2327e7096ae78a9ed67f6e335157
|
|
BLAKE2b-256 checksum How to use checksums |
10abbbaf7cff4ee0cc5c1511ed8a5dfecec15ae6d69c5edd241e306c0d81f73b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | splats4d-0.1.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Linux glibc 2.17+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
3ab41c2713494e413190c9761d48e76d03fe1823d0e2f679b67a8edacee686ec
|
|
BLAKE2b-256 checksum How to use checksums |
ceb2fbcbccf0e572ec8062fd8671e2f76260c6ca5b8577c242b5c38995f557c0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl
| Download URL | splats4d-0.1.0-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 928.0 kB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
aac80bda7b89a0ca54e5d462a530c181343cef3bff1a5e894f5066e243565f55
|
|
BLAKE2b-256 checksum How to use checksums |
76ec721651c6ef5d182fdb169ec78ddf75f847aeb1196c1315463af9035d9fb3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl
| Download URL | splats4d-0.1.0-py3-none-macosx_10_12_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
7de82e25b0fe9a188841a99b5b0170c71e4ff8646267aae1d6c7bcce0ea07c43
|
|
BLAKE2b-256 checksum How to use checksums |
69c2bf587e413a1b27bb32f679488e31d58568b62533174bbd00450d3e02f4e3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|