El sueño del periodista: transcripción de audio a texto automática



Si, digo sueño del periodista porque todo aquel que tuvo que desgrabar una entrevista se volvió mono cuando le tocó una demasiado larga, es que no sólo se gasta el tiempo para hacer las preguntas y recibir las respuestas, se duplica exactamente cuando uno debe hacer el proceso inverso a la grabación y así poder pasar a escribir, lo que implica una tercera vez por la que hay que revisar el material y se puede incluir hasta una cuarta.

Justo anoche me preguntaron si existía algún software para hacerlo, el problema es que no, no hay nada "accesible" salvo, casualmente, en nuestros teléfonos. Con accesible me refiero a libre y gratuito, claramente :D

Transcribir es un dolor de cabeza y aun al día de hoy a la tecnología le cuesta realizarlo de forma automática y acertar.



El truco que encontré es aprovechar las mismas herramientas de Google que utiliza para el reconocimiento de voz a la hora de recibir comandos en el teléfono. La grabación se envía casi en tiempo real al servidor, reconoce el texto, la gramática, el sentido de la oración e interpreta un comando.

El software para reconocimiento de voz no es nada nuevo, pero que funcione bien sí lo es, en veinte años se avanzó mucho pero lo principal llegó en los últimos años, hoy desde Cortana hasta Siri pasando por Google Now te reconocen bastante bien lo que decís, aunque no siempre son perfectos.

No son perfectos porque nosotros no lo somos a la hora de hablar, somos un "más o menos" en todo lo que hacemos :P

El primer método en el que pensé naturalmente es Youtube con su "Closed Caption", el botón CC que a veces muestra, principalmente si hay alguien hablando, y esto implica que Youtube mismo hizo el trabajo.

En muchas conferencias podemos ver el botón disponible, el motor de Google intentará reconocer todo, no siempre lo hace bien, depende de la dicción de la persona, su pronunciación, acento y hasta de la calidad de la grabación, ruido ambiente, modismos, palabras raras, nombres propios, acrónimos y un largo etcétera de problemas que hay a la hora de expresarse y entenderse.

Aquí encontré la forma de descargar el CC de un video, pero depende de un poco de hackeo de consola de javascript y el riesgo habitual de que el método quede rápidamente obsoleto.



Ahora bien, hay otro método más sencillo todavía y es aprovechar una API y su web de demostración.

Cada browser puede implementar su propio sistema de reconocimiento de voz, la idea es que respeten un estándar de la W3C y de ahí en más cada uno lo implemente como mejor le salga, para probar esta API Google tiene una demo para Chrome.

Si habilitan el micrófono en dicha demo y, si se dan maña, hacen que el audio de un archivo guardado salga como micrófono (de última reproducen hacia el micrófono), éste podrá capturar el audio e irá identificando el texto.

Lo genial de este método es que permite seleccionar el idioma y su variante, en mi caso Español Argentino, que no es lo mismo que el de Colombia o el de España. Google tiene una gran herramienta aquí que, del lado del servidor, es la misma que se utiliza desde Google Now en Android hasta Youtube.



Hay varias apps web para hacer lo mismo pero todas suelen fracasar muy seguido, sin ser un locutor ni nada parecido les dejo una captura del fracaso masivo justo cuando menciono la palabra "Nuremberg" y ni les digo cuando dije "el primero de los lugares" y terminó con "pimpinela" que no se parece ni hablando con la boca anestesiada por el dentista :D

¿Conocen alguna app descargable que haga un trabajo digno? ¿Alguna online? Sean bienvenidos para sugerir...

No es una herramienta precisa y se necesita una fuente de audio muy buena (en mi video de prueba justo hay música de fondo)

Si te gustó esta nota podés...
Invitame un café en cafecito.app


Otros posts que podrían llegar a gustarte...

Comentarios

  • Tomas     10/11/2015 - 17:24:35

    El procesador de texto de Google Drive para Android tiene esto hace rato, y hace no mucho (un par de semanas) incorporaron la funcionalidad a la versión Web. Armas el documento directamente en la versión web.

    Lo probé hace unos días y esta bueno, porque mientras le dictas, agregas puntos, comas, saltos de pagina, etc...

  • Sebastian     10/11/2015 - 17:42:35

    Un amigo que trabaja en un juzgado me preguntó lo mismo, después de googlear sin obtener frutos me puse a analizar las herramientas de google como dijiste.

    Si bien no puedo ayudar a mi amigo, al menos me saco la duda de que no hay algo así (al menos gratis).

  • Fabio Baccaglioni     10/11/2015 - 18:39:42

    Tomas dijo:

    El procesador de texto de Google Drive para Android tiene esto hace rato, y hace no mucho (un par de semanas) incorporaron la funcionalidad a la versión Web. Armas el documento directamente en la versión web.

    Lo probé hace unos días y esta bueno, porque mientras le dictas, agregas puntos, comas, saltos de pagina, etc...


    si, el problema es que es para la versión web, todo es para la web! y para muchos eso es re paja, no hay un soft instalable que no requiera internet.

    La API de Google parece ser la única bien resuelta y usable, sea por Google Docs, Now o la demo

  • gorlok     10/11/2015 - 22:12:15

    Fabio,
    el tema de que "no requiera internet" es complicado, porque justamente las bases de datos para realizar esto son muy grandes, muy complejas, tienen muchos algoritmos con lógica difusa, heurísticas, y procesamientos complejos que si no se realizan con la asistencia de grandes clusters y muchísima RAM serían prohibitivos localmente. Hay soluciones off-line, pero el resultado es notablemente inferior, y si las mejores soluciones todavía están lejos de ser perfectas, ni hablemos del resultado al imponerles más restricciones de espacio y procesamiento.

    Me acuerdo del interés de DARPA en la traducción en tiempo real, que habían estado probando en conjunto con Google y sus Nexus hace pocos años en medio oriente, como una herramienta para brindarle traducción automática hablada a los soldados en regiones donde hay muchísimas lenguas y dialectos, y pocos traductores. Es algo que a los militares les sirve y mucho... así que sin duda continuarán los avances a grandes pasos :D

  • jorgemm     11/11/2015 - 00:18:07

    http://www.nuance.es/index.htm

    no es gratuito, pero lo use hace varios años (mas de 6) y era impresionante como le podías dictar rápido, me imagino que esta nueva versión debe ser muy buena.
    la idea es practicar un poco y después le dictas. escuchas la grabación y le repetirías con tu voz para que salga rápido y muy cercano a la perfección.

  • Fabio Baccaglioni     11/11/2015 - 02:39:37

    jorgemm dijo:

    http://www.nuance.es/index.htm

    no es gratuito, pero lo use hace varios años (mas de 6) y era impresionante como le podías dictar rápido, me imagino que esta nueva versión debe ser muy buena.
    la idea es practicar un poco y después le dictas. escuchas la grabación y le repetirías con tu voz para que salga rápido y muy cercano a la perfección.


    ojo, aclaro un punto, una cosa es el dictado, otra es la desgrabación de una entrevista a una persona que no se entrenó con un software, y eso es imposible

  • Tomas     11/11/2015 - 14:13:02

    gorlok dijo:

    Fabio,
    el tema de que "no requiera internet" es complicado, porque justamente las bases de datos para realizar esto son muy grandes, muy complejas, tienen muchos algoritmos con lógica difusa, heurísticas, y procesamientos complejos que si no se realizan con la asistencia de grandes clusters y muchísima RAM serían prohibitivos localmente. Hay soluciones off-line, pero el resultado es notablemente inferior, y si las mejores soluciones todavía están lejos de ser perfectas, ni hablemos del resultado al imponerles más restricciones de espacio y procesamiento.


    Me permito dudar de esta afirmación. Si lo que Google planteaba en 2009 era cierto, este tipo de tareas se hacen con algoritmos relativamente sencillos, pero lo masivo es la cantidad de datos (El articulo es previo a que la palabra "Big Data" se ponga de moda). El articulo no habla específicamente de procesamiento de lenguaje natural, ni tengo las lecturas mínimas del tema, pero para este tipo de cosas ellos dicen públicamente preferir grandes cantidades de datos y algoritmos simples, antes que complejos algoritmos.

    En cualquier caso, es solo un divague dado que el motor de speech2text de google no es libre.

    : http://static.googleusercontent.com/media/research.google.com/es-419//pubs/archive/35179.pdf

  • megaradio     12/11/2015 - 02:22:12

    https://youtu.be/ARSuHUnDqXc

    https://youtu.be/x9qU2rwT-HM

    Leí el post (que está más que bueno) pero no doy pie con bola.

    ¿Te animás a pasarlos a word?

    GRACIAS!

  • pablo     24/08/2016 - 14:09:17

    hola fabio, me explicarias como haces que el audio de un archivo salga como microfono
    porque claramente el microfono no toma el audio del parlante
    mcuhas gracias

  • Rotietip     12/02/2022 - 10:26:30

    ¿Que opinas de DeepSpeech? Se puede usar offline y es de código abierto, pero tal como se ve acá y acá, es algo que medio te lo tenes que armar por tu cuenta. Si queres que reconozca el español también necesitas bajarte un modelo ya entrenado de Scribosermo (o hacer uno con los datasets disponibles).

    • Fabio Baccaglioni     13/02/2022 - 12:29:33

      bueno, cuando escribí esto en 2015 ni existía y Tensor Flow estaba en pañales :P pinta bueno aunque, claro, necesitás usar el motor de TF de Google para hacerlo funcionar y pagarte unos mangos de procesamiento en la nube si no tenés el hard adecuado

Deje su comentario:

Tranquilo, su email nunca será revelado.
La gente de bien tiene URL, no se olvide del http/https

Negrita Cursiva Imagen Enlace


Comentarios ofensivos o que no hagan al enriquecimiento del post serán borrados/editados por el administrador. Los comentarios son filtrados por ReCaptcha V3.