Inspired by Nokia's IBC 2026 demo of streaming Gaussian splats over DASH, we cut one of our own splat scenes into a quality ladder, from 1.2 MB to 14 MB, with a manifest like a video stream's. It is a demonstration we built ourselves: no client commissioned it, and anything marked sample is made up and says so on screen.
How it was made
The browser shows the smallest version at once, measures the connection, and swaps in sharper versions as they arrive.
First 3D view, 20 Mbit/s: 0.5 s
First 3D view, 5 Mbit/s: 1.9 s. Settles on the 300k version at 7.4 s
Match to full scene, T0 · T1 · T2: 13.9 · 19.7 · 35.1 dB. PSNR over six viewpoints
Ladder sizes: 1.2 · 3.3 · 13.0 · 14.0 MB
What it will not tell you
Our scene is static, while Nokia streams moving splats with MPEG's new splat coding, which isn't publicly released. The smaller tiers are visibly rough: they're there to put something on screen fast, not to replace the full scene. A measurement taken from a capture is a guide: where a figure matters legally or commercially, the surveyed number rules, and nothing here replaces an inspection.
Gaussian-splat scenes are usually one big file you wait for. Here the same scene is cut into four versions, from 1.2 MB to 14 MB. A small one appears within seconds, then sharper ones replace it as fast as your connection allows, the way video streaming picks a quality. Pick a connection speed to see it adapt.
Showing · loading…Drag to orbit · scroll to zoom
Connection
First 3D view after
–
Measured speed
–
Downloaded
–
Gaussians shown
–
How we built it
A bitrate ladder, for 3D
Train the full scene
We rendered 160 views of our factory robot cell with exact camera positions, and trained a Gaussian splat with our 3D training, capped at 1 million Gaussians: 14 MB compressed.
Rank every Gaussian
Each Gaussian gets a score for how many pixels it covers across the training views, times its opacity. The top 100,000 hold 75% of the scene's coverage; the top 300,000, 92%.
Cut a ladder
Four versions: 100k and 300k Gaussians with plain colour, and all 1 million with simple or full view-dependent colour. Each is compressed to a web splat format, from 1.2 MB to 14 MB. A small manifest file lists them, like a video stream's.
Adapt while it plays
The player shows the smallest version first, measures how fast it arrived, and fetches the biggest next version that should arrive within about five seconds. Each one replaces the last when it's ready. The connection buttons slow the download down so you can watch it adapt.
Limits
This scene is static. Nokia's IBC 2026 demo streams moving splats with MPEG's new splat coding, which isn't publicly released; ours shows the same adaptive principle on one scene.
Each version replaces the previous one rather than adding to it, so a full upgrade downloads some Gaussians twice. An additive stream would be leaner.
The connection speeds are simulated in the page by pacing the download. Real networks also vary.