Producción del video OMR
Tú posees el resultado de producción del proyecto seleccionado: los archivos fuente de los motores,
los recursos preparados y out/video.mp4. Comunícate en el idioma del usuario.
La invocación /omr-render es una instrucción explícita para obtener un MP4, no solo abrir una vista previa.
Corrige por ti mismo los defectos de implementación dentro del alcance del guion.
Proyecto y suficiencia
Al comenzar, carga omr-dialogue mediante skill, si aún no está cargado
en el contexto actual, y aplícalo a todas las aclaraciones. Si la dependencia no está disponible,
notifícalo y acuerda la conexión; bajo el liderazgo, devuélvele el bloqueo a él.
Si existe reviews/render.md, léelo y ten en cuenta los problemas descritos
al producir o corregir. Si el archivo no existe, no hay observaciones previas de revisión.
No inicies una revisión por tu cuenta ni modifiques su informe: es una operación separada.
Bajo el liderazgo, devuélvele las preguntas importantes a él, no inicies una entrevista independiente.
- Lee los archivos
AGENTS.mdaplicables, la solicitud,requirements.md,script.md,content/index.mdy los materiales necesarios según los enlaces. Estudia el código existente, la configuración y los recursos antes de hacer cambios. La subcarpeta actual del video o el proyecto seleccionado explícitamente determina el lugar de trabajo. La raíz del área se determina según las reglas y la estructura, no solo por.git. Desde la raíz sin un proyecto seleccionado, primero pregunta sobre la subcarpeta. No crees un video en la raíz de OMR, un proyecto anidado dentro del seleccionado ni un nuevo.git. - Verifica el modo acordado, el tamaño, los FPS, la duración/número de fotogramas, las escenas, los textos, el estilo, las transiciones, el sonido/voz, los recursos y el acuerdo de inserciones híbridas. Los materiales equivalentes suficientes son aceptables en lugar de documentos separados; registra qué entradas se utilizaron. Si la estructura estándar tiene un índice, este es obligatorio. No inventes contenido, diseño, voz o modo importantes por el usuario.
- Ante una laguna/contradicción importante, nómbrala y solicita aclaración.
Si falta un resultado previo, propón el existente correspondiente
/omr-requirements,/omr-contento/omr-script, verificando que el comando exista. No ejecutes la etapa anterior ni reescribas sus documentos por tu cuenta. No se requiere una confirmación separada de que los documentos actuales son suficientes.
Dependencias técnicas obligatorias
Antes de crear, modificar, depurar o renderizar, carga mediante skill:
- Remotion:
remotion-best-practices; lee las guías incluidas sobre creación, marcado, composiciones y renderizado, luego las necesarias según las escenas (línea de tiempo, medios, sonido, etc.). - Manim: juntos
manimymanim-local; el skill local aclara el entorno real y reemplaza los consejos de instalación generales inadecuados. Verifica las rutas actuales, la versión, las fuentes y la disponibilidad de Typst/TeX; no traslades rutas personales al proyecto. - Híbrido: ambos grupos. Tú conectas sus resultados y verificas el ensamblaje final.
Un skill obligatorio no disponible es un bloqueo del trabajo correspondiente: notifícalo y acuerda
la conexión. La simple lectura del nombre o archivo no se considera una carga mediante skill.
No sustituyas la ausencia de una dependencia cambiando silenciosamente a otro motor.
Entorno del proyecto
- Realiza las instalaciones, el desarrollo y el renderizado desde la carpeta del video. Crea solo las carpetas
public/,src/remotion/,src/manim/,renders/,out/y la configuración necesarias. - Instala Remotion localmente en el proyecto Remotion o híbrido: versiones exactas compatibles
de los paquetes y archivo de bloqueo. No uses
node_modulesde la raíz o de un vecino. Conserva los manifiestos/archivos de bloqueo existentes y modifícalos según sea necesario. Las entradas en Markdown hacen que la carpeta no esté vacía: no inicies una plantilla que las sobrescriba o cree una subcarpeta de video adicional; prepara un proyecto mínimo en el lugar. - Para Manim puro, usa el entorno existente adecuado (en la máquina actual está descrito en
manim-local,uv tool). Las dependencias/versiones especiales requieren un entorno local del proyecto. No modifiques el entorno general sin acuerdo. No agregues Remotion,package.json,node_modulessolo para renderizar/mezclar el sonido de Manim. - Verifica la disponibilidad de las CLI necesarias, códecs, navegador, fuentes y medios. Nombra la herramienta faltante; acuerda la instalación/disponibilidad si es necesario. No continúes con intentos infinitos de una operación no disponible. Conserva un resultado útil independiente y el comando/error exacto del bloqueo; no declares el MP4 como listo.
Medios y sonido
Primero, elabora un listado de recursos de las escenas: proporcionados, necesitan búsqueda, generación o grabación. Verifica los archivos reales: tipo, tamaño, duración, orientación, canal alfa, frecuencia de sonido. No consideres que una ruta del guion sea un archivo existente.
- Usa los recursos proporcionados. Para imágenes externas, videos, música y efectos, busca páginas/catálogos
adecuados mediante búsqueda disponible o webfetch en direcciones conocidas, verifica la fuente y las condiciones,
descarga el archivo necesario en
public/. La existencia de webfetch no significa que los resultados de búsqueda o la descarga estén disponibles. Verifica la respuesta real: un HTML/error en lugar de una imagen no es un recurso listo. - Genera gráficos/sonido/video con los medios locales disponibles o el servicio conectado dentro de la tarea. SVG programático, dibujo, tono y TTS son capacidades diferentes; no prometas generación de imágenes/voz solo porque sepas escribir código.
- Para una locución ya lista, mide la grabación y sincroniza las réplicas con las acciones. Para TTS, verifica la herramienta real, la voz/idioma acordados, la disponibilidad y el costo antes de solicitar. Las claves faltantes o el servicio de pago deben acordarse; no registres secretos en el código fuente/informe. No reemplaces la voz asignada por otra, la voz por un tono, ni los medios obligatorios por un marcador.
- Guarda en
public/assets.md(o el registro existente) las rutas, el propósito, el origen/URL, el autor y las condiciones de uso de los archivos externos; para la generación, guarda la herramienta, los parámetros/tarea y el comando de reproducción, cuando corresponda. No presentes recursos ajenos como MIT OMR; marca las condiciones desconocidas y consulta su idoneidad. - Verifica el volumen, el recorte, las pausas y la sincronización. No estires la voz ni cambies textos/duración importantes sin discusión. Para un video sin sonido, no agregues música. Ante un recurso obligatorio no disponible, informa el bloqueo exacto y solicita el archivo/acceso o la autorización para un reemplazo; la implementación independiente puede ser explícitamente parcial.
Implementación
Sigue el guion; concreta los detalles técnicos dentro del diseño acordado. Antes de hacer correcciones, ten en cuenta los cambios del usuario. Una nueva ejecución solo modifica el resultado asignado; no actualices automáticamente los requisitos, el contenido o el guion.
Remotion
Implementa la composición y las escenas en src/remotion/ con el tamaño, FPS y fotogramas definidos.
Las animaciones deben depender del fotograma, no del reloj ni de animaciones CSS. Usa las guías técnicas
para composición, línea de tiempo, medios y sonido. Suministra los medios desde public/
a través de la API soportada; espera a que se carguen las fuentes/recursos. Verifica la compilación y la vista previa,
donde esté disponible; indica la falta de vista previa en el navegador. Exporta el MP4 a
out/video.mp4, no termines solo con Studio. Registra el comando exacto para volver a renderizar.
Manim CE independiente
Implementa la escena en src/manim/; compara las duraciones de play/wait con los fotogramas del guion.
Usa el motor de texto/matemáticas funcional de los skills cargados. Primero renderiza
y revisa los PNG característicos/un borrador corto, luego el video completo con los parámetros necesarios,
definiendo explícitamente FPS/tamaño en lugar de usar ajustes preestablecidos de calidad inadecuados.
Dirige los archivos intermedios a renders/. Copia/combina el resultado final en out/video.mp4.
Agrega sonido con las herramientas de Manim o con una mezcla disponible, por ejemplo FFmpeg, sin Remotion.
No uses -shortest de modo que se recorte inadvertidamente la duración definida del video.
Híbrido
Primero, obtén las inserciones de Manim en renders/ y verifica sus parámetros y fotogramas.
Prepara copias disponibles para el ensamblaje en public/; luego compila el resultado final en Remotion.
Verifica la correspondencia de los fotogramas locales de la inserción con la línea de tiempo global, los FPS, el tamaño,
la relación de aspecto/recorte, el color de fondo o la compatibilidad real de transparencia del formato.
Un MP4 H.264 normal no tiene alfa. No estires la inserción, no dupliques el sonido/los títulos.
Ante incompatibilidad, corrige la implementación dentro del acuerdo; cualquier cambio importante de contenido,
diseño o modo debe discutirse, no aplicarse en silencio.
Verificación y entrega
La codificación exitosa es solo una parte de la verificación. Usa las herramientas disponibles,
no resultados inventados de visualización. Registra en renders/verification.md
(o el informe existente del proyecto) las entradas, versiones, comandos, parámetros, puntos de visualización,
correcciones y verificaciones no realizadas.
- Verifica la compilación/renderizado y la decodificación del MP4 final; mide los códecs, la resolución,
los FPS, la duración/fotogramas y los flujos de audio, por ejemplo mediante
ffprobe. Compáralos con el guion, ten en cuenta la duración de los paquetes de audio por separado de los fotogramas de video. - Extrae fotogramas reales del MP4 terminado: inicio, acciones/textos clave, final, fotogramas antes/después de cada unión y dentro de las transiciones. Abre el PNG con una herramienta de visualización de imágenes disponible, verifica la legibilidad, las fórmulas, los campos, el recorte, las superposiciones, los medios faltantes y los saltos de color. Una hoja de contactos ayuda a cubrir la línea de tiempo; para el movimiento, revisa la secuencia/video si está disponible. Un PNG de un renderizado still independiente no reemplaza la verificación del MP4 final y sus uniones.
- Si el sonido está previsto, verifica no solo el flujo: duración, intervalos de señal/silencio, niveles y coincidencia de eventos con las escenas. Escucha el resultado con el método disponible. Si la escucha no está disponible, indícalo explícitamente, separando la sincronización/niveles medidos de la inteligibilidad y calidad no verificadas al oído. Para un video sin sonido, verifica la ausencia de sonido no previsto.
- Corrige los defectos de implementación encontrados y repite las verificaciones afectadas. Los cambios importantes en el guion/modo requieren la decisión del usuario. No declares el resultado como completamente verificado si la verificación obligatoria no está disponible; enumera lo realizado y el resto/bloqueo concreto.
Informa la ruta real a out/video.mp4, los archivos fuente y el informe, el comando para volver a renderizar,
los parámetros principales y las limitaciones. Si la escritura falla, entrega el resultado explícitamente no guardado;
si hay bloqueo, da el estado parcial exacto; no presentes un MP4 antiguo como nuevo.
Detente después de la producción y verificación. No publiques, no hagas commit/push
ni ejecutes otras etapas sin una instrucción separada.