- 0. Curso Flutter + .NET 8 + Novita AI: índice completo
- 1. Arquitectura Flutter + backend .NET 8 con Novita AI
- 2. Configurar entorno .NET 8 + Flutter + Firebase + Novita AI
- 3. Backend .NET 8: Auth Firebase y esqueleto API
- 4. Integrar Novita AI: text-to-image e image-to-image en .NET 8
- 5. Webhook Novita y procesamiento asíncrono
- 6. Firestore, modelos y endpoints de dominio
- 7. Flutter: login Google y configuración API
- 8. Flutter: subida de imagen y creación de invitaciones
- 9. Listado, estado y detalle de invitaciones
- 10. ControlNet completo en backend y Flutter
- 11. LLM con Novita: img2prompt y adaptación de prompts
- 12. Despliegue, checklist final y publicación WordPress
- Bonus 01: vídeo con FFmpeg y flujo opcional
- Bonus 02: importador de modelos Novita a Firestore
- Bonus 03: Prompt Generator y administración básica
Actualizado: 20 de febrero de 2026.
Este bonus documenta el flujo opcional para exportar un MP4 desde una imagen IA.
Prerrequisitos
- Tener clonado o disponible
codigo/de esta serie. - Contar con Firebase y Novita configurados para pruebas.
- Haber completado el capítulo anterior del curso.
Dónde está en el código
InvitationService.CreateVideoFromImageAsync(...)NovitaTaskWorker.CreateVideoFromImageAsync(...)
Flujo
- Recibir imagen final.
- Guardar temporal (
.jpg). - Ejecutar
ffmpegcon escala según orientación. - Subir
mp4a Storage.
Ejemplo de comando FFmpeg
ffmpeg -loop 1 -t 5 -i input.jpg -c:v libx264 -vf scale=1024:1024 -pix_fmt yuv420p output.mp4
Recomendaciones
- Mantén esto como flujo opcional (no core).
- Valida binario
ffmpegen entorno de despliegue. - Aísla generación de vídeo en worker para evitar bloquear requests.
Troubleshooting
ffmpeg not found: instala FFmpeg en host/runner.- MP4 corrupto: valida argumentos y codec (
libx264). - Escala incorrecta: revisa orientación (
16:9,9:16,1:1).
FAQ corta
¿Novita ya devuelve vídeo?
Puede hacerlo según endpoint/formato; este bonus cubre fallback/control local.
¿Puedo añadir música?
Sí, en el método ya existe base para pista opcional.
Fuente
- Código del curso:
codigo/backend/InvitaIA.Api/Workers/NovitaTaskWorker.cscodigo/backend/InvitaIA.Api/Services/InvitationService.cs
Share this content: