Saltar al contenido
Volver a la planta

Estudio de Video · AcademiaStudio

Estudio de Video: Un video que es una página.

Un motor que, cuando esté completo, convertirá un documento en un video formativo animado. Cada fotograma es una página Angular que se dibuja sola y se fotografía, y FFmpeg une las fotos en un MP4. El video es el guion: se corrige editando el guion, no el video.

AHDO

Motor de video para la plataforma de cursos AHDO · Sep 2026

Desde ceroPrototipo

Sinopsis

Qué es
Un motor para convertir un documento en un video formativo animado. Hoy es un prototipo: el render y la lectura de PDF y presentaciones ya funcionan; el guion con IA y la voz todavía no.
Para quién
Para AHDO, la plataforma de cursos del grupo. Serviría para llenar su catálogo y para hacer video formativo a partir de los manuales de cada empresa.
Cómo funciona
Cada escena es una página Angular que sabe dibujarse en cualquier fotograma. Playwright la fotografía cuadro a cuadro desde .NET y FFmpeg une las fotos en un MP4.

Arrastra el tiempo

Esta es la escena de prueba del motor, reconstruida aquí con sus mismas medidas y sus mismas curvas. No es una grabación: tú eliges el fotograma y la escena se calcula. Si subes de golpe, aparece el mismo fotograma exacto, sin transición.

Escena del motor en el fotograma 150: el antetítulo «Módulo 1 · Introducción», el título «Trabajo seguro en alturas» y una barra de progreso que marca 80 %.

fotograma 150 / 299 · 5.00 s
opacidad del títuloaparecer(frame, seg(0.6), seg(9.6))
1.00
altura del títulointerpolar(frame, [seg(0.6), seg(1.6)], [46, 0], rebote)
0.0 px
ancho de la barrainterpolar(frame, [seg(2.4), seg(6.0)], [0, 87])
79.5 %
número de la barraMath.round(anchoBarra)
80 %

El deslizador y las flechas recorren los 300 fotogramas.

Toma falsa: el número y la barra se separaron

En una versión de esta escena, la barra y su porcentaje tenían cada uno su curva. La barra iba en 30 % y el texto decía 39 %. Ahora el número sale del mismo valor que el ancho, redondeado para que no tiemble entre fotogramas. El botón «Ver el error» lo recrea: el número toma una curva lineal y la barra, la suave.

La tira de película

Así saldrá un video del motor, de punta a punta. Lo que ya funciona en la prueba de concepto va sólido; lo diseñado y todavía sin construir va en trazo de plano, punteado.

  • Funciona en la prueba de concepto
  • Diseñado, sin construir
Diagrama de la cadena del motor: un documento PDF o PPTX; un guion por escenas, diseñado; una plantilla Angular en un Chromium que se fotografía fotograma a fotograma; una cinta de fotogramas que entra a FFmpeg; y un MP4. La voz, las ilustraciones y la clase en AHDO están diseñadas, sin construir.
  1. Entra un documento

    Un PDF o una presentación. Un PDF no marca qué es un título: el motor lo deduce por el tamaño de la letra y agrupa las palabras en líneas.

    Funciona

  2. Un guion por escenas

    La IA escribirá un guion en JSON: cada escena con su tipo, su texto, su duración y su hash. Se valida contra un esquema antes de renderizar.

    Diseñado, sin construir

  3. Una página que se dibuja sola

    Cada escena es un componente Angular que calcula opacidad, posición y ancho a partir del número de fotograma. Playwright la abre en un Chromium sin ventana.

    Funciona Las ilustraciones por escena están diseñadas, sin construir.

  4. Una foto por fotograma

    Playwright pide el fotograma 0, toma la foto, pide el 1, y así. En la prueba salieron 300 fotos de 1280 × 720, a unos 100 ms cada una.

    Funciona

  5. FFmpeg une las fotos

    FFmpeg pega las fotos en un MP4. El ensamblador ya acepta una pista de audio.

    Funciona La voz narrada está diseñada, sin construir.

  6. Sale el video

    La prueba dio 10 segundos de video en unos 30 segundos de render.

    Funciona Publicarlo como clase de un curso en AHDO es hoja de ruta.

El guion manda

En este motor el video no es el archivo: es el guion. El MP4 se deriva de él, como un programa se compila. El plan es que, para corregir una frase, se edite el guion y se vuelva a renderizar solo la escena que cambió.

Hay dos clases de cambio. «Este video tiene un error» se arregla en el guion y toca un video. «Así se ve mal siempre» se arregla en la plantilla y toca todos.

Esta parte es arquitectura diseñada, todavía sin construir: la caché por escena no existe aún. La demostración de abajo simula el plan en el navegador, con un guion de datos ficticios.

El guion de ejemplo, con datos ficticios, se carga al llegar aquí.

Tomas falsas

Dos fallas silenciosas de este tipo de motor: el video sale mal y ningún error lo avisa. Aquí se recrean en simulación, y se cuenta cómo el motor las evita con reglas y con una prueba.

La foto que sale con el fotograma de antes

Si la foto se toma justo después de cambiar el estado, sale el fotograma anterior porque el navegador todavía no ha repintado, y ningún error lo avisa.

Cómo lo evita el motor. Cada salto de fotograma espera dos cuadros del navegador antes de resolverse: el primero corre antes del repintado y el segundo después.

Los fotogramas en blanco

Si se fotografía antes de que carguen las fuentes, los primeros fotogramas salen en blanco y nada falla.

Cómo lo evita el motor. La plantilla solo avisa que está lista cuando cargaron fuentes e imágenes, y una prueba automática falla si el video sale sospechosamente liviano.

Créditos

Quién hizo qué, como al final de una película.

Estudio de Video AcademiaStudio, para AHDO

Desde ceroPrototipo
Idea y arquitectura
Sicer Brito
Plan técnico
Sicer Brito
Motor de render y plantilla Angular
Sicer Brito
Lectura de PDF y presentaciones
Sicer Brito

2 de 2 commits. Único autor, septiembre de 2026.

Lo diseñé desde cero y validé el render con una prueba de concepto: 300 fotogramas que se vuelven 10 segundos de video. La lectura de PDF y presentaciones ya está escrita y con pruebas. El guion con IA, la voz y la integración con la plataforma siguen en la hoja de ruta.

Reparto

  • .NET 8Orquesta el render
  • PlaywrightFotografía cada fotograma
  • FFmpegUne las fotos en un MP4
  • Angular 17Dibuja cada escena
  • TypeScriptLas curvas del movimiento
  • PdfPigLee los PDF
  • Open XMLLee las presentaciones
  • xUnitLa prueba de humo del render

Ficha técnica

fotogramas en la prueba de render
300repositorio, sep 2026
por fotograma
~100 msprueba de render, sep 2026
licencias de render
0arquitectura propia, sep 2026

Escenas sin rodar

No está en producción. El guion con IA, la narración, las ilustraciones y la caché por escena están diseñados, no construidos. Tampoco hay usuarios ni videos publicados: es una prueba de concepto.

  1. Guion con IA

    La IA escribirá el guion por partes: primero el esquema del video y después cada escena.

  2. Narración

    Una voz con la marca de tiempo de cada palabra, para que el texto entre justo cuando se dice.

  3. Ilustraciones

    Una imagen por escena que, una vez aprobada, queda fija en el guion y no se vuelve a generar.

  4. Caché por escena

    Cada escena guardada por su hash: corregir una frase no obliga a renderizar el video entero.

  5. Integración con AHDO

    Pantallas en la plataforma para pedir un video y publicarlo como clase de un curso.