Glorious Gandalf sax — now NTP-synced to millisecond precision. Every device on every platform plays the exact same frame at the same time.
Features
- NTP time sync — all devices play the same frame at the same time (millisecond precision)
- Perfect seamless loop
- Native first-party implementations per platform
- Firebase Analytics + Crashlytics (mobile)
- Hardware-accelerated video playback
Supported Platforms
| Platform | Stack | Video Engine | | -------- | ------------------------ | ------------------ | | Android | Kotlin + Jetpack Compose | Media3 / ExoPlayer | | iOS | Swift + SwiftUI | AVPlayer | | macOS | Swift + SwiftUI | AVPlayer | | Windows | Rust + egui | libmpv | | Linux | Rust + egui | libmpv |
How Time Sync Works
Every device computes: seekPosition = (correctedTime % videoDuration) + buffer
Where correctedTime = deviceTime + ntpOffset. NTP offset is computed by querying 4 time servers and taking the median. Re-syncs every 60 seconds.