Requisitos de áudio do Whisper: guia completo de formatos suportados e especificações

Requisitos de áudio do Whisper: guia completo de formatos suportados e especificações

Eric King

Eric King

Author


Compreender os requisitos de áudio do Whisper é fundamental para obter a melhor precisão de transcrição. O Whisper é flexível e lida com muitos formatos; seguir especificações ótimas garante o máximo desempenho.
Este guia abrange todos os requisitos de áudio, formatos suportados, especificações técnicas e boas práticas para preparar arquivos de áudio para transcrição com o Whisper.

Formatos de áudio suportados

O Whisper suporta uma ampla variedade de formatos de áudio e vídeo via FFmpeg. Lista completa:

Formatos de áudio

FormatoExtensãoObservações
WAV.wav✅ Preferencial, sem perdas
MP3.mp3✅ Muito comum
FLAC.flac✅ Sem perdas, boa compressão
M4A.m4a✅ Formato Apple, codec AAC
AAC.aac✅ Compressão de alta qualidade
OGG.ogg✅ Formato open source
OPUS.opus✅ Baixa latência, adequado à web
WMA.wma⚠️ Menos comum
AMR.amr⚠️ Baixa qualidade, gravações telefônicas

Formatos de vídeo (extração de áudio)

FormatoExtensãoObservações
MP4.mp4✅ Formato de vídeo mais comum
AVI.avi✅ Formato antigo, ainda suportado
MKV.mkv✅ Contêiner
MOV.mov✅ QuickTime
WebM.webm✅ Vídeo web
FLV.flv⚠️ Flash legado
Importante: O Whisper extrai automaticamente o áudio de arquivos de vídeo; você pode enviar vídeos diretamente.

Requisitos de taxa de amostragem

Taxa ideal: 16 kHz

O Whisper reamostra internamente todo o áudio para 16 kHz mono antes do processamento. É a taxa ideal para reconhecimento de fala.

Taxas suportadas

O Whisper aceita qualquer taxa; saiba o seguinte:
Taxa de entradaProcessamento no WhisperRecomendação
8 kHzReamostrado para 16 kHz✅ Chamadas, aceitável
16 kHzUsado diretamenteÓtimo, sem reamostragem
22,05 kHzReamostrado para 16 kHz✅ Boa qualidade
44,1 kHzReamostrado para 16 kHz✅ Qualidade de CD, ok
48 kHzReamostrado para 16 kHz✅ Áudio profissional, ok
96 kHzReamostrado para 16 kHz⚠️ Desnecessário, arquivos maiores
Ideia central: Taxas mais altas não melhoram a precisão do Whisper. O modelo foi treinado com áudio a 16 kHz; fornecer 16 kHz evita reamostragem e arquivos maiores.

Boa prática

# Convert audio to 16 kHz before processing (optional optimization)
import ffmpeg

def convert_to_16khz(input_file, output_file):
    stream = ffmpeg.input(input_file)
    stream = ffmpeg.output(
        stream,
        output_file,
        acodec='pcm_s16le',
        ac=1,  # Mono
        ar=16000  # 16 kHz
    )
    ffmpeg.run(stream, overwrite_output=True)

Requisitos de profundidade de bits

Profundidades suportadas

ProfundidadeStatusObservações
8 bits✅ SuportadaBaixa qualidade, não recomendada
16 bitsRecomendadaPadrão, suficiente
24 bits✅ SuportadaProfissional, arquivos maiores
32 bits float✅ SuportadaQualidade de estúdio, excesso em muitos casos
Recomendação: PCM de 16 bits é o padrão e oferece excelente qualidade para reconhecimento de fala. Profundidades maiores não melhoram a precisão da transcrição.

Configuração de canais: mono vs. estéreo

Mono (recomendado)

O Whisper processa o áudio internamente em mono, portanto entrada mono é ótima.
Vantagens:
  • Arquivos menores
  • Processamento mais rápido
  • Sem necessidade de mixagem de canais
  • Ideal para um único falante
Use mono para:
  • Gravações com um falante
  • Chamadas telefônicas
  • Podcasts com um apresentador
  • A maioria das tarefas de transcrição

Estéreo (suportado)

Arquivos estéreo são convertidos automaticamente para mono (média ou seleção de um canal).
Quando o estéreo ajuda:
  • Falantes em canais separados (raro)
  • Gravação original em estéreo (conversão automática)
Boa prática: Converta estéreo para mono antes do processamento, se possível:
import ffmpeg

# Convert stereo to mono
stream = ffmpeg.input('stereo_audio.wav')
stream = ffmpeg.output(
    stream,
    'mono_audio.wav',
    ac=1  # Mono channel
)
ffmpeg.run(stream, overwrite_output=True)

Limites de tamanho de arquivo

Limites práticos

O Whisper não tem limite rígido de tamanho, mas há considerações práticas:
TamanhoTempo de processamentoRecomendação
< 10 MBSegundos✅ Ideal
10–100 MBMinutos✅ Bom
100–500 MB10–30 minutos⚠️ Considere fragmentar
> 500 MB30+ minutos⚠️ Deve fragmentar

Memória

Arquivos grandes exigem mais RAM/VRAM:
  • Modelo base: ~1–2 GB VRAM
  • Modelo small: ~2–3 GB VRAM
  • Modelo medium: ~5–6 GB VRAM
  • Modelo large: ~10–12 GB VRAM
Boa prática: Para arquivos > 100 MB, divida em partes (veja abaixo).

Limites de duração

Duração recomendada

DuraçãoStatusObservações
< 30 minutos✅ ÓtimoProcessar diretamente
30–60 minutos✅ BomPode exigir fragmentação
1–2 horas⚠️ Fragmentação recomendadaFrequentemente mais preciso em partes
> 2 horas⚠️ Deve fragmentarNecessário para estabilidade

Por que fragmentar áudio longo?

  1. Limites de memória: Evita erros de falta de memória
  2. Melhor precisão: Partes menores preservam melhor o contexto
  3. Processamento mais rápido: Paralelização possível
  4. Recuperação de falhas: Se uma parte falhar, outras podem ter sucesso
Estratégia de fragmentação:
# Split long audio into 30-60 second chunks with 5-10 second overlap
def chunk_audio(audio_path, chunk_length=60, overlap=5):
    # Implementation: split audio into segments
    # Process each chunk separately
    # Merge results with timestamps
    pass

Requisitos de qualidade de áudio

Padrões mínimos

Para precisão aceitável, o áudio deve atender a:
FatorMínimoÓtimo
Relação sinal-ruído> 10 dB> 20 dB
Taxa de bits (MP3)≥ 64 kbps≥ 128 kbps
Nível de volumeAudívelNormalizado para −3 dB
Ruído de fundoMínimoNenhum
Eco/reverberaçãoMínimosNenhum

Lista de verificação de qualidade

Antes de transcrever, verifique:
  • Fala clara: Falantes audíveis e compreensíveis
  • Pouco ruído: O fundo não cobre a fala
  • Volume consistente: Sem mudanças bruscas
  • Sem clipping: Sem distorção ou saturação
  • Bom microfone: Equipamento adequado

Requisitos de codec

Codecs recomendados

CodecFormatoQualidadeRecomendação
PCMWAVSem perdasMelhor para precisão
FLACFLACSem perdas✅ Excelente, comprimido
AACM4A, MP4Alta✅ Muito bom
MP3MP3Com perdas✅ Bom a ≥128 kbps
OGG VorbisOGGCom perdas✅ Boa qualidade
OPUSOPUSCom perdas✅ Bom, baixa latência

Boas práticas de codec

Para máxima precisão:
  • Use PCM (WAV) ou FLAC (sem perdas)
Uso prático:
  • Use AAC ou MP3 a ≥128 kbps (excelentes resultados)
Evite:
  • MP3 com taxa muito baixa (< 64 kbps)
  • Formatos muito comprimidos
  • Codecs telefônicos (AMR, G.711) salvo necessidade

Recomendações de pré-processamento

Antes de transcrever

O Whisper corrige muito automaticamente; o pré-processamento pode melhorar:

1. Normalizar volume

import numpy as np
from scipy.io import wavfile

def normalize_audio(audio_path, output_path, target_dB=-3.0):
    sr, audio = wavfile.read(audio_path)
    audio = audio.astype(np.float32)
    
    # Normalize to target dB
    max_val = np.max(np.abs(audio))
    target_linear = 10 ** (target_dB / 20)
    audio = audio * (target_linear / max_val)
    
    # Clip to prevent overflow
    audio = np.clip(audio, -1.0, 1.0)
    
    wavfile.write(output_path, sr, (audio * 32767).astype(np.int16))

2. Remover silêncio

# Remove leading/trailing silence
# Helps with processing time and accuracy

3. Redução de ruído (opcional)

Para gravações ruidosas:
# Use noise reduction libraries
# librosa, noisereduce, or specialized tools
# Only if background noise is significant

4. Reamostrar para 16 kHz (opcional)

Para otimizar o tamanho do arquivo:
import ffmpeg

stream = ffmpeg.input('input.wav')
stream = ffmpeg.output(
    stream,
    'output_16k.wav',
    ar=16000  # Resample to 16 kHz
)
ffmpeg.run(stream, overwrite_output=True)

Problemas comuns de áudio e soluções

Problema 1: Taxa de amostragem muito baixa (8 kHz)

Problema: Gravações telefônicas a 8 kHz podem ter menor precisão.
Solução:
  • Use o modelo medium ou large do Whisper (melhor em taxas baixas)
  • Faça upsample para 16 kHz (não restaura qualidade, ajuda no processamento)

Problema 2: Estéreo com falantes diferentes

Problema: Dois falantes em canais separados.
Solução:
# Extract each channel separately
import torchaudio

audio, sr = torchaudio.load('stereo.wav')
speaker1 = audio[0]  # Left channel
speaker2 = audio[1]  # Right channel

# Transcribe each separately
result1 = model.transcribe(speaker1)
result2 = model.transcribe(speaker2)

Problema 3: MP3 com taxa variável

Problema: VBR pode causar problemas em algumas ferramentas.
Solução:
  • Converta para taxa constante (CBR) ou WAV
  • O Whisper lida bem com VBR; CBR é mais previsível

Problema 4: Arquivos de áudio corrompidos

Problema: O arquivo toca, mas o Whisper falha.
Solução:
# Re-encode the file
import ffmpeg

stream = ffmpeg.input('corrupted.mp3')
stream = ffmpeg.output(
    stream,
    'fixed.wav',
    acodec='pcm_s16le'
)
ffmpeg.run(stream, overwrite_output=True)

Problema 5: Arquivos de áudio muito longos

Problema: Falta de memória ou processamento muito lento.
Solução:
  • Divida em partes de 30–60 segundos
  • Processe em série ou em paralelo
  • Una resultados com carimbos de data/hora

Recomendações por cenário

Para chamadas telefônicas

ParâmetroValorMotivo
Taxa de amostragem8–16 kHzQualidade telefônica
FormatoWAV ou MP3Padrão
Taxa de bits≥ 64 kbpsQualidade do codec
CanaisMonoPadrão em chamadas

Para reuniões (Zoom, Teams)

ParâmetroValorMotivo
Taxa de amostragem16–48 kHzAlta qualidade
FormatoMP4 (extrair áudio)Vídeo
Taxa de bits≥ 128 kbpsBoa qualidade
CanaisMono ou estéreoDepende da configuração

Para podcasts

ParâmetroValorMotivo
Taxa de amostragem44,1–48 kHzQualidade profissional
FormatoMP3, WAV ou M4AComuns
Taxa de bits≥ 128 kbpsBoa qualidade
CanaisMonoPadrão

Para entrevistas

ParâmetroValorMotivo
Taxa de amostragem16–48 kHzAlta qualidade
FormatoWAV ou FLACMáxima precisão
Taxa de bitsSem perdas ou ≥ 192 kbpsProfissional
CanaisMonoPadrão

Resumo: requisitos de áudio do Whisper

Requisitos mínimos

  • Formato: Qualquer formato suportado pelo FFmpeg
  • Taxa de amostragem: Qualquer (mínimo 8 kHz recomendado)
  • Profundidade de bits: 8 bits ou superior
  • Canais: Mono ou estéreo (mono preferível)
  • Tamanho do arquivo: Sem limite rígido (fragmente se > 100 MB)
  • Duração: Sem limite rígido (fragmente se > 1 hora)

Requisitos ótimos

  • Formato: WAV, FLAC ou MP3 (≥128 kbps)
  • Taxa de amostragem: 16 kHz (ótimo, sem reamostragem)
  • Profundidade de bits: PCM de 16 bits
  • Canais: Mono
  • Qualidade: Fala clara, pouco ruído
  • Pré-processamento: Volume normalizado, sem clipping

Referência rápida: checklist de preparação

Antes de transcrever com o Whisper:
  • Formato: WAV, MP3, FLAC, M4A ou outro suportado
  • Taxa de amostragem: 16 kHz (ótimo) ou outra suportada
  • Profundidade de bits: 16 bits (recomendada)
  • Canais: Mono (preferível) ou estéreo
  • Tamanho: < 100 MB (ou planeje fragmentação)
  • Duração: < 1 hora (ou planeje fragmentação)
  • Qualidade: Fala clara, pouco ruído de fundo
  • Volume: Normalizado, sem clipping
  • Codec: Sem perdas (WAV/FLAC) ou com perdas de alta qualidade (MP3 ≥128 kbps)

Testar seu áudio

Teste rápido

import whisper

# Load model
model = whisper.load_model("base")

# Test transcription
result = model.transcribe("your_audio.wav")

# Check if successful
if result["text"]:
    print("✅ Audio format is compatible")
    print(f"Detected language: {result['language']}")
else:
    print("⚠️ Transcription failed - check audio format")

Mensagens de erro comuns

ErroCausaSolução
"File not found"Caminho incorretoVerifique o caminho
"Unsupported format"Formato não suportadoConverta para WAV/MP3
"Out of memory"Arquivo grande demaisFragmente o áudio
"Empty audio"Arquivo corrompidoReencode

Resumo das boas práticas

  1. Use 16 kHz quando possível (ótimo para o Whisper)
  2. Prefira mono ao estéreo (processamento interno em mono)
  3. Use formatos sem perdas (WAV/FLAC) para máxima precisão
  4. Fragmente arquivos longos (> 1 hora) para precisão e estabilidade
  5. Normalize o áudio para níveis consistentes
  6. Minimize ruído de fundo para melhores resultados
  7. Escolha o tamanho do modelo (modelos maiores lidam melhor com áudio ruim)
  8. Teste primeiro com o modelo base antes de modelos maiores

Conclusão

O Whisper é muito flexível e lida com muitos formatos e qualidades. Seguir especificações ótimas garante a melhor precisão de transcrição:
  • Formato: WAV, FLAC ou MP3 (≥128 kbps)
  • Taxa de amostragem: 16 kHz (ótimo)
  • Profundidade de bits: PCM de 16 bits
  • Canais: Mono
  • Qualidade: Fala clara com pouco ruído
Lembre-se: áudio claro supera especificações de formato perfeitas. Mesmo com parâmetros ideais, gravação ruim reduz a precisão. Priorize fala clara, pouco ruído e bom posicionamento do microfone.
Em produção, plataformas como SayToWords tratam conversão de formato, reamostragem e otimização automaticamente, para que você foque em áudio claro em vez de detalhes técnicos.

Precisa de ajuda para preparar áudio para o Whisper? Veja nossos outros guias sobre pré-processamento, estratégias de fragmentação e otimização de precisão.

Experimente grátis agora

Experimente agora o nosso serviço de voz, áudio e vídeo com IA. Você terá não só transcrição de voz para texto de alta precisão, tradução multilíngue e diarização inteligente de falantes, como também geração automática de legendas para vídeos, edição inteligente de conteúdo audiovisual e análise sincronizada de áudio e imagem. Cobrimos cenários como atas de reunião, criação de vídeos curtos e produção de podcasts — comece hoje mesmo o seu teste gratuito!