Este repositorio contiene un script para convertir archivos de audio en formato M4A a texto utilizando ffmpeg
, speech_recognition
y pydub
. El script convierte el archivo de audio a formato WAV, lo divide en fragmentos manejables, y luego transcribe cada fragmento a texto, guardando la transcripción en un archivo de texto en una carpeta llamada transcription
.
- Python 3.6 o superior
ffmpeg
speech_recognition
pyaudio
pydub
-
Instalar Homebrew (si no está instalado):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Instalar
ffmpeg
yportaudio
:brew install ffmpeg portaudio
-
Crear un entorno virtual (opcional pero recomendado):
python3 -m venv .venv source .venv/bin/activate
-
Instalar las dependencias de Python:
pip install SpeechRecognition pyaudio pydub
-
Descargar e instalar
ffmpeg
desde el sitio oficial: FFmpeg Download. Asegúrate de agregarffmpeg
al PATH del sistema. -
Instalar
portaudio
ypyaudio
:2.1 Descargar e instalar
portaudio
desde el sitio oficial: PortAudio Download.2.2 Descargar el instalador de PyAudio desde aquí y luego instalarlo:
pip install path/to/your/downloaded/pyaudio-*.whl
-
Crear un entorno virtual (opcional pero recomendado):
python -m venv .venv .venv\Scripts\activate
-
Instalar las dependencias de Python:
pip install SpeechRecognition pydub
-
Actualizar los repositorios e instalar
ffmpeg
y las dependencias necesarias:sudo apt update sudo apt install ffmpeg libportaudio2
-
Instalar
portaudio
ypyaudio
:sudo apt install portaudio19-dev python3-pyaudio
-
Crear un entorno virtual (opcional pero recomendado):
python3 -m venv .venv source .venv/bin/activate
-
Instalar las dependencias de Python:
pip install SpeechRecognition pydub
-
Clonar el repositorio:
git clone https://github.com/tu_usuario/tu_repositorio.git cd tu_repositorio
-
Asegúrate de que los archivos de audio M4A estén en la carpeta
media
. -
Ejecutar el script:
python transcribe_audio.py
-
La transcripción se guardará en un archivo de texto en la carpeta
transcription
con el mismo nombre que el archivo de audio original.
El script está diseñado para manejar archivos de audio largos dividiéndolos en fragmentos más pequeños de 60 segundos. Cada fragmento se procesa y transcribe por separado, y las transcripciones se concatenan en un solo archivo de texto. Si necesitas ajustar el tamaño del fragmento, puedes modificar la constante CHUNK_LENGTH_MS
en el script transcribe_audio.py
.
- Asegúrate de que los archivos de audio estén correctamente ubicados y que las rutas en el script sean precisas.
- Si encuentras problemas durante la instalación de las dependencias, consulta la documentación oficial de cada herramienta para obtener más ayuda.
Este proyecto está licenciado bajo los términos de la licencia MIT. Consulta el archivo LICENSE
para más detalles.