En este artículo, os mostraré cómo crear automáticamente subtítulos para videos y transcripciones de texto para archivos de audio utilizando inteligencia artificial. Para ello, haremos uso de Buzz, un programa gratuito que emplea Whisper, el modelo de Reconocimiento Automático de Voz (ASR) desarrollado por OpenAI.
De voz a texto con inteligencia artificial
Sistemas de reconocimiento de voz y transcripción a texto existen muchos: desde el propio dictado de los teléfonos Android e iOS o el de Windows en ordenadores y otros programas especializados como ListenAll o Dragon Natural Speaking. Sin embargo, estos sistemas están enfocados en realizar transcripciones de la voz en tiempo real y del micrófono de nuestro dispositivo, por lo que no permitían realizar transcripciones de ficheros de audio.
Pero ahora, OpenAI, la empresa desarrolladora del famoso ChatGPT, ha puesto a disposición del público de forma gratuita un modelo de reconocimiento de voz automática con inteligencia artificial. Este modelo se llama Whisper y ha sido entrenado con cientos de miles de horas de audio y su precisión es muy alta.
La diferencia entre Whisper y los sistemas tradicionales, es que además de intentar reconocer las palabras, da sentido a las oraciones y crea párrafos completos con todos sus signos de puntuación; detectando cuando hay preguntas, exclamaciones, etc. Lo que resulta en un texto con mucho más sentido y no un «chorro de texto» sin estructura.
Descarga e instalación de Buzz
El programa que vamos a utilizar se llama Buzz y es gratuito, para descargarlo se puede ir a la página de lanzamientos del proyecto, pulsar en la versión más actual (al escribir este artículo la 0.8.4) y en la sección «assets» al final de la página, descargar el instalador para nuestro sistema operativo ya que se encuentra disponible para Windows, Mac y Linux.
Para facilitar la tarea, os pongo los enlaces de descarga directos para las 3 plataformas, versión 0.8.4, con un peso de unos 200MB:
Una vez descargado el instalador, proceder con los pasos típicos para instalar el programa. Una vez finalizada la instalación ya tenéis Buzz instalado en vuestro ordenador. Ahora ya podéis ejecutarlo y empezar a usarlo.
Primeros pasos con Buzz
Al ejecutar la aplicación veréis una ventana como la siguiente o similar, ya que yo uso Mac:
La aplicación es muy sencilla y de izquierda a derecha los iconos que hay sirven para:
- Icono del micrófono, para realizar transcripción del sonido del micrófono. Si vuestro ordenador no es potente, no funcionará.
- Icono del + o nueva transcripción. Para realizar la transcripción de un fichero de audio.
- Botón de abrir transcripción una vez que haya finalizado la tarea
- Botón para cancelar la tarea de transcripción
- Botón para eliminar la tarea de transcripción de la lista de tareas.
Nuestra primera transcripción
Vamos a realizar la primera tarea de transcripción. Pulsamos en el botón del + o pulsamos en Archivo – Nueva transcripción y seleccionamos de nuestro ordenador el fichero de audio que queremos transcribir, acepta MP3, WAV, M4A y OGG. Una vez seleccionado el fichero de audio, nos aparece una ventana como la siguiente:
En esta ventana podemos seleccionar el modelo, que será Whisper. Además, debemos seleccionar qué variante del modelo queremos utilizar, hay desde Tiny hasta large. Las variantes iniciales (tiny, small) son las que más rápido transcriben el audio pero su precisión no es la mejor. Si queremos la máxima precisión en el reconocimiento de voz deberemos seleccionar la variante large.
Es buen momento para indicar que el proceso de transcripción es muy exigente computacionalmente y se requiere un ordenador con potencial, recomendable 16GB de RAM y un procesador i7 o i9 o equivalente. Un audio de varias horas de duración puede tardar 3 o 4 horas en finalizar la transcripción.
El siguiente parámetro a configurar en la ventana es el tipo de tarea. Hay dos, por defecto transcribir y también se puede traducir. Pero la traducción sólo se hace de cualquier idioma al inglés, y no en sentido contrario. Por lo que podremos poner un audio en español, francés, italiano, etc. y lo traducirá al inglés. En nuestro caso seleccionamos la tarea transcribir.
Ahora debemos seleccionar el idioma del reconocimiento de voz, existe la opción de «Detectar automáticamente», pero en ocasiones esta opción no funciona y obtendremos una transcripción deficiente, por lo que deberemos seleccionar en qué idioma está el audio. En mi caso Spanish, porque los idiomas están en inglés.
En cuanto a los idiomas disponibles, además del español, están ell catalán, el gallego y el euskera. La lista es muy larga e incluye los típicos inglés y europeos como italiano, francés, alemán, etc.
Otra opción a marcar es la casilla de Tiempos a nivel de palabras, esta opción, como su nombre indica, se guarda los tiempos de aparición de las palabras, imprescindible para que los subtítulos aparezcan en los instantes de tiempo correctos. Si sólo queremos la transcripción y no subtítulos, no es necesario marcarla.
Abajo tenemos más opciones, como seleccionar el tipo de resultado que queremos (fichero de texto, subtítulos, etc.) pero no es necesario seleccionarlo ya que a posteriori los podemos elegir.
Pulsamos en el botón correr del proceso de transcripción comienza. ¡Un poco de paciencia que el proceso puede tardar bastante!
Descargando los subtítulos o transcripción generados
Una vez finalizado el proceso de transcripción, pulsamos en el elemento de la lista y aparecerá una ventana con los instantes de tiempos y el texto generado. En la parte inferior derecha de la pantalla tenemos un botón de descarga, si lo pulsamos, podremos descargar el fichero en tres formatos:
- TXT: Fichero de texto plano con el texto estructurado por párrafos.
- SRT: Fichero de subtítulos estándar que se pueden utilizar para, adjuntarlos al vídeo. Con cualquier reproductor como VLC se puede reproducir el vídeo con los subtítulos SRT generados..
- VTT: Este formato es muy utilizado en Microsoft Office, por ejemplo para incluir subtítulos en los vídeos que incrustemos en PowerPoint.
¡Y listo! Con estos sencillos pasos podremos generar subtítulos para vídeos y realizar transcripciones de audios como reuniones, eventos, clases, etc.
Es importante destacar que se pueden añadir varias tareas de transcripción y Buzz las irá realizando una detrás de otra hasta finalizarlas todas.
Conclusiones
Los resultados obtenidos con Buzz son francamente impresionantes y con una tasa de error de reconocimiento muy baja. Suele fallar en algunas abreviaturas no muy conocidas y en algunos nombres propios con los que no haya sido entrenado, pero el ahorro de tiempo al realizar las transcripciones con esta herramienta es enorme. Es importante mencionar que los ficheros de subtítulos al fin y al cabo son ficheros de texto que se pueden abrir con un bloc de notas y editar las palabras que no estén bien transcritas.
Os animo a probarlo y que saquéis vuestras propias conclusiones. El subtitulado y la transcripción casi completamente precisa ahora están al alcance de cualquier persona.
PD: En este artículo no entro en la tarea de extraer el audio de vídeos ya que no es mi fuerte.
Muchas gracias por este aporte tan significativo. Aprovecho para consultarte qué aplicación recomendarías que tenga está funcionalidad o similar para celular.
¡Abrazo!
¡Hola Marta!
Para realizar subtítulos con la tecnología de Whisper, para iOS existe la app Aiko, para Android aún no conozca ninguna. Iré publicando más aplicaciones cuando las vaya descubriendo. ¡Saludos!
¡Gracias José María por tu pronta respuesta, Cariños!
Muchas gracias por esa información y por sacar tiempo para compartir
En cuanto a la conversión de vídeo a audio hay muchos editores y estaciones de audio que pueden hacerlo, pero lo más fácil es llevarlo a cabo desde el propio reproductor VLC. No lo recuerdo de memoria, pero si recorremos sus menús deberíamos hallar la opción de conversión.
se tilda la pc se nesesita una super memoria!!!!!!!no hay nada mas simple????????
Hola Fernando, la inteligencia artificial requiere muchos recursos, de momento en local Y gratis no hay más opciones. Saludos