O MP3 em poucas palavras

Por | 3 de novembro de 2012

Entenda como funciona o processo de compactação que mudou a maneira de se ouvir música

MPEG (Motion Picture Expert Group) é um grupo de trabalho para a regulamentação de padrões da ISO – International Standards Organization (www.iso.ch), mas também designa a série de padrões estabelecidos por esta instituição para a compactação, processamento, codificação e decodificação de dados digitais de áudio e de vídeo, usados pelas indústrias de cinema, vídeo e música.

Há uma grande confusão a respeito das siglas MPEG-1, MPEG-2, MPEG-4, MP3, MP4, etc. As fases de trabalho do grupo são designadas pelo número em MPEG-x, enquanto as camadas (layers) definem a complexidade do processo/algoritmo utilizado e são designadas por algarismos romanos. Assim, o MPEG-2 Layer III significa uma codificação realizada de acordo com o processo da camada III definido na especificação MPEG-2. No caso dos dados de áudio, a especificação MPEG-1 (ISO/IEC 11172-3) se refere a conteúdo em mono ou em dois canais (estéreo), com taxas de amostragem de 32, 44.1 ou 48 kHz, enquanto que a especificação MPEG-2 (ISO/IEC 13818-3) se refere a conteúdo multicanal (5.1) mas também a conteúdo mono com taxas bastante baixas (abaixo de 64 kbps). Quanto às camadas (layers), os algoritmos das camadas superiores oferecem uma codificação mais eficiente, de maneira que um conteúdo codificado em Layer III terá uma qualidade superior a um conteúdo em Layer II. Já a sigla MP3, usada universalmente como extensão nos arquivos compactados conforme os padrões MPEG-1/MPEG-2 Layer III, foi definida inicialmente pela equipe do Fraunhofer IIS (www.iis.fraunhofer.de), na Alemanha, uma das instituições que mais contribuíram para o desenvolvimento da compactação de áudio e que realiza inúmeras outras pesquisas neste campo.

Como funciona a compactação em MP3

As técnicas para reduzir tamanho de arquivos são antigas e já bem conhecidas nos compactadores zip, arj e similares. Este tipo de compactação, no entanto, preserva totalmente a integridade dos dados, de maneira que o arquivo original pode ser recuperado fielmente, sem perdas (lossless). Um arquivo de imagem (bmp) ao ser zipado pode cair a 70% ou menos do tamanho original, mas na maioria dos arquivos de áudio dificilmente se chega a 90% do original (é importante observar que estamos falando de redução sem qualquer perda no conteúdo).

Considerando que um arquivo de áudio WAV estéreo com qualidade de CD requer uma banda de cerca de 1.5 megabits por segundo para ser transferido, uma redução de 10% ainda irá requerer uma banda muito grande, pouco significativa para a maioria das necessidades comuns, como, por exemplo, a transferência via internet. A única maneira de se reduzir drasticamente o tamanho do arquivo é retirando os dados que não são essenciais para a recuperação do conteúdo principal, ou seja, uma compactação com perdas (lossy). A grande dificuldade para isto está justamente em saber o que se pode retirar do conteúdo original para que o resultado não seja deteriorado significativamente.

O que tornou o MP3 tão popular foi a sua eficiência em reduzir a quantidade de dados (bits) necessários para representar o conteúdo de áudio, mantendo ainda uma qualidade muito boa. Para conseguir isto, são usadas técnicas sofisticadas baseadas em características da percepção auditiva do ser humano.

Estudos demonstraram que nosso ouvido detecta as frequências sonoras por meio de uma série de células ciliadas que atuam como um banco de filtros seletivos, chamados de bandas críticas. A disposição dessas bandas não é linear e suas larguras variam desde 100 Hz, nas regiões dos graves, até 4 ou 5 kHz, nas regiões dos agudos, havendo ainda uma superposição das bordas das bandas adjacentes. O fenômeno chamado de “mascaramento de frequência” acontece quando uma frequência de baixa intensidade ocorre simultaneamente a outra frequência de maior intensidade. Este tipo de mascaramento é mais atuante quando as frequências estão muito próximas, e muito mais ainda quando elas estão dentro da mesma banda crítica. Além do fenômeno de mascaramento que acontece dentro do espectro de frequências, existe ainda o “mascaramento temporal”, que se dá quando um som muito forte faz com que o ouvinte tenha pouca ou nenhuma percepção dos sons fracos que ocorrem imediatamente depois (e imediatamente antes, dependendo das condições).

mp3_1

Fig.1.a – Mascaramento Frequencial

mp3_2

Fig.1.b. Mascaramento Temporal

A maioria dos sinais de áudio, principalmente conteúdo musical, possui muitas componentes de frequências com intensidades diferentes, que não são percebidas da mesma forma por nossos ouvidos. Um processo criterioso de compactação com perdas (lossy), como o MP3, é capaz de preservar aqueles elementos que normalmente seriam bem percebidos e, por outro lado, representar com menos precisão – ou mesmo eliminar – os elementos mascarados, que seriam pouco percebidos. Além da redução de dados conseguida com esta técnica de mascaramento, se o conteúdo de áudio estiver em estéreo, então o algoritmo pode reduzir ainda mais a quantidade de bits por meio de uma outra técnica, chamada de intensity stereo, com a qual, em determinadas circunstâncias, os sinais de ambos os canais são representados de forma idêntica (e apenas uma vez), sendo diferenciados somente pela intensidade.

Com todos esses artifícios, consegue-se então reduzir significativamente a quantidade de dados necessários para representar o áudio, tornando os arquivos bem menores e, consequentemente, requerendo muito menos banda para a sua transferência. De uma maneira geral, um áudio codificado em MP3 com uma taxa de 128 kbps pode ficar com cerca de 10% do tamanho do áudio original e ainda manter uma qualidade muito próxima à do CD.

A Figura 2 mostra resumidamente em diagramas de blocos os processos de codificação e decodificação. Na codificação, o sinal de áudio original (em formato digital PCM) passa por um banco de filtros que separa o espectro em diversas bandas de frequências. Ao mesmo tempo, o sinal também passa através de um modelo psicoacústico que avalia a relação entre a energia do sinal e os limites de mascaramento de cada banda. No estágio seguinte, esta avaliação é usada para determinar o número necessário de bits em cada banda para representar o sinal sem se perceber o ruído de quantização. No último estágio, os bits representando o áudio de cada banda são combinados, juntamente com eventuais dados auxiliares, para então formar o fluxo de bits do sinal já compactado. Na decodificação, o processo ocorre praticamente de forma inversa: o fluxo de bits é separado, os valores de cada banda são recuperados e o sinal é então reconstruído no domínio do tempo.

mp3_3

Fig.2 – Processos de codificação e decodificação

Na maioria dos encoders (codificadores), pode-se escolher a taxa de bits (bit rate) dentre as opções especificadas pelo padrão MP3, que vão desde 32 até 320 kbps. Obviamente, quanto menor for a taxa de bits escolhida, pior será a qualidade do áudio compactado, pois haverá menos bits para se representar o sinal em cada banda e o ruído/erro de quantização será mais perceptível. Em muitos encoders também é possível optar por uma codificação com taxa variável (VBR – variable bit rate), de maneira que se possa garantir um determinado nível de qualidade. Mas neste caso a quantidade de redução no tamanho do arquivo poderá não ser tão previsível. Além disto, embora a opção de VBR seja especificada pelo padrão MPEG, nem todos os decoders (decodificadores) a implementam, o que poderá causar problemas na reprodução do arquivo.

Codificação em MP3

A qualidade do áudio compactado depende de diversos parâmetros no processo de codificação e, sobretudo, do desempenho do encoder, isto é, a eficiência de seus algoritmos para efetuar os processamentos necessários. É possível encontrar diversos encoders na internet, gratuitos ou não, e o resultado que se consegue com eles também pode variar muito. Dentre eles está o encoder/decoder desenvolvido pelo Fraunhofer Institute, que pode ser licenciado para ser usado comercialmente em outros softwares, e também o Lame (http://lame.sourceforge.net/), resultado de um projeto global de código aberto e que é licenciado gratuitamente através de LGPL (Lesser General Public License).

mp3_4

Fig. 3- O encoder Lame operando dentro do software Reaper

Os modos mais comuns de codificação em MP3 são descritos resumidamente a seguir.

CBR (constant bit rate) – Este é o modo mais usado pelos encoders. A taxa de bits é definida pelo usuário e permanece constante. Alguns encoders oferecem ainda opções para se codificar o conteúdo original em estéreo: mono (o material é convertido para mono e então codificado), stereo (o encoder compartilha a largura de banda disponível entre os canais), dual channel (os dois canais são codificados separadamente) e intensity stereo (algumas componentes de frequências altas de ambos os canais são codificadas como um só sinal (soma dos dois canais) e apenas as diferenças de intensidade deles é preservada).

VBR (variable bit rate) – Neste modo, é definido previamente o nível de qualidade final desejado para o arquivo e por isto a quantidade de bits necessária pode variar de acordo com as circunstâncias no decorrer do conteúdo do áudio, produzindo uma taxa de bits igualmente variável. Por exemplo, trechos de silêncio no arquivo de áudio podem ser codificados a uma taxa de bits menor sem comprometer a qualidade final do conteúdo. Embora este modo possa gerar arquivos com uma qualidade média melhor e um tamanho menor, alguns decoders não o reconhecem.

ABR (average bit rate) – Este modo é uma variante do VBR disponível no encoder Lame. A diferença dele para o VBR está no uso do número de bits necessários para representar o trecho de áudio. A taxa de bits varia em função do ruído mínimo de quantização desejado para manter o melhor nível de qualidade, mas na média ela é mantida bem próxima da taxa especificada.

É importante ressaltar que a compactação varia conforme o conteúdo do áudio, mesmo usando o mesmo encoder e com as mesmas características de codificação. A tabela abaixo mostra os resultados obtidos com diferentes tipos de arquivos de áudio codificados com o Lame.

Tipo de música

WAV

ABR

redução

CBR

redução

VBR

redução

Piano (Chopin)

19.256

1.630

8,5%

1.748

9,1%

1.741

9,0%

Orquestra (Vivaldi)

36.235

3.110

8,6%

3.288

9,1%

3.440

9,5%

Rock ao vivo (Barão)

54.977

4.713

8,6%

4.838

8,8%

5.354

9,7%

Eletronica (JM Jarre)

33.185

2.910

8,8%

3.012

9,1%

3.363

10,1%

Voz (locução)

13.672

1.164

8,5%

1.242

9,1%

1.047

7,7%

 

Uma observação final sobre a qualidade do MP3: Se um áudio não fica bom quando compactado para taxas muito baixas, então o jeito é usar uma taxa mais alta. Se o áudio fica ruim mesmo quando compactado para taxas altas, o problema pode estar no modo como o encoder trata o formato estéreo. Neste caso, tente compactar usando o modo dual channel. Além disto, a qualidade da conversão para MP3 depende diretamente da qualidade do conteúdo original. Se um arquivo já está numa taxa baixa, não adianta convertê-lo para uma taxa mais alta que não vai melhorar sua qualidade.