This page permanently redirects to gemini://jorgesanz.net/posts/2024-11-14-transcribir-audios-en-espa%C3%B1ol-a-texto/.

Transcribir audios en español a texto

Jorge Sanz | 2024-11-14 | 375 words | techie

Ayer por razones no podía pararme a escuchar los siete audios que me llegaron de golpe en un grupo de chat así que hice una búsqueda de cinco minutos en Internet y encontré una utilidad que automáticamente se descarga un modelo de machine learning para hacer transcripciones de audio a texto.

La herramienta se llama vosk[1] y tiene soporte para más de 20 idiomas, funciona desconectada de internet, por supuesto es Software Libre, y se puede integrar en todo tipo de tecnologías. Mi caso de uso es el más chorra posible.

=> 1: https://alphacephei.com/vosk/

Como requisito previo hay que tener instalado pip[2] del ecosistema Python y se instala con un simple pip3 install vosk. La primera vez que llamas al comando vosk-transcriber se descarga el modelo adecuado a tu petición. Para ver más detalles del comando hay que ejecutar vosk-transcriber --help y son de especial interés las opciones --list-languages y --list-models para ver qué idiomas y modelos[3] hay disponibles.

=> 2: https://pypi.org/project/pip/ | 3: https://alphacephei.com/vosk/models

En mi caso he añadido la siguiente receta a ~/.zshrc, el script de inicio de sesión en consola, y con eso ya tengo un comando al que pasarle un fichero audio.mp3 y me genera un fichero audio.mp3.txt con la transcripción además de imprimirla de manera bastante legible.

# Función para transcribir textos en Español
function transcribe_spanish() {
        # crear un fichero con la transcripción
        vosk-transcriber \
          --model-name vosk-model-es-0.42 \ # modelo completo
          --lang es \ # en español
          -i "${1}" \ # entrada
          -o "${1}.txt" \ # salida
          2> /dev/null # no generar salida a consola

        # sacar el contenido del fichero con líneas
        # en blanco entre párrafos y formateado a 50
        # caracteres de ancho para mejorar la
        # legibilidad
        cat "${1}.txt"  | sed G | fold -sw 50
}

Y un ejemplo de ejecución sería algo como esto:

$ transcribe_spanish audio-2024-11-11.ogg                                    
bueno chicos lo he dicho a quien le pille muy mal 
estoy de baja y me puedo ocupar vale

nada cualquier emergencia aquí me tenéis aunque 
sea un par de horas un rato o lo que sea un beso 
tampoco sean todos a la vez pero bueno ya sabéis 
aquí estoy

Si acabaré montando otro script para recibir la salida de este comando y que me haga un resumen ya es cuestión de tiempo 😅.

--=--=--

🗣 Reactions

Want to comment anything? Continue the discussion here[4] or contact me![5]

=> 4: https://mapstodon.space/@jorgesanz/113480554728384928 | 5: /contact

Likes (4)

=> Facundo Muñoz

=> geraldo

=> pabloh

=> Juanjo Salvador

Reposts (3)

=> Ignacio Borlaf-Mena

=> Raúl Nanclares

=> Antonio Rull

Replies (4)

=> Juanjo Salvador on Nov 14, 2024

=> Jorge Sanz on Nov 14, 2024

=> Raúl Nanclares on Nov 14, 2024

=> Jorge Sanz on Nov 14, 2024


=> 🏠 Home | 📔 Gemlog

=> This capsule is in LEO | Next Page | Last Page | Random Page

Proxy Information
Original URL
gemini://jorgesanz.net/posts/2024-11-14-transcribir-audios-en-espa%C3%B1ol-a-texto
Status Code
Success (20)
Meta
text/gemini;lang=en
Capsule Response Time
257.02834 milliseconds
Gemini-to-HTML Time
2.72022 milliseconds

This content has been proxied by September (ba2dc).