How on-device analysis works

Last updated:

Yes. BallSpeed runs analysis entirely on your phone by default: the video never leaves your device, and only the result data (speed, confidence, trajectory, first frame) is sent to the server — and only with your consent.

How is that possible?

The image-processing code (OpenCV.js, WebAssembly) runs in your browser, inside a Web Worker. The video is decoded frame by frame using modern browsers’ WebCodecs, so the interface doesn’t freeze.

When does it fall back to the server?

If your device lacks WebCodecs or WASM SIMD, or analysis would be too slow, you’re asked for explicit consent: “Analyze on the server?” If you accept, the video is uploaded temporarily, all metadata is stripped, it’s deleted the moment analysis finishes, and it’s never stored. If you decline, analysis continues on your device.

Does it work offline?

Yes. After first use the analysis engine is cached in your browser; the home, history, profile and the analysis itself work offline. Measurements made offline are queued and sync automatically when you reconnect.

Privacy details: Account, data & privacy.

Was this article helpful?

Related articles