Whisper Local - Transcrição de Áudio
Uma ferramenta de linha de comando para transcrição de áudio usando o modelo Whisper localmente. Esta ferramenta permite transcrever arquivos de áudio nos formatos MP3, WAV, OGG e vídeos MP4 (extraindo o áudio), gerando saídas em texto e opcionalmente em formato de legendas SRT.
Requisitos
- Python 3
- Ambiente virtual (recomendado)
- FFmpeg (necessário para conversão de arquivos MP4 e outros formatos)
- Pacotes Python necessários:
- whisper
- pydub (para conversão de arquivos OGG e MP4)
Instalação
-
Clone este repositório ou baixe o script
-
Instale o FFmpeg (necessário para conversão de MP4):
# Ubuntu/Debian sudo apt update && sudo apt install ffmpeg # CentOS/RHEL/Fedora sudo dnf install ffmpeg # macOS (com Homebrew) brew install ffmpeg # Windows (com Chocolatey) choco install ffmpeg
-
Instale as dependências Python:
pip install openai-whisper pip install pydub # Para suporte a conversão de OGG e MP4
Uso
python whisper-local.py audio_file [options]Argumentos:
audio_file: Caminho para o arquivo de áudio/vídeo (.mp3, .wav, .ogg ou .mp4)
Opções:
--model,-m: Tamanho do modelo Whisper (default: small)- Opções: tiny, base, small, medium, large
--language,-l: Código do idioma para transcrição (default: pt)--output,-o: Arquivo de saída para salvar a transcrição--srt,-s: Gerar arquivo de legendas SRT--srt-file: Caminho para salvar o arquivo de legendas SRT (opcional)
Exemplos:
# Uso básico (modelo small, idioma português)
python whisper-local.py audio.mp3
# Usando o modelo large com idioma inglês
python whisper-local.py audio.mp3 --model large --language en
# Especificando arquivo de saída
python whisper-local.py audio.mp3 --output transcricao.txt
# Gerando legendas SRT
python whisper-local.py audio.mp3 --srt
# Especificando o arquivo de saída para a transcrição e para as legendas
python whisper-local.py audio.mp3 --output transcricao.txt --srt --srt-file legendas.srt
# Convertendo e transcrevendo um arquivo OGG
python whisper-local.py audio.ogg
# Convertendo e transcrevendo um arquivo MP4 (extraindo áudio)
python whisper-local.py video.mp4Como Funciona
- O script verifica o formato do arquivo de entrada
- Se o arquivo for OGG ou MP4, converte para MP3 (requer pydub e ffmpeg)
- Carrega o modelo Whisper especificado
- Realiza a transcrição do áudio
- Salva a saída em formato de texto
- Opcionalmente gera legendas em formato SRT
- Mostra estatísticas de tempo de execução
Formatos de Saída
Transcrição de Texto
Por padrão, a transcrição é salva em transcription.txt no mesmo diretório do arquivo de áudio.
Legendas SRT
Se a opção --srt for especificada, um arquivo de legendas SRT será gerado. Por padrão, este arquivo terá o mesmo nome do arquivo de áudio, mas com extensão .srt.
Considerações de Desempenho
O desempenho da transcrição depende do tamanho do modelo Whisper escolhido:
- tiny: Mais rápido, menos preciso
- base: Equilíbrio entre velocidade e precisão
- small: Bom para a maioria das necessidades (padrão)
- medium: Mais preciso, mais lento
- large: Maior precisão, mas requer mais recursos e tempo
Estatísticas de Execução
Ao final da execução, o script exibe estatísticas detalhadas:
- Tempo de carregamento do modelo
- Tempo de transcrição
- Tempo total de execução
Solução de Problemas
- Se encontrar erros relacionados à conversão de arquivos OGG ou MP4, certifique-se de que o pydub e o ffmpeg estão instalados
- Para modelos maiores (medium, large), certifique-se de ter memória suficiente
- Se o áudio estiver em um idioma diferente do padrão (pt), especifique o idioma correto com a opção
--language