SaaS de Streaming Deportivo

Tu Repe

Plataforma que graba partidos automáticamente desde cámaras deportivas y permite a los jugadores verlos online.

ReactExpressTypeScriptMySQLJestBackblaze B2
Tu Repe - Vista principal

Descripción General

Las cámaras instaladas en los complejos deportivos graban partidos continuamente desde que el club abre hasta que cierra. El sistema guarda automáticamente el stream de video en fragmentos de 15 minutos.

Cuando los jugadores quieren ver su partido, seleccionan la cancha, fecha y hora de inicio. El sistema usa un atributo de configuración del club llamado "appointmentDuration" para determinar cuándo terminó el partido, y recupera todos los fragmentos de video grabados durante ese rango de tiempo.

Características Principales

Stack Tecnológico

Frontend

  • React
  • TypeScript

Backend

  • Node.js
  • Express

Base de Datos

  • MySQL

Infraestructura

  • Linux VPS
  • Backblaze B2

Testing

  • Jest

Arquitectura del Sistema

Las cámaras deportivas envían un stream de video continuo al servidor backend. El backend procesa y almacena el video en segmentos de 15 minutos. Los metadatos sobre las grabaciones se guardan en MySQL. Cuando un usuario busca un partido, la API calcula el rango de tiempo correcto y devuelve los segmentos de video correspondientes almacenados en Backblaze.

Desafíos Técnicos

Gestión de grabación continua de video

Implementación de un sistema que procesa streams de video continuos de múltiples cámaras y los segmenta eficientemente en fragmentos de 15 minutos para almacenamiento y recuperación optimizados.

Integración con almacenamiento en la nube

Diseño de una arquitectura que maneja archivos de video grandes usando Backblaze B2, implementando uploads multipart y URLs firmadas para streaming seguro.

Recuperación inteligente de partidos

Desarrollo de un algoritmo que calcula el rango de tiempo correcto basado en la duración de citas configurada y recupera los fragmentos de video correspondientes.

Capturas de Pantalla