Control de calidad de audio en directo
Control de calidad de audio en directo para un equipo de operaciones de medios · Desarrollo desde cero, en solitario, del diseño al despliegue
Actualizado
Antes
El personal revisaba a mano el audio de comentarios, así que un fallo podía llegar a los espectadores.
Después
1 hora
de lecturas conservadas en el sitio durante una caída de red y reenviadas una sola vez; sonoridad medida según la norma EBU.
- 1Sistema:Sede
Envía el audio de los comentarios por muchos canales.
- 2Sistema:Agente local
Mide cada canal según las normas de sonoridad de la EBU.
- 3Sistema:Agente local
Guarda las lecturas en disco y las reenvía tras una caída de red.
- 4Sistema:Servicio en la nube
Lanza una alerta cuando un fallo dura lo suficiente.
- 5Persona:Operador
Ve alertas e incidentes en la consola web.
Siempre activo
- La nube ignora las lecturas duplicadas, así que una repetición nunca cuenta dos veces.
Problema
El personal supervisaba a mano el audio de los comentarios. Un fallo no detectado podía acarrear quejas de los espectadores, multas regulatorias y daños a la reputación.
Diagnóstico
Las alertas solo ayudan si son completas y discretas. Las caídas de red perderían lecturas y los detectores inestables inundarían a los operadores de falsas alarmas.
Opciones que valoré
Se cae el enlace con la nube. ¿Cómo se evita perder alguna lectura?
Elegida
Guardar las lecturas en el disco local y reenviarlas; la nube ignora los duplicados
Una hora de lecturas y un día de eventos sobreviven a una caída, y una repetición nunca cuenta dos veces. Coste: más piezas móviles en el equipo local.
Descartada
Guardar las lecturas en memoria y descartar las más antiguas al llenarse
Pierde datos durante una caída, justo cuando más importan.
Un detector se activa y se desactiva. ¿Cuándo salta una alerta?
Elegida
Solo cuando un fallo dura un tiempo mínimo, y después un periodo de espera
Un único canal inestable no puede inundar a los operadores.
Descartada
Alertar en cada cambio
Un único canal inestable entierra a los operadores en falsas alarmas.
Solución
Un agente local mide cada canal y envía las lecturas a un servicio en la nube. Los operadores tienen una consola web con proyectos, umbrales y alertas.
- Agente local
- Python
- EBU R128 loudness
- ONNX Runtime
- PyTorch
- SpeechBrain
- Windows build
- API en la nube
- FastAPI
- SQLAlchemy
- Alembic
- PDF reports
- Datos
- TimescaleDB
- PostgreSQL 17
- Consola del operador
- Next.js
- React
- TanStack Query
- WebSockets
- uPlot
- Zustand
- Calidad y entrega
- Docker Compose
- GitHub Actions
- uv
- Ruff
- mypy
- pytest
- Playwright
- axe
Servicios relacionados
Cifras: Ajustes del búfer del agente