Video a MP3 con FastAPI y microservicios

Plataforma de conversión de video a MP3 con FastAPI y microservicios: autenticación JWT, subida segura, procesamiento asíncrono con FFmpeg y notificaciones, escalable.

7 sept 2025 • 5 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Video a MP3 con FastAPI y microservicios es una plataforma moderna y escalable para convertir videos a MP3, con autenticación de usuarios, subida y gestión segura de archivos, conversión asíncrona y notificaciones por correo. Desarrollada siguiendo buenas prácticas de software a medida y arquitectura de microservicios, ideal para proyectos que requieren alto rendimiento y crecimiento horizontal. En Q2BSTUDIO somos especialistas en aplicaciones a medida, inteligencia artificial, ciberseguridad, servicios cloud AWS y Azure, inteligencia de negocio y automatización. Si buscas un partner tecnológico para crear tu solución de principio a fin, descubre nuestro enfoque de software a medida y aplicaciones a medida.

Arquitectura. La solución se compone de servicios independientes: Gateway en el puerto 8000 para enrutamiento y control de entrada, Auth Service en el puerto 5000 para registro, inicio de sesión y verificación con JWT, Media Service en el puerto 7000 para subida, almacenamiento con GridFS y descarga, Convertor Service en el puerto 4000 para conversión de video a MP3 con FFmpeg, Notification Service en el puerto 6000 para correos transaccionales, RabbitMQ como broker de mensajería para comunicación asíncrona, MongoDB para almacenamiento de archivos y PostgreSQL para datos de usuarios. Incluye paneles de administración con RabbitMQ Management en el puerto 15672 y Mongo Express en el puerto 8081.

Principales funcionalidades. Autenticación con JWT y registro e inicio de sesión; subida segura de video con validación y almacenamiento en GridFS; conversión asíncrona de video a MP3 mediante FFmpeg; notificaciones por correo de bienvenida y finalización de conversión; gateway centralizado para enrutar las peticiones; comunicación desacoplada con colas de mensajes; separación de datos en PostgreSQL para usuarios y MongoDB para ficheros.

Pila tecnológica. Backend con FastAPI, Python 3.13, SQLModel y Pydantic. Bases de datos con PostgreSQL 17 y MongoDB 6.0. Mensajería con RabbitMQ 3.12. Procesamiento multimedia con FFmpeg. Correo con FastAPI Mail. Infraestructura con Docker, Docker Compose y Uvicorn.

Estructura del proyecto. Servicios desacoplados por dominio: Auth con rutas, esquemas, utilidades de JWT y hashing, y configuración de base de datos; Media con rutas de subida y descarga, servicio de archivos y middleware de autenticación; Convertor con consumidor RabbitMQ y lógica de transformación a MP3; Notification con consumidores para usuarios y conversiones y configuración de correo; Gateway como proxy unificado de entrada.

Puesta en marcha rápida. Requisitos previos: Docker, Docker Compose y Git. Instalación: clonar el repositorio con git clone y acceder al directorio del proyecto. Arranque de servicios: docker compose con archivo de desarrollo usando el comando docker compose -f docker-compose.dev.yml up --build. Acceso: Gateway en https://localhost:8000, Auth en https://localhost:5000, Media en https://localhost:7000, RabbitMQ Management en https://localhost:15672 y Mongo Express en https://localhost:8081.

Documentación de la API. Autenticación: registro en POST a la ruta auth sign-up, inicio de sesión en POST a auth sign-in y verificación de token en GET a auth verify con cabecera Authorization Bearer token. Media: subida de video en POST a media upload con multipart form data y cabecera de autorización, descarga del MP3 en GET a media download con el identificador del archivo y cabecera de autorización. Las respuestas y peticiones usan JSON y el control de errores estándar de FastAPI.

Flujo de trabajo. 1 Registro e inicio de sesión en Auth Service. 2 Subida del video en Media Service. 3 Almacenamiento del archivo en MongoDB con GridFS. 4 Emisión de un mensaje a RabbitMQ tras la subida. 5 Convertor Service procesa el video y genera el MP3 con FFmpeg. 6 Notification Service envía el correo al finalizar. 7 Descarga del MP3 desde Media Service.

Servicios y puertos. Gateway 8000 para enrutamiento, Auth 5000 para identidad y tokens, Media 7000 para ficheros, Convertor 4000 para procesamiento, Notification 6000 para emails, PostgreSQL 5433 para usuarios, MongoDB 27017 para ficheros, RabbitMQ 5672 para mensajería, panel de RabbitMQ 15672 y Mongo Express 8081.

Variables de entorno. Auth Service requiere JWT_SECRET, DATABASE_URL y RABBITMQ_URL. Media Service requiere RABBITMQ_URL, MONGODB_URL y AUTH_URL. Convertor Service requiere RABBITMQ_URL y MONGODB_URL. Gateway requiere AUTH_URL y MEDIA_URL.

Desarrollo. Ejecución independiente de servicios con Uvicorn: Auth en el puerto 5000, Media en el puerto 7000 y Gateway en el puerto 8000. Las tablas del Auth se crean automáticamente con SQLModel; para entornos productivos se recomienda usar migraciones con Alembic.

Seguridad. Autenticación JWT con tokens de acceso y refresco, contraseñas con hashing bcrypt, autorización por token en endpoints protegidos, validación de archivos y configuración por entornos para gestionar credenciales y secretos.

Escalabilidad. La arquitectura de microservicios permite escalar de forma independiente cada componente, la cola de mensajes habilita procesamiento asíncrono, los servicios stateless facilitan el escalado horizontal y la separación de bases de datos optimiza el rendimiento por tipo de dato.

Contribución. Flujo recomendado: crear un fork, generar una rama de feature, realizar commits atómicos, enviar la rama al remoto y abrir un Pull Request para revisión.

Licencia. Proyecto bajo licencia MIT, revisar el archivo LICENSE para más detalles.

Mejoras futuras. Progreso en tiempo real con WebSocket, nuevos formatos de salida como WAV o AAC, procesamiento por lotes, panel de usuario con historial de conversiones, validación avanzada de tamaño y formato, rate limiting y cuotas, integración con almacenamiento en la nube, configuración para Kubernetes, observabilidad con Prometheus y Grafana y pipeline de CI CD.

Sobre Q2BSTUDIO. Somos una empresa de desarrollo con foco en software a medida, aplicaciones a medida, arquitectura de microservicios, servicios cloud AWS y Azure, ciberseguridad, inteligencia artificial e IA para empresas, agentes IA, servicios de inteligencia de negocio y Power BI, automatización de procesos y soluciones de alto impacto. Integramos pipelines de datos, analítica avanzada y despliegues escalables para acelerar el time to market. Si planeas una implementación en la nube productiva y segura, conoce nuestros servicios cloud AWS y Azure.

SEO y beneficios. Esta plataforma potencia la conversión de video a MP3 con tiempos de respuesta predecibles y resiliencia, reforzando estrategias de contenido y automatización. Palabras clave incluidas: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi para impulsar el posicionamiento orgánico.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat