El portal media.upv.es es el repositorio central de material multimedia de la Universidad Politécnica de Valencia. El proyecto surgió debido a la necesidad de catalogar y publicar la cantidad cada vez más grande de recursos multimedia producidos por la Universidad en su servicio de grabación de lecciones en estudio.
Descripción
Se trata del proyecto más longevo que he realizado. Es un proyecto full stack, implementado con Node.js en la parte del backend y con AngularJS en la parte del frontend. Cabe destacar que el frontend nunca fue actualizado a la versión actual de Angular, por lo que actualmente sigue utilizando AngularJS 1.x.
A nivel de frontend, el proyecto es muy sencillo: consta de una página principal, una página de resultados de búsqueda y una página de visualización de un vídeo. Si el usuario ha iniciado sesión, hay una página donde tiene acceso a algunas opciones de administración de sus canales y vídeos.
El backend está implementado como un API REST. La comunicación con el frontend se realiza íntegramente a nivel del API. Si el frontend no ha sido actualizado en cuanto a tecnología, el backend si que ha recibido varias actualizaciones, para soportar versiones más nuevas de Node.js. Está implementado con Express, y la base de datos principal es MongoDB.
Por otra parte, este proyecto tiene también una capa de automatización de tareas, que se utiliza para programar operaciones de forma automática sobre el repositorio de recursos multimedia. El sistema de planificación de tareas está implementado con lenguaje Ruby, aunque las tareas soportan cualquier tecnología que sea ejecutable a través de línea de comandos. La mayor parte de las tareas están implementadas en lenguaje Python, aunque también hay algunas hechas con Ruby y C++.
Destacado
El portal de vídeos media.upv.es no destaca especialmente por ninguna de las tecnologías que utiliza, ya que actualmente existen frameworks que permitirían implementar un portal similar con menos esfuerzo.
No obstante, cabe destacar el bajo nivel de acoplamiento existente entre las distintas capas del portal. Sus tres capas principales: frontend, backend y planificador de tareas, son completamente independientes. La comunicación entre frontend y backend se realiza con API REST, pero por lo demás están completamente desacoplados. Esto ha posibilitado varias actualizaciones del backend que no habrían sido posibles sin modificar el frontend.
La comunicación entre el backend y el planificador de tareas se realiza a través de la base de datos MongoDB. Aunque el sistema de planificación de tareas no se ha sustituido en todo este tiempo, sería relativamente sencillo hacerlo: podría utilizarse cualquier tecnología que sea capaz de conectar con una base de datos MongoDB.
En definitiva, este portal ha resultado ser lo bastante flexible como para introducir tecnologías actuales, entre las cuales destacan:
- Subtítulos y transcripciones
- Traducciones
- Imagen de miniatura
- Fotogramas clave de la presentación
- Resumen del vídeo mediante IA
Disponibilidad
El portal de vídeos media.upv.es es un proyecto interno de la Universidad Politécnica de Valencia que no está disponible para el público, y aunque lo estuviera, seguramente no sería muy útil, ya que se desarrolló a medida de las necesidades de la institución.
Puede visitarse en la URL: