Ricardo Nunes Luís Paiva Caramona
45293 - MEEC - IST
Cargas de Igual Intensidade Sonora
Internet + Napster + Mp3 = Pirataria
Distribução muito fácil de conteúdo áudio
Foi desenvolvido em 1987, pelo instituto Fraunhofer juntamente com a universidade de Erlangen, ambos na Alemanha. Tornando-se um standard ISO/IEC no ano de 1991, com a denominação de MPEG áudio layer 3 (IS 11172-3 e IS 13818-3 ), os seus criadores decidiram apelidá-lo de mp3. Com altas taxas de compressão (1/12), relativamente baixa complexidade computacional, e mantendo praticamente intacta a qualidade do áudio, acabou por ser um codec revolucionário, com implicações que nem os criadores sonharam. A sua grande capacidade de compressão deve-se sobretudo ao facto de eliminar irrelevância no sinal de áudio, usando conhecimento sobre a percepção dos sons pelo sistema auditivo humano (o cliente final), psicoacústica, ramo no qual o instituto Fraunhofer fez muita investigação, levando depois ao desenvolvimento do standard. A patente do sistema pertence ao instituto Fraunhofer, e à companhia Thompson, até 2011, data na qual expira.O software/hardware que use o codec está portanto sujeito a “roylaties”. Note-se que muitos países não respeitam, a nível governamental, as patentes.
O sistema auditivo humano, não capta, não interpreta, nem “sente” todos os sons da mesma maneira, a psicoacústica estuda o modo no qual os humanos percebem o som.
O ouvido humano consegue captar sons na gama entre 20Hz a 20KHz, (existindo excepções como em tudo) e dentro de esta gama, a sensibilidade varia com a frequência:
- Figura1: limiar de audição humana -
O limite superior (por volta dos 120dBA) é aquele em que o som passa a ser doloroso e potencialmente prejudicial à saúde, como se pode ver a gama dinâmica do ouvido humano é sensivelmente 100dB. A titulo de exemplo ilustram-se as intensidades sonoras de alguns tipos de sons:
Lançamento de um Foguetão…..180dB
Jacto a voar………………………140dB
Sirene de Fogo a 1 Metro……….130dB
Jacto a descolar………………….120dB
Discoteca…………………………110dB
Metropolitano………………..…..100dB
Trânsito citadino…………………..90dB
Despertador (1 metro) …………....80dB
Restaurante………………………...70dB
Ar condicionado…………………...60dB
Estrada (50 metros)………………...50dB
Sala…………………………………..40dB
Biblioteca……………………………30dB
Estúdio……………………………....20dB
Limiar de Audição……………………0dB
A intensidade de referência (0 dB) é de , para um
som de 1KHz.
120dB correspondem a 120=10log(P/Pref) ó P = , pelo que
a gama dinâmica, em unidades lineares, é de 17 ordens de grandeza, ou seja o
ouvido tem uma enorme gama dinâmica.
- Figura2: curvas de igual intensidade sonora -
Como se pode ver neste gráfico, o nível de som percebido pela audição humana, difere do nível real, dependendo da frequências, nas baixas frequências o efeito é mais pronunciado. Estas curvas foram determinadas experimentalmente por Robinson & Dadson em 1956, seguindo os trabalhos originais de Fletcher e Munson, pelo que se refere a elas como curvas de Fletcher-Munson.
É o modelo matemático do ouvido humano, divide o espectro audível em bandas de largura não uniforme, dentro das quais, as características auditivas se podem considerar constantes.
- Figura3: banda critica Bark vs bandas críticas mp3 -
No gráfico compara-se a escala Bark, que é o modelo para as bandas criticas não uniformes da audição humana, e o modelo simplificado de 32 bandas uniformes usado no mp3. Na escala de Bark a largura das bandas críticas aumenta com a frequência.
Este fenómeno consiste no facto de certos sons, na presença de outros se tornarem inaudíveis, sendo portanto irrelevantes nessa situação para a percepção, podendo ser eliminados de modo a obter compressão.
Existem 2 tipos fundamentais de mascaramento:
Na Frequência
- Figura4:mascaramento na frequência-
- Figura5: assimetrias no mascaramento na frequência -
A presença de um tom numa dada freqüência faz com que sons em frequências próximas tenham de ter intensidades superiores ao limiar de audição para ser ouvidas, ou seja esses outros sons são mascarados ou escondidos pela presença do som mascarante. O efeito de mascaramento na frequência como se pode ver não é simétrico.
Exemplo do efeito mascarante no limiar de audição:
- Figura6: efeitos do o mascaramento no limiar-
No Tempo
A ocorrência de um som, faz com que mesmo quando o som acaba, exista uma espécie de som vestigial que demora tipicamente 200ms a desaparecer (pós-mascaramento). Um efeito mais estranho é o pré mascaramento, que ocorre antes do inicio do som mascarante, as pesquisas sobre este fenómeno ainda não são conclusivas, mas sabe-se que tem durações típicas de 20 a 50ms.
- Figura7: mascaramento temporal -
A base da codificação perceptiva é a eliminação dos sons que não podem ser ouvidos, ou seja irrelevantes, devido a fenómenos de mascaramente ou fora do limiar de audição. O truque é injectar o máximo ruído de quantificação possivel (poupando bits), e desde que este fique abaixo dos limiares de mascaramento não é percebido pelo sistema auditivo humano. O nível de ruído de quantificação inserido é constante em cada banda crítica, ou seja o numero de bits que cada banda usa para quantificar é definido pelo análise do sinal nessa banda com base no modelo psicoacústico. No fundo é um código fixo-variável, em que a determinação do numero de bits resulta do modelo psicoacústico. Pode haver bandas com 0 bits.
Um sinal de áudio de banda larga, tem de banda [10, 22000] Hz, pelo que para respeitar o teorema da amostragem o ritmo a que se tiram amostras tem de ser pelo menos 44KHz. Se para dar margem se usar 48KHz, quantificando com PCM de 16bits o ritmo binário será de 768Kbit/s. Nos cds de áudio digital, introduzidos no principio dos anos 80, a frequência de amostragem é de 44100Hz, quantificados em 2 canais PCM de 16 bits, o que dá um ritmo binário de 44100*2*16= 1411200 bit/s ou seja sensivelmente 1,4 Mbit/s. Num cd de 700 MBytes = 5600Mbits, “cabem” 66,6 minutos de áudio (~1hora). A norma mp3 foi desenhada para obter ritmos binários entre 8 e 320kbs.O limiar em que a qualidade se pode considerar subjectivamente igual ao PCM original é de 128kbit/s (dependendo da qualidade do codificador) assim no mesmo cd, usando mp3, é possível gravar 729,1 minutos! (~12horas), ou seja 12 vezes mais. As frequências de amostradas permitidas pelo mp3 são 33KHz, 44.1KHz e 48KHz, sendo o bit rate mais usado de 128Kbit/s A norma foi desenhada de modo a respeitar os seguintes requisitos:
elevada compressão mantendo elevada qualidade áudio
rapidez na codificação/descodificação
facilidade e flexibilidade de implementação, só o “bit
stream” e o descodificador sendo que assim melhoramentos no codificador
podem ser introduzidos, sem necessidade de se alterar o“standard”
A norma mpeg1 define 3 camadas para o áudio (1, 2 e 3), os débitos binarios para que foram desenhadas são os seguintes:
1 – [32-448] kbit/s factores de compressão ~4
2 – [32-384] kbit/s factores de compressão ~8
3 – [32-320] kbit/s factores de compressão ~12
Exitem 2 modelos psicoacústicos sugeridos na norma, a camada 3 só usa o 2º, que é o mais complexo, atingindo maior compressão à custa de maior computação. A camada 3 é desenhada de modo a ser compatível com a camada 1 e 2. O mp3 pega em blocos de 1152 amostras PCM e codifica-os de cada vez, conseguindo atingir factores de compressão 12/1, praticamente sem perda de qualidade.
Os ficheiros mp3 são constuidos por cabeçalhos seguidos de dados que são no fundo coeficientes MDCT comprimidos, isto repetindo-se as vezes que for necessário. No inicio do ficheiro podem ainda existir metadados com informações sobre o conteúdo.
Metadados – header – dados – header – dados – header – dados - etc…
O cabeçalho de um ficheiro mp3 é composto por 32 bits:
Bits Função
[1,12] Sincronismo
13 Versão
[14,15] Camada
16 “Flag” de protecção de erro
[17,20] Ritmo Binário
[21,22] Frequência de amostragem
23
24
[25,26] Modo
[27,28] Joint Stereo
29 Copyright 0/não 1/sim
30 Original 0=Cópia
[31,32] Ênfase
- Figura8:diagrama de blocos de um codificador mp3 -
Note-se que o sinal de saída pode ter débitos até 320Kbit/s
Banco de Filtros
Na entrada do sinal PCM existe um banco de filtros híbrido, que é um primeiro bloco de filtros contínuos no tempo, estes filtros têm a função de separar o sinal em 32 bandas de frequência, que simulam as bandas críticas da audição humana, embora só de modo aproximado, as que o mp3 usa têm largura uniforme, e no modelo psicoacústico elas têm larguras variáveis com a frequência. Este banco de filtros é compatível com as camadas 1 e 2.
MDCT
Apenas na camada 3, a seguir ao banco de filtro há um bloco que aplica uma versão modificada da transformada DCT (discrete cosine transform), de modo a ter uma melhor resolução na frequência, essa resolução pode ser adaptada de modo a resolver um artefacto (pré eco). Tem comutação dinâmica de janela. O numero de pontos da MDCT pode ser de 18 ou 6, janelas mais pequenas permitem eliminar o efeito de pré eco, que é o facto de em zonas de silêncio uma janela muito grande introduz ruído que não existia antes da transformada.
As janelas têm uma sobreposição de 50% para minimizar o efeito de bloco. A quantificação já é não uniforme à partida (antes de se usar o modelo psicoacustico) introduzindo mais erro nos coeficientes de maior amplitude, onde a sensibilidade aos erros é menor.
FFT
Este bloco efectua uma Fast Fourier Transform, que tem a função de passar amostras no tempo do sinal de entrada para amostras na frequência, que servirão de entrada no modelo psicoacústico.
Modelo Psicoacústico
Este é o bloco “mágico”, permite ao mp3 atingir as suas elevadas taxas de compressão (1/12).
Como o standard só define o bit stream e o descodificador, esta parte é apenas informativa, estando descritas duas implementações de exemplo no standard, o que faz que os desenvolvedores de codificadores de mp3 têm aqui a parte principal onde aplicar a sua inteligência, pois é neste bloco que a qualidade e do codificador vai ser definida.
A entrada é o sinal PCM já na frequência, o processamento é feito por regras da psicoacustica, e na saída vão os valores dos níveis de mascaramento para cada “fatia” de freqüência (que no mp3 são aproximações das bandas críticas da audição). Portanto desde que o ruído de quantização que esteja abaixo deste nível de mascaramento, não é percebido pelo sistema auditivo. Esta quantização variável com base nos efeitos de mascaramento, permite eliminar irrelevância.
NMR (Noise-to-Mask Ratio)
É a diferença entre o ruído de quantificação e a máscara, numa banda crítica, desde que o seu valor seja negativo, o ruído é inaudível. Esta relação tem de ser minimizada, para se introduzir o máximo de ruído de quantificação que seja possível mascarar, poupando assim o numero máximo de bits.
- Figura9: valores calculados para os mascaramentos -
Ciclo de Quantificação não uniforme
Aqui o segredo é levar o ruído de quantização ao máximo (poupando bits), desde que fique abaixo do limiar de mascaramento, ou seja, mantendo a qualidade, pois o ruído abaixo desse nível é imperceptível.Este processo não é normativo, ou seja, a maior parte do desenvolvimento dos codificadores é neste bloco, pois o que melhor conseguir usar o modelo psicoacústico para “poupar” bits, e mantendo transparência de qualidade, terá uma melhor performance.Uma implementação possível deste bloco é a seguinte:
Para cada banda crítica:
Ciclo de débito: o débito é definido, ajustando-se iterativamente o
passo de quantificação,ou seja o numero de bits usado, até o ritmo ser
respeitado.
Ciclo de distorção: O passo de quantificação é ajustado até que o ruído
gerado pela quantificação esteja abaixo dos limiares de mascaramento.
O ciclo de débito é externo, ou seja, o ciclo interno, de débito corre cada vez que o externo define um nível de distorção, tentando adaptar a codificação de Huffman para gerar o débito necessário.
Os 2 ciclos podem não convergir, sendo necessárias condições que obriguem a finalização.
Codificação de Huffman
Os coeficientes MDCT, quantificados com base no modelo psicoacústico, são comprimidos usando compressão entrópica sem perdas de Huffman.
Codificação de Headers
Os headers são também comprimidos entropicamente.
Multiplexagem e CRC
O bitstream mp3 é multiplexado com partes de headers e payload, pode ainda levar um id3 tag.
A sequência é a seguinte:
Id3 Tag
Header
Payload mp3
Header
Payload mp3
Header
Payload mp3
…
- Figura10: descodificador mp3 -
A estrutura do descodificador é definida no standard, sendo por isso idealmente igual nas implementações.
Desmultiplexer
Separa o bitstream em headers e dados mp3.
Descodificação de Huffman
Descodifica os coeficientes MDCT comprimidos entropicamente.
Transformação MDCT inversa
Passa as amostras para o domínio do tempo.
Banco de filtros de síntese
Junta as 32 bandas num sinal PCM único pronto a ser amplificado e transduzido de eléctrico para sonoro.
O mp3 tem 5 modos de funcionamento, e no máximo suporta 2 canais, quando foi desenvolvido, um dos requisitos era a baixa complexidade e alta compressão.
Mono: 1 canal de áudio
Stereo: 2 canais de áudio com semelhanças
Dual: 2 canais de áudio independentes
Joint Stereo: modo para comprimir sinais stereo, a partir da semelhança entre os 2 canais
Mono/Stereo: um modo híbrido
Num sinal de áudio poderão existir zonas com muito conteúdo, e outras zonas relativamente calmas, ou até de silêncio, pelo que o uso de um bitrate constante poderá ser desperdiçado nessas zonas mais calmas, usando mais bits por segundo em zonas com mais informação e menos em zonas de silêncio consegue-se uma melhor eficiência no uso dos bits.
Vantagens do VBR
Ficheiros mais pequenos
Ideal para audiobooks, ou seja voz, pois aí existem muitos momentos de
silêncio.
Desvantagens do VBR
Alguns dispositivos mais antigos podem não suportar este modo.
No modo de streaming podem gerar problemas, devido ao bitrate variável.
Nos ficheiros mp3 podem ser incluídas ID Tags, contendo informação sobre o conteúdo, como o nome, o autor, data, ou seja metadados (dados sobre os dados).
Existem muitas implementações de codificadores / descodificadores de mp3. Sendo que o descodificador é standardizado, a qualidade das diferentes implementações está no codificador, pelo que o esforço de researsh & development neste ponto faz realmente a diferença na qualidade do áudio, quanto melhor o codificador “trabalhar” o bitstream, comprimindo melhor sem no entanto degradar a qualidade gerando “artefactos” áudio por exemplo, mais valioso será. O codificador LAME é geralmente o mais popular na internet.
Um artigo de divulgação sobre o formato mp3, não estaria completo sem menção ao que o tornou
mundialmente famoso, o facto de ter gerado a 1ª vaga de pirataria em larga escala na Internet.A troca de musicas mp3, começou por ser feita em canais de IRC (chatrooms), até que em 1999, Shawn Fanning decidiu implementar uma maneira de ser mais fácil utilizadores partilharem e procurarem musicas, ai nasceu o Napster. Milhões de downloads ilegais de musicas no formato mp3 levaram ao surgimento de processos legais por parte da RIAA e de bandas famosas (Metallica) levaram os tribunais a fecharem o site Napster.Hoje em dia nas redes peer-to-peer (ex: emule), a troca de ficheiros mp3 continua imparável, e com o aumento de largura e banda para o acesso à internet passou também a haver grandes trocas de filmes, codificados noutro codec revolucionário Divx, que é no fundo uma versão alterada do Standard mpeg4-AVC. Pode-se afirmar que estes formatos de compressão abriram uma “caixa de Pandora” em termos de pirataria global na Internet.
O instituto Fraunhoffer desenvolveu uma versão multicanal 5.1, ou seja 5 canais com mais 1 de graves), chamada mp3 surround. Esta inovação permite que o mp3 passe de 2 canais para 5.1, podendo assim ser usado em cinema digital e home cinema, competindo com o codec líder nessa área, o Dolby digital (AC3).
Embora hoje em dia já haja codecs de áudio melhores que o mp3, o facto de com 256bit/s, a qualidade ser praticamente indistinguível do original, e de que muitas pessoas coleccionaram álbum musicais de proporções dantescas codificados em mp3 haverá uma tendência de continuar a usa-lo, pois não é nada prático de recodificar gigabytes de música para um formato mais eficiente, mais ainda quando a capacidade de armazenamento hoje em dia é bastante barata, além dos muitos dispositivos de leitura mp3 existentes em uso.
[1] Fraunhoffer IIS [Online]. Available: http://www.iis.fraunhofer.de/EN/index.jsp
[2] Mp3, Hydrogenaudio Knowledgebase [Online]. Available : http://wiki.hydrogenaudio.org/index.php?title=MPEG1_Layer_3
[3]Fernando Pereira (2007). Apontamentos de Comunicação áudio e vídeo, Mpeg-1, [Online].Available:http://www.img.lx.it.pt/~fp/cav/ano2006_2007/Slides/CAV_7_MPEG1_2007_Web.pdf
[4] KARLHEINZ BRANDENBURG, Mp3 AAC, Fraunhofer Institute for Integrated Circuits FhG-IIS A, Erlangen, Germany
[5] Brandenburg and H. Popp, An Introduction to Mpeg1 Layer3, Fraunhofer
Institut für Integrierte Schaltungen (IIS)
[6] History of napster vs riaa and file sharing by Sean McManus [Online]. Available:
http://www.sean.co.uk/a/musicjournalism/var/historyoffilesharing.shtm
[7] Mp3licensing.com [Online]. Available: http://www.mp3licensing.com/
[8] Tristan Jehan PhD Thesis - Chapter 3 [Online] Available: http://web.media.mit.edu/~tristan/phd/dissertation/chapter3.html