Transcribir voz a texto con Vosk

Imagen
Voz a texto

En la asignatura de Técnicas de análisis cualitativo. del Máster de análisis político que estoy cursando en la UOC. me exigen realizar una entrevista como parte del trabajo de campo y transcribirla. 

Por diferentes razones, decidí no utilizar ninguna de las aplicaciones recomendadas para realizar la transcripción y tampoco quise utilizar los servicios de Google (Speech-to-text) y curioseando di con Vosk.

Conseguir que funcionara me llevó un buen ratito y, por si necesito reinstalarlo y para recordar cómo utilizarlo, he preparado este resumen con la intención, además, de facilitar su uso a quien pudiera estar interesado, así que manos a la obra.

Instalar Vosk

Ubuntu es algo delicado para instalar paquetes de Python no incluidos como .deb, y exige crear un entorno separado, así que la manera más rápida de instalar Vosk es la siguiente:

python3 -m venv /opt/vosk
cd /opt/vosk
./bin/pip3 install vosk

Instalar el modelo de idioma

A pesar de que la ayuda de Vosk explica que el modelo se descarga en caso de no estar instalado, lo cierto es que produce fallos constantes, por lo cual es recomendable descargarlo de manera manual y colocarlo en la ruta que más cómodo resulte.

En mi caso he descargado el modelo grande de español (1.4Gb de descarga que se convierten en 2,4Gb al descomprimirlo), pero puedes descargar el pequeño, que solo ocupa 39Mb

mkdir modelos
cd modelos
wget https://alphacephei.com/vosk/models/vosk-model-es-0.42.zip
unzip vosk-model-es-0.42.zip

Formato del audio

En todos los foros consultados aconsejan el uso de wav utilizando como codec PCM de 16-bit, una opción que es precisamente la que Audacity proporciona por defecto.

Si necesitas convertir el fichero, puedes hacerlo con ffmpeg:

ffmpeg -i <input_file> -ar 16000 -ac 1 -acodec pcm_s16le file.wav

Ejecutar Vosk

Bueno, ya estamos listos para la primera transcripcion:

bin/vosk-transcriber -m  modelos/vosk-model-es-0.42/ -i prueba.wav -o prueba.txt

¡Listo!

Ahora a disfrutar del tiempo que te has ahorrado evitando transcribir manualmente el fichero de audio.