O que é um codec de áudio?
Um codec de áudio (codificador/decodificador) é o algoritmo que comprime e descomprime o som. Ele determina como o áudio é armazenado ou transmitido, o tamanho do arquivo para uma determinada qualidade e quais dispositivos podem reproduzi-lo. Escolher o codec certo exige equilibrar fidelidade, taxa de bits, latência e compatibilidade.
Codec e contêiner
Um codec não é a mesma coisa que um contêiner. Um contêiner (como MP4, MKV ou WebM) é o invólucro que pode conter um ou mais fluxos de áudio e vídeo, além de metadados. O codec é o método de compressão usado dentro desse contêiner. Por exemplo, um arquivo MP4 frequentemente contém áudio AAC, enquanto um arquivo WebM normalmente contém áudio Opus ou Vorbis.
Como funcionam os codecs de áudio
O áudio digital bruto geralmente é armazenado como PCM (modulação por código de pulso). O PCM é preciso, mas ocupa muito espaço. Um codec reduz o tamanho aplicando compressão. Codecs sem perdas comprimem PCM sem remover informações. Codecs com perdas vão além, descartando detalhes menos audíveis ao ouvido humano (modelagem psicoacústica), o que gera arquivos muito menores à custa de uma redução na qualidade.
Com perdas, sem perdas e sem compressão
- Com perdas: remove dados para reduzir o tamanho dos arquivos. Ideal para streaming e escuta em geral quando o tamanho importa. Exemplos: MP3, AAC, Opus.
- Sem perdas: preserva todas as informações, mesmo com compressão. Ideal para masterização, arquivamento e fluxos de trabalho profissionais. Exemplos: FLAC, ALAC.
- Sem compressão: usa codificação PCM sem compressão. Ideal para pipelines de edição que precisam eliminar a sobrecarga da compressão. O PCM costuma ser armazenado em contêineres WAV ou AIFF; esses contêineres não são codecs.
Principais configurações que afetam a qualidade e o tamanho
- Taxa de bits: o ajuste mais direto para controlar tamanho e qualidade. Uma taxa de bits maior geralmente significa melhor qualidade. A taxa de bits variável (VBR) se adapta à complexidade; a taxa de bits constante (CBR) é previsível.
- Taxa de amostragem: a quantidade de amostras por segundo (por exemplo, 44,1 kHz, 48 kHz). Taxas maiores capturam mais detalhes, mas aumentam o tamanho.
- Canais: mono, estéreo ou multicanal. Quanto mais canais, maior o tamanho.
- Profundidade de bits: relevante principalmente para áudio sem perdas ou sem compressão (por exemplo, 16 bits ou 24 bits).
Codecs de áudio comuns e quando usá-los
- AAC: uma boa opção padrão para música e reprodução em geral; excelente compatibilidade em MP4.
- MP3: legado, ainda amplamente suportado, mas menos eficiente que AAC ou Opus na mesma taxa de bits.
- Opus: ótimo para voz, tempo real e streaming com baixa taxa de bits; excelente qualidade em arquivos pequenos.
- FLAC: compressão sem perdas para arquivamento e distribuição de áudio de alta qualidade.
- PCM: codificação de áudio sem compressão para pipelines de edição e intercâmbio, normalmente armazenada em contêineres WAV ou AIFF.
Como escolher o codec certo
- Streaming ou podcasts: AAC ou Opus, dependendo dos requisitos de suporte dos dispositivos.
- Voz ou tempo real: Opus para baixa latência e eficiência.
- Arquivamento ou masterização: FLAC ou PCM sem compressão em um contêiner WAV.
- Compatibilidade máxima: MP3 ainda leva vantagem em dispositivos legados, mas AAC também tem amplo suporte.
Codificar áudio com a Transloadit
Nosso Robot 🤖 /audio/encode permite converter áudio para codecs populares com poucos parâmetros. Veja um exemplo mínimo que converte um upload para MP3 a 128 kbps:
Para o Step de armazenamento, crie sua própria credencial de Template
do tipo Amazon S3, atribua a ela um nome e substitua YOUR_AWS_CREDENTIALS pelo nome salvo.
Use um bucket privado com S3 Block Public Access habilitado e não forneça cabeçalhos de ACL ou de
concessão de permissões.
A configuração bucket-default omite o cabeçalho de ACL gerado; ela não torna um bucket
privado. A leitura de resultados privados exige autorização de leitura separada; uma URL retornada
não concede acesso.
{
"steps": {
"encode_mp3": {
"robot": "/audio/encode",
"use": ":original",
"preset": "mp3",
"bitrate": 128000
},
"store": {
"robot": "/s3/store",
"use": "encode_mp3",
"credentials": "YOUR_AWS_CREDENTIALS",
"acl": "bucket-default"
}
}
}
Precisa de um resultado sem perdas? Escolha uma predefinição adequada para codificação sem perdas;
aumentar bitrate não torna um codec com perdas um codec sem perdas. Para outras
taxas de amostragem, ajuste sample_rate conforme necessário.
Codificação de áudio
Codificação FLAC de alta qualidade
(English)Codificação de áudio
Codificação com uma taxa de bits específica
(English)Codificação de áudio
Normalização de volume
(English)Próximos passos
- Explore a codificação de áudio e consulte a documentação do 🤖 /audio/encode.
- Precisa de ajuda para escolher um codec? Entre em contato em hello@transloadit.com.
