Satélite de la NASA, alertas del INMET por municipio y pronóstico en cuadrícula, animados en un mapa 3D, con cada número apareciendo en el momento en que se dice.

eventosextremospub es un conjunto de scripts que convierte una alerta de tiempo severo en un video corto vertical (Reels, Shorts, TikTok). Descarga los datos de fuentes públicas: alertas del INMET con la lista de municipios, imágenes del satélite GOES-19 a través de la NASA y pronóstico de lluvia y viento de Open-Meteo. Después lo anima todo en un mapa 3D del sur de Brasil, con narración y subtítulos palabra por palabra. Es para quien produce contenido sobre clima y quiere números verificados, con la fuente en pantalla, en lugar de volver a publicar capturas de sitios web. Requiere una computadora con tarjeta de video, Node con Playwright, Python, ffmpeg y, para la voz, el proyecto cardshorts.
Nació de un video de alerta roja en el sur de Brasil (09/10/2026). La investigación, el motor del mapa y el montaje se convirtieron en scripts para repetirlo en cualquier evento.
Recolección automática del INMET, la NASA y Open-Meteo, más una lista de fuentes verificadas. Lo que ya ocurrió queda separado de lo que es pronóstico.
Municipios coloreados según el nivel de alerta, timelapse de la tormenta en infrarrojo, viento en movimiento, columnas 3D de lluvia y ráfagas, contadores.
El presentador entra desde el estudio de HeyGen, en el mismo formato 9:16 de explicavideos, y el mapa acompaña lo que dice.
El mapa es una página HTML con deck.gl. Chrome sin ventana captura un cuadro a la vez con la GPU (cerca de 0,1 s por cuadro), y ffmpeg lo une con la voz y la música.
Cada municipio coloreado según el aviso del INMET (amarillo, naranja, rojo), día a día.
GOES-19 en color real como fondo y el infrarrojo de la cima de las nubes en timelapse, con reloj.
Lluvia acumulada de 7 días en columnas y viento pronosticado en partículas animadas.
Apertura con fecha y el número más fuerte, panel con contador, fuente en pantalla y subtítulos de colores.
Las fuentes de datos son gratuitas y no piden clave. La versión gratuita de Open-Meteo limita las llamadas por minuto, y el script ya espera cuando eso ocurre.
Node con Playwright, Chrome con Vulkan (tarjeta de video) y ffmpeg.
npm i -g playwright npx playwright install chromium
Municipios del IBGE, estados, países y ríos (Natural Earth), descargados una sola vez.
geo/baixar.sh python3 motor/prep_geo.py
Narración con voz clonada mediante cardshorts (Chatterbox y Whisper locales) o con el avatar de HeyGen.
git clone https://github.com/inematds/cardshorts
Cada video es una carpeta en edicoes/, con la investigación, los textos hablados y los datos de ese día.
Lista cada aviso activo del INMET con cuántos municipios abarca en cada estado.
git clone https://github.com/inematds/eventosextremospub && cd eventosextremospub E=edicoes/2026-10-09-alerta-sul python3 coleta/inmet_avisos.py $E # 56007 Tempestade Grande Perigo 2026-10-09 00:01 → 23:59 529 municípios
La base en color real y la secuencia del infrarrojo para el timelapse. Horas en UTC.
python3 coleta/satelite_gibs.py $E --base 2026-10-08T18:00 \
--de 2026-10-08T12:00 --ate 2026-10-09T05:00 --passo 20
Lluvia de 7 días en una cuadrícula de 0,5° y viento hora por hora del día elegido.
python3 coleta/openmeteo.py $E --dia 2026-10-09 # prev7: 204 pontos · máx (204, [-53.5, -25.5]) · >100 mm em 78
En base.md, cada número con fuente y horario, separando lo que ocurrió de lo que es pronóstico. En falas.json, el texto hablado, corto y directo. La apertura lleva la fecha y el número más fuerte que tenga fuente.
[{"id": "f1", "fala": "Alerta vermelho no Sul. Hoje, sexta, quinhentas e vinte e nove cidades..."},
{"id": "f2", "fala": "Rio Grande do Sul, trezentas e quinze..."}]
La narración se verifica por transcripción. gerar_cena.py ata cada animación a la palabra dicha (el contador sube cuando se pronuncia el número).
python3 $E/narrar.py # → narracao.wav + tempos.json python3 $E/gerar_cena.py # → cena.js
Mira algunos cuadros antes del render completo. El cuadro 0 tiene que abrir lleno.
node motor/render.mjs $E --quadros 0,18,30,47 motor/montar.sh $E $E/video.mp4
Primera edición: 529 ciudades en alerta roja en RS, SC y PR, sin avatar. Los primeros 32 segundos:
| En pantalla | Fuente |
|---|---|
| 529 ciudades en rojo (RS 315, SC 128, PR 86) | INMET, aviso 56007 |
| Ráfaga de 109 km/h en Maçambará, 16 casas sin techo en Chapecó | MetSul, Epagri/Ciram, 08/10 |
| 113 mm en São Borja en un día | MetSul, 08/10 |
| Tormenta avanzando del jueves 9h al viernes 1h40 | GOES-19 (NOAA) vía NASA GIBS |
| Mapa de viernes a lunes | INMET, avisos 56004, 55993, 55997 |
| Hasta 204 mm en 7 días en el suroeste de PR | Open-Meteo |
La primera edición validó el motor y la recolección. Próximos pasos: