POLITICA DE COOKIES

Q2BSTUDIO.COM utiliza cookies técnicas, analíticas, de sesión y de publicidad con la finalidad de prestar un mejor servicio. No obstante, necesitamos su consentimiento explícito para poder utilizarlas. Así mismo puede cambiar la configuración de las cookies u obtener más información aquí .

De la idea al audio: Podcast-It con Cloudflare Worker

Del concepto a la voz: Podcast-It con Cloudflare Worker

Publicado el 19/08/2025

Introducción: la idea surgió al querer convertir publicaciones de blog en episodios de podcast de forma más rápida y automática. Al principio se seguía un flujo manual largo que incluía pegar el enlace en NotebookLM, esperar a que se generara el audio, ajustar opciones, descargar el audio y luego crear un vídeo para YouTube con Headliner. Ese proceso implicaba muchas esperas y la posibilidad de automatizarlo resultó obvia.

Visión general del proyecto: desarrollé podcast-it como un Cloudflare Worker capaz de recibir el texto de una entrada de blog y devolver un archivo de audio reproducible. El objetivo fue crear una API REST fácil de integrar con cualquier sitio para convertir texto en audio de manera escalable y rápida.

Selección de la pila tecnológica: la limitación principal fue que algunas herramientas no ofrecen API públicas, por lo que fue necesario recrear la funcionalidad clave. Elegí Cloudflare Workers por su baja latencia y plan gratuito generoso. Para generación de texto y síntesis de voz utilicé OpenAI. El almacenamiento de audio quedó en R2 y la metadata en D1. La API REST facilita la integración con sitios y flujos de publicación existentes.

Configuración del proyecto: partí de una plantilla backend para Workers con OpenAPI que agiliza el desarrollo de APIs. Instalé el SDK de OpenAI y añadí bindings en la configuración para R2 y D1, además de crear migraciones para versionar la base de datos y un directorio de tests. De este modo se garantizó reproducibilidad entre entornos y control de cambios en la estructura de datos.

Funcionalidad principal: texto a voz: en lugar de convertir directamente el texto del blog, primero genero un guion de narración con OpenAI para obtener un tono más natural y luego envío ese guion a la API de text to speech. El flujo interno es sencillo y robusto: recibir texto bruto, generar guion, sintetizar audio, almacenar el audio en R2 y guardar metadatos en D1.

Creación asíncrona de episodios: la generación y almacenamiento de audio toman varios segundos, por lo que el endpoint de creación es asíncrono. Al recibir un POST a la ruta de episodios la API responde inmediatamente con un slug y estado pendiente, mientras que el procesamiento continúa en segundo plano. Un endpoint GET por slug devuelve el estado actual y la metadata cuando el audio esté listo.

Flujo interno resumido: 1 recibir el post como texto; 2 generar guion de narración con OpenAI; 3 sintetizar audio con la API de text to speech; 4 guardar el audio en R2 usando el slug como clave; 5 registrar metadata en D1 con estado, marcas de tiempo y transcripción; 6 actualizar el estado a completo cuando el audio esté disponible.

Recuperación de episodios: consultar el endpoint GET por slug devuelve el estado actual del episodio y sus metadatos. Cuando el campo audioFile está poblado se puede descargar el audio desde el endpoint dedicado que sirve el binario directamente desde R2. Separar almacenamiento de audio y metadata permite respuestas rápidas para consultas y entrega eficiente de archivos grandes sin incluir audio en formato base64 dentro de JSON.

Almacenamiento y entrega: los ficheros de audio viven en R2 con la clave basada en el slug, y la tabla D1 contiene metadata como transcripción, estados y timestamps. Para obtener el audio el Worker hace streaming desde R2 al cliente, y D1 solo se consulta para obtener la metadata. Esta separación simplifica la arquitectura y mejora el rendimiento.

Pruebas e integración: las pruebas de integración ejercitan los endpoints reales con OpenAI mockeado. Se verifican rutas inexistentes, listados de episodios, creación de episodios con mocking de las respuestas de OpenAI y la recuperación de audio binario con el tamaño esperado. También se validan respuestas ante duplicados. Hubo algunos retos con Vitest y el entorno Workers, como limitaciones en modo watch y en mocks automáticos para D1, lo que requirió soluciones alternativas en los tests.

Conclusiones del proyecto: podcast-it permitió explorar Cloudflare Workers más allá del hosting estático y demostrar la sinergia entre R2 y D1. La decisión de separar audio y metadata simplificó el diseño y evitó complicaciones como enviar audio embebido en JSON. El proyecto está funcional y útil para convertir textos en audio rápidamente y sirve como base para integración directa con flujos de publicación.

Sobre Q2BSTUDIO: somos Q2BSTUDIO, una empresa de desarrollo de software y aplicaciones a medida con experiencia en software a medida y soluciones avanzadas de inteligencia artificial. Ofrecemos servicios integrales que incluyen ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio y consultoría en ia para empresas. Diseñamos agentes IA personalizados y aprovechamos herramientas como power bi para ofrecer dashboards y reporting robusto que impulsan la toma de decisiones basada en datos. Nuestro equipo combina experiencia en desarrollo a medida con prácticas de seguridad y operaciones cloud para entregar soluciones escalables y seguras.

Beneficios para empresas: si tu organización necesita automatizar la producción de audio a partir de contenidos escritos, integrar IA en procesos de negocio, o desplegar aplicaciones a medida en la nube, Q2BSTUDIO puede ayudar a diseñar e implementar la solución. Podemos adaptar pipelines de generación de voz, integrar agentes IA para tareas repetitivas y conectar pipelines a servicios cloud aws y azure, además de ofrecer seguridad y analítica avanzada con power bi.

Recursos y próximos pasos: el proyecto original está disponible en github.com/h93xV2/podcast-it para quien quiera explorar el código. Si te interesa una solución a medida o migrar este tipo de capacidades a tu flujo de publicación, contacta con Q2BSTUDIO para evaluar un plan que incluya desarrollo de software a medida, integración de inteligencia artificial, ciberseguridad y servicios cloud aws y azure.

Fin del artículo, inicio de la diversión
Construyendo software juntos

Dando vida a tus ideas desde 2008

Diseñamos aplicaciones móviles y de escritorio innovadoras que cumplen con tus requisitos específicos y mejoran la eficiencia operativa.
Más info
Cuéntanos tu visión
Sea cual sea el alcance, podemos convertir tu idea en realidad. Envíanosla y charlemos sobre tu proyecto o una colaboración futura.
Contáctanos
artículos destacados
Live Chat
Enviado correctamente.

Gracias por confiar en Q2BStudio