Skip to content

EyesOnPlay

Real-time sports video analysis from a single broadcast camera. Players, ball, events and a live TV-style mini view, for football and tennis. Open source.

Watches the video

Point it at a live stream (HLS, RTMP), a video URL or an upload. It finds the players and the ball in every frame, tracks them, and maps them onto the pitch or court as the camera pans.

Calls the events

Football: possession, passes, shots, ball out, corners. Tennis: serves, hits, bounces in or out, faults and who won the point. Every event is JSON with a confidence.

Shows it live

The dashboard plays the video with detections drawn on it, next to an animated TV-style mini pitch or court, with a live event feed, all over WebSocket.

Feeds your systems

An API-key protected feed streams matches and events to betting, media or club platforms in real time.

Tennis live page: broadcast with detections, mini court, events and JSON Football live page: broadcast with detections, calibrated mini pitch, events and JSON

Video ─▶ FFmpeg ─▶ detection (YOLO, TrackNet) ─▶ ball + player tracking ─▶ pitch/court calibration ─▶ event engine ─▶ Redis ─▶ API + WebSocket ─▶ dashboard and integration feed

One camera, no stadium installation. Calibration comes from the lines on the pitch or court, so it works on ordinary broadcast footage. Nothing is invented: when the camera shows a close-up, positions are marked unknown instead of guessed. Read more.