El desafío
Una agencia de marketing para influencers nos planteó un reto: automatizar el proceso completo de subtitulado de vídeos de YouTube en 3 idiomas distintos y con un plazo máximo de 48 horas por encargo.
El objetivo era reducir la intervención manual, agilizar la producción y controlar cada encargo en tiempo real.
El flujo de trabajo debía cubrir todas las fases clave del proceso:
- Subida de los vídeos editados a un servidor.
- Transcripción automática de los vídeos y generación de los subtítulos en el idioma correspondiente.
- Revisión y sincronización manual de los subtítulos.
- Entrega final de los archivos SRT.
Además, el cliente necesitaba un sistema que permitiera llevar el control del tiempo y registrar cada encargo para facilitar la facturación del trabajo manual de subtitulación según la duración de cada vídeo.
Para garantizar el control y la trazabilidad de cada encargo, creamos una hoja de cálculo en Google Sheets compartida con los colaboradores, donde se registraba (entre otras cosas):
- Datos del video (fecha de llegada, nombre del archivo, duración).
- Fecha de entrega.
- Persona responsable del subtitulado.
La comunicación con el equipo se gestionaba a través de Mattermost, una alternativa de código abierto a Slack, lo que facilitaba la coordinación entre el gestor del proyecto y los distintos colaboradores.
No obstante, surgió una limitación importante: el cliente quería que cualquier miembro de su equipo pudiera subir los vídeos sin necesidad de registrarse ni disponer de una cuenta en una aplicación concreta.
Esta restricción nos llevó a descartar la opción de usar directamente Sonix, la herramienta de transcripción y subtitulado elegida, ya que no permite subir archivos de forma anónima.
Análisis del proceso y elección de la herramienta
Para automatizar el flujo de trabajo, identificamos las acciones clave que debían ejecutarse automáticamente con la llegada de cada nuevo vídeo:
- Importar el vídeo en la plataforma de transcripción Sonix.
- Registrar los datos del vídeo (fecha, remitente, nombre del archivo y duración) en la hoja de Google correspondiente a cada idioma.
- Notificar al equipo mediante un mensaje en Mattermost, en un canal dedicado para cada idioma.
Un aspecto fundamental de todo el proceso era el sistema para gestionar la recepción y el almacenamiento de los vídeos. Por ello exploramos distintas soluciones en la nube y, tras evaluar varias opciones, determinamos que la mejor alternativa era utilizar Google Drive. Este sistema es ampliamente utilizado y destaca por su compatibilidad con herramientas de automatización.
Por lo tanto, se barajó la posibilidad de utilizar un formulario de Google vinculado a Google Drive, pero esta opción también requería iniciar sesión con una cuenta de Google, por lo que tampoco cumplía con la necesidad de accesibilidad universal para los editores de vídeo.
La solución definitiva fue añadir un paso previo al proceso, aprovechando la funcionalidad de «File request» de Synology, que permite crear una página dedicada con un simple formulario. Los usuarios solo debían introducir su dirección de correo electrónico y subir el archivo, que se almacenaba automáticamente en una carpeta cuyo nombre coincidía con la dirección de correo.
Para sincronizar esta estructura con Google Drive, utilizamos la app CloudStation, incluida en el sistema operativo DSM de Synology. Así, cada vez que un vídeo se subía al servidor de Synology, este se sincronizaba automáticamente con una carpeta de Google Drive.
Finalmente, para notificar la llegada de nuevos vídeos, programamos un script de cron. Cada 15 minutos, el script revisaba el contenido de las carpetas del servidor y, si detectaba archivos nuevos, enviaba un correo electrónico automático al gestor del proyecto, con la ruta y el nombre del archivo subido.
La elección de la herramienta de automatización también fue una parte crucial del servicio. La primera opción que consideramos fue Zapier, que permite conectar Google Drive con Sonix a través de una «recipe» predefinida. El flujo era simple: cada vez que se subía un nuevo archivo a Google Drive, Zapier transfería el archivo a Sonix, donde se realizaba la transcripción automática.
Aunque esta integración funcionaba de forma correcta, presentaba una limitación importante: la API de Google Drive no permite monitorizar subcarpetas de forma recursiva. Esto significaba que solo se podía monitorizar la carpeta principal, pero no sus subcarpetas. Para este proyecto, donde cada editor de vídeo tenía su propia subcarpeta, habría sido necesario crear un zap para cada subcarpeta, lo que habría requerido un esfuerzo manual que contradecía el objetivo de la automatización.