Pipeline autônomo que detecta partidas dentro da sua gravação de tela, identifica quem ganhou, e gera cortes prontos pra publicar. Roda 24/7 no Cloud Run. Custo: $0/mês no free tier.
O bruto chega ao R2 e desce a esteira sozinho. Cada etapa é independente, observável e tolerante a falha.
Upload do gameplay bruto pro R2.
replay com estado
recebido. O resto acontece sozinho.
cv2 segmenta. Gemini enriquece.
cortes-analyzer-job roda a cada hora,
baixa o bruto, extrai frames @ 1fps e detecta as partidas via
cv2.matchTemplate de 6 sinais visuais.
Pra cada partida segmentada, manda um recorte light (1080p, 5 Mbps) pro
Gemini 2.5 Flash que retorna nomes/coroas/narrativa em JSON.
ffmpeg final, 60s, MP4 faststart.
cortes-cutter pega cada partida
pendente_corte, corta os últimos 60s
via -ss / -t / -c copy, normaliza pra h264 baseline + AAC + faststart,
e sobe pro bucket cortes-prontos.
Estado vira cortada.
Admin Next.js, visualiza tudo.
Ainda manual. Vai automatizar.
analise_jsonb do Gemini, e fila de publicação multi-plataforma.
Nada de "popular". A melhor.
0 * * * * (1 bruto / hora)5 brutos processados em produção. Detector cv2 100% acertou os timestamps de cada partida. Análise visual final confirmou placares.
RDX assistiu o bruto inteiro e anotou as 2 partidas manualmente (Garcia 2×1 derrota em tempo extra; Francisco 3×0 vitória 3 coroas).
analise_jsonb (nome do oponente, modo de fim, jogada decisiva).