A Python application for visualizing Formula 1 race telemetry and replaying race events with interactive controls and a graphical interface.
HUGE NEWS: The telemetry stream feature is now in a usable state. See the telemetry demo documentation for access instructions, data format details, and usage ideas.
- Race Replay Visualization: Watch the race unfold with real-time driver positions on a rendered track.
- Safety Car Visualization: See the Safety Car deploy from pit lane, lead the field, and return to pits — with animated transitions and pulsing glow effects.
- Insights Menu: Floating menu for quick access to telemetry analysis tools (launches automatically with replay).
- Leaderboard: See live driver positions and current tyre compounds.
- Lap & Time Display: Track the current lap and total race time.
- Driver Status: Drivers who retire or go out are marked as "OUT" on the leaderboard.
- Interactive Controls: Pause, rewind, fast forward, and adjust playback speed using on-screen buttons or keyboard shortcuts.
- Legend: On-screen legend explains all controls.
- Driver Telemetry Insights: View speed, gear, DRS status, and current lap for selected drivers when selected on the leaderboard.
- Pause/Resume: SPACE or Pause button
- Rewind/Fast Forward: ← / → or Rewind/Fast Forward buttons
- Playback Speed: ↑ / ↓ or Speed button (cycles through 0.5x, 1x, 2x, 4x)
- Set Speed Directly: Keys 1–4
- Restart: R to restart replay
- Toggle DRS Zone: D to hide/show DRS Zone
- Toggle Progress Bar: B to hide/show progress bar
- Toggle Driver Names: L to hide/show driver names on track
- Select driver/drivers: Click to select driver or shift click to select multiple drivers
The replay includes a simulated Safety Car that appears on track whenever the F1 data indicates a Safety Car deployment (track status code 4). Since the F1 API does not provide GPS telemetry for the actual Safety Car, its position is simulated based on the race leader's position.
