MP3 vs. AAC
Transcrição
MP3 vs. AAC
MP3 vs. AAC Carlos Alves – nº55256, André Serrano – nº55094 Instituto Superior Técnico Av. Rovisco Pais, 1049-001 Lisboa, Portugal E-mail: {zni4, alcserrano}@hotmail.com ABSTRACT A largura de banda disponível é limitada, de modo que a tecnologia áudio tem vindo a evoluir ao longo do tempo, com foco na necessidade de reduzir drasticamente as taxas de transmissão de música digital, e portanto, fazendo uso da compressão. Assim, este artigo confronta os métodos e processos de codificação utilizados em duas tecnologias de áudio, o MP3 (MPEG-1/2 Audio Layer 3) e o AAC (Advanced Audio Coding - MPEG-2 Part 7) evidenciando as diferenças, as especificações, as vantagens/desvantagens, o impacto do aparecimento dos dois formatos e os princípios nos quais estas normas assentam, sendo alguns deles comuns a ambas. 1. ITRODUÇÃO O formato digital tem vantagens, quando comparado com o analógico, como uma melhor qualidade de áudio, facilidade de processamento e menor consumo de largura de banda. Além do mais, a utilização deste formato permite a compressão, O que torna os ficheiros de áudio mais pequenos, reduzindo a quantidade de dados, o uso de memória e a velocidade de transmissão dos ficheiros. Ambos os formatos em estudo utilizam algoritmos de compressão com perdas que exploram o modelo psicoacústico, resultando na remoção, de sons inaudíveis ao ouvido humano. A codificação da restante informação é feita de forma eficiente, permitindo a criação de ficheiros de áudio relativamente pequenos e de qualidade aceitável. 4. 2. CRESCIMETO E IMPACTO Em 1979, o Professor Dieter Seitzer desenvolve o primeiro processador de sinais digitais capaz de realizar a compressão de áudio. Em seguida o centro de investigação Fraunhofer, começa a investigar a codificação de áudio de alta qualidade a baixo débito binário, num projecto denominado EUREKA Project EU147 (1987). Em 1988, estabelece-se o MPEG (Moving Picture Experts Group), grupo de trabalho da ISO (International Organization for Standardization) com a responsabilidade desenvolver padrões para a compressão de áudio e vídeo digitais. Após testes rigorosos, a ISO sugeriu que a codificação de áudio apresentasse 3 abordagens em escala de complexidade e eficiência: Layer 1 e Layer 2, mais simples, baseadas no codec MUSICA- e Layer 3, de alta eficiência e maior complexidade, baseada no ASPEC. Assim, numa fase inicial, o MPEG Layer-3, foi utilizado para processamento de sinais digitais, permitindo a utilização de linhas telefónicas RDIS para transmissão de áudio de alta qualidade. De seguida, em 1995, começam a ser partilhados através da internet os primeiros ficheiros de MP3, o que juntamente com o aparecimento dos primeiros leitores de mp3 como o Winamp, em 1997, e de serviços de partilha de ficheiros, como o conhecido -apster, 1999, que levam a um crescimento exponencial da popularidade do MP3. No início de 1994, através de testes verificou-se que novos algoritmos de codificação, sem compatibilidade com o MPEG-1, possibilitavam uma melhoria significativa na eficiência da codificação. Este factor em conjunto com utilização do MP3 requerer licença para distribuição de codificadores/descodificadores, permitiu o desenvolvimento de alternativas. Como resultado, foi definida uma nova norma de codificação de áudio para o MPEG, o MPEG-2 Advanced Audio Coding (AAC) que surge em 1997, fruto da colaboração entre entidades como a AT&T Bell Laboratories, Dolby, -okia e Fraunhofer Society. Mais tarde, este torna-se muito utilizado, graças a Apple, que o implanta como principal sistema de áudio de toda sua linha de iPOD’s. Mais tarde, o AAC surge novamente integrado na norma MPEG-4 na sua forma AAC-SSR (Scalable Sample Rate). Disponíveis ao comum utilizador existem outros formatos de compressão de áudio, como MPC, OGG Vorbis, FLAC, ALC e WMA. 3. MPEG O MPEG cria normas de compressão de áudio e vídeo digital que definem uma estrutura para os dados codificados, de forma a serem interpretados correctamente pelo descodificador, existindo, porém, liberdade de implementação do codificador. Segundo o MPEG, os sinais são transformados em sinais PCM amostrados (sinal digital convertido a partir de um analógico) e codificados, dependendo da layer escolhida. Figura 1- Diagrama de blocos do PCM O MPEG-1 permite compressão de áudio até dois canais stereo, com qualidade próxima à do CD, a uma taxa de débito binário de 256 kbit/s. Contem 3 Layers: Layer I (simples, menor compressão, baixo custo de implementação), Layer II (maior compressão) e Layer III (maior compressão e maior custo, devido à complexidade). Neste caso, a aplicação usa a layer que melhor relaciona a computação e a compressão, sendo cada layer um codificador Sub-Band. O MPEG-2 introduz a capacidade de codificação multicanal. O modo sem compatibilidade com MPEG-1 é AAC. Este tem a possibilidade de suportar até cinco canais áudio mais um canal de graves e permite que um vídeo seja transmitido com o áudio em diferentes linguagens. Por sua vez, o MPEG-4 é utilizado para Internet fixa e móvel, e o MPEG-7 para a descrição e procura de áudio e conteúdo visual. pontos da curva são percebidos com a mesma sonoridade (loudness), mas a pressão sonora necessária não é constante com a frequência. Figura 3 – Sensibilidade auditiva 4.2. Mascaramento Figura 2 - Diagrama de blocos codificador MPEG 4. MODELO PSICO-ACÚSTICO Tanto o MP3, como o AAC fazem uso de um modelo com fundamento na sensibilidade do ouvido humano, tornando-se necessária uma breve descrição do comportamento deste mesmo. O som tem de viajar através dos nervos até ao córtex auditivo no cérebro, onde é transformado em diferentes percepções. Assim, a audição não é apenas um fenómeno de propagação de ondas, mas, também, um evento sensorial e de percepção. O ouvido humano, como parte do processo de transformação do som num estímulo sensorial, realiza uma decomposição espectral, tornando inaudíveis certos eventos sonoros que se situem fora dos limites de audição. É importante notar que a audição humana não é perfeita, existindo limitações físicas. A compressão faz uso deste facto, reduzindo a precisão de certas partes do som que se encontram para além da capacidade auditiva. Este método é conhecido como perceptual coding e providencia uma representação do som, numa determinada janela de análise tempo/frequência, para descartar ou reduzir a precisão de componentes menos audíveis ao ouvido humano, assimilando a restante informação de forma eficiente. De uma forma muito simples, este modelo permite determinar a qualidade da implementação do codificador. 4.1. Sensibilidade Auditiva Em termos da sensibilidade auditiva, pode-se dizer que esta tem uma gama dinâmica de 96dB e que a sua frequência varia entre 20Hz e 20kHz, devido às limitações físicas do ouvido. O alcance de frequência muda com a idade, pois perde-se a habilidade de ouvir as frequências mais altas quando se envelhece. Dentro desta gama de frequências, o ouvido é mais sensível em determinadas frequências, que se encontram entre os 1kHz e 3kHz, como se pode observar na figura 3. Portanto, todos os A partir da figura anterior, torna-se necessária a introdução de um novo conceito, o de dimensão de banda crítica. Este representa a capacidade do ouvido em distinguir tons simultâneos, em diferentes frequências. Esta dimensão toma o valor aproximado de 100Hz para baixas frequências aumentando consideravelmente para frequências mais elevadas. Assim, quando dois sons de frequências próximas estão simultaneamente presentes, o ouvido humano assimila melhor o som com maior amplitude. A este fenómeno atribui-se o nome de mascaramento, sendo esta outra propriedade do sistema auditivo humano, que nos permite aumentar o nível de ruído uma vez que este será mascarado. 4.2.1. Mascaramento em Frequência Quando em presença de um sinal muito forte, com frequências de 1000Hz e outro a 1100Hz, onde o segundo sinal apresenta-se 20dB abaixo do primeiro, este segundo sinal não vai ser ouvido, pois vai ser mascarado pelo primeiro. Assim, nenhum sinal mais fraco perto de um outro sinal mais forte será ouvido. Se, por um outro lado, introduzir-se outro sinal a 2000Hz, também 20dB abaixo do primeiro sinal, já se conseguirá ouvi-lo, pois para que este fique mascarado é necessário que esteja 45dB abaixo do primeiro. Assim quanto mais longe estivermos de um sinal, menor será o efeito de máscara. Portanto, o efeito de mascaramento é-nos útil, pois permite aumentar o ruído de fundo à volta de um som forte, de modo que o ruído será mascarado de qualquer forma. Aumentar o ruído de fundo, é o mesmo que reduzir o número de bits utilizados por amostra, e usar menos bits significa comprimir. Na figura 4 é demonstrado o fenómeno de mascaramento. Figura 6 - Diagrama de blocos de codificador perceptivo. Numa primeira etapa o sinal áudio é convertido em componentes espectrais através de um banco de filtros. Concretizando para a layer III, é utilizado um banco de filtros híbrido, enquanto que na layer I e na layer II são utilizados bancos de filtros passa-baixo. Cada componente espectral sofre uma quantificação. Em seguida, o sinal é quantizado e o número de bits de quantificação é obtido através de um algoritmo, que realiza uma alocação dinâmica de bits, controlada pelo modelo psico-acústico. Como anteriormente dito, a norma MPEG apenas descreve o algoritmo de descodificação e o significado do bitstream codificado, de forma que como o codificador não é normativo, é deixado espaço para melhorias técnicas. Figura 4 – Mascaramento em frequência. 4.2.2. Mascaramento Temporal O mascaramento temporal, por sua vez, ocorre quando um sinal forte faz com que outro de igual, ou menor intensidade, não seja perceptível durante um certo intervalo de tempo. Se um sinal é mascarado por outro sinal mais forte antes de este se fazer ouvir, atribui-se o nome de pré-mascaramento e poderá ter uma duração máxima de 20ms. Se, por outro lado, um som é mascarado por um som mais forte depois deste se fazer ouvir, encontramo-nos numa situação de pós-mascaramento e poderá ter uma duração máxima 200ms4. Na figura 5 é demonstrado o fenómeno de mascaramento no tempo. 6. MP3 - MPEG-1 ÁUDIO LAYER III MPEG-1 Layer III (MP3) é um formato de compressão de áudio, no qual é possível criar ficheiros em que o ritmo de transmissão é variável. Algumas partes do áudio são mais fáceis de comprimir, nomeadamente os momentos de silêncio ou música com apenas alguns instrumentos, enquanto outras, são mais difíceis de comprimir. Pode-se aumentar a qualidade do ficheiro comprimido usando um ritmo de transmissão mais baixo no primeiro caso, e no segundo um ritmo de transmissão mais elevado. O MP3 utiliza um algoritmo de compressão com perdas que se encontra apresentado na figura 7. Figura 5 – Mascaramento no tempo. 5. CODIFICADOR PERCEPTIVO A tarefa principal de um sistema de codificação áudio é comprimir os dados de áudio digital de modo a que a compressão seja o mais eficiente possível. Assim, como é do interesse geral reduzir o ritmo binário dos sinais áudio, não só para minimizar custos de transmissão, mas para permitir armazenamentos baratos, sem no entanto diminuir significativamente a qualidade sonora, o codificador perceptivo surge com um papel fulcral. A grande maioria dos codificadores perceptivos transforma o som no domínio do tempo, para o domínio na frequência, separando as diferentes frequências em sub-bandas. Em seguida, utilizam os conhecimentos adquiridos sobre a forma como o ouvido funciona para eliminar informação não necessária. Na figura 6 é ilustrado o diagrama de blocos de um codificador deste tipo. Figura 7 – Algoritmo de compressão do MP3. Na entrada temos os dados de áudio PCM, que em seguida passam através do banco de filtros que os divide em sub-bandas. A filtragem é efectuada em paralelo com a análise psico-acústica que vai determinar a SMR (relação sinal-máscara) de cada uma das sub-bandas. O bloco de controlo de distorção utiliza as SMR para a decisão de como dividir o número total de bits de codificação que estão disponíveis. Por fim, são formatadas num bitstream as amostras quantificadas e codificadas, segundo a norma. • Em seguida apresentam-se algumas das características mais importantes do MP3: • Modelo psico-acústico - as partições são, de modo geral, equivalentes às bandas críticas do aparelho auditivo humano. Deste modo, se o ruído de quantificação se mantiver abaixo do limiar de mascaramento para cada partição, a compressão resultante deve ser indistinguível do original. Este modelo tem como principais funções: estimar, adaptativamente, a quantidade e o perfil do ruído de codificação que se pode reduzir, atenuando assim também a quantidade de informação do sinal áudio, sem que se torne perceptível para o ouvido humano. • Filtro com 32 sub-bandas - ao banco de filtros chegam blocos de dados com 1152 amostras, ou seja, dois grupos de 576 amostras. Ao passar pelo banco de filtros, as amostras vão ser divididas em 32 sub-bandas que estão separadas na frequência igualmente. • Transformada Discreta de Co-seno Modificada - a cada uma destas sub-bandas é aplicada a MDCT, ou seja, a DCT Modificada. Para a redução do efeito de bloco a MDCT é aplicada a cada sub-banda com sobreposição de 50% no que diz respeito a sub-bandas adjacentes. Pode-se também utilizar comutação dinâmica de janela para diminuir o pré-eco (tipo de efeito indesejável que a MDCT introduz). • Quantização e codificação de Huffman - o processo que tem como objectivo encontrar o ganho óptimo, os factores de escala para um dado bloco, ritmo binário e saída do modelo perceptivo é feito através de 2 ciclos encadeados. Um deles, consiste num ciclo interno de iteração, ou ciclo de ritmo, no qual, se o número de bits que resulta da codificação exceder o número de bits disponível, pode-se corrigir isso ajustando o ganho global, aumentando deste modo o passo de quantificação, para se obterem menores valores resultantes da quantificação. Esta operação é repetida para vários valores do passo até ao número de bits exigido na codificação de Huffman ser suficientemente pequeno. O segundo ciclo consiste num ciclo externo da iteração, ou ciclo de controlo de ruído, o qual pretende disfarçar o ruído de quantificação com o limiar de mascaramento. Para isto, são aplicados factores de escala a cada banda, começando por omissão com um factor de valor 1. Em seguida, se o ruído exceder o limiar de mascaramneto, ajusta-se o factor de escala de modo a reduzir o ruído. Este processo de redução de ruído requer um maior número de passos de quantificação, o que conduz a um maior ritmo binário por esse facto o ciclo de ritmo está encadeado no ciclo de controlo de ruído. Este ciclo externo é executado até que o ruído actual esteja abaixo do limiar de mascaramento para todas as bandas. 6.1. Modos de operação Existem vários modos de operação, os quais são descritos seguidamente: • Mono; • Dual Stereo – onde os canais são codificados independentemente, p.e., 2 línguas; • Stereo – com codificação independente, mas com partilha de campos comuns na trama codificada; • Joint Stereo – onde a dependência entre canais é explorada através da técnica intensity stereo, ou seja, acima de 2 kHz, envia-se o sinal L+R e factores de escala para os 2 canais (L e R) uma vez que o ouvido é pouco sensível; • Mono/Stereo (MS) (só camada 3) – onde os 2 canais são codificados como L+R (middle) e L-R (side) o que permite controlar melhor a localização espacial do ruído de quantização. Quanto às frequências de amostragem na norma MPEG1 Layer 3 constam apenas o uso de 32 kHz, 44.1 kHz (qualidade CD) e 48 kHz. Em relação ao débito binário o MPEG áudio trabalha a um débito variado, ou seja, a selecção do débito (8-320 kbit/s) é segundo o critério do codificador, sendo a mudança de débito efectuada de trama para trama. 6.2. Trama O áudio codificado é armazenado em tramas, em conjunto com alguns dados adicionais. Cada uma das tramas tem informação que diz respeito a um bloco de áudio por canal. Uma trama é constituída pelo cabeçalho, dados de áudio e dados opcionais. O cabeçalho mp3 contem entre outros, uma palavra de sincronização, o ritmo binário, a frequência de Amostragem, a camada em questão, o modo de codificação (mono, stereo, …) e dois bits SCMS (Serial Copy Management Scheme) com o objectivo de protecção contra cópia, mas devido à fácil manipulação destes bits, esta forma de protecção é praticamente inútil. Os dados que são codificados pelo codificador entrópico de Huffman e a sua informação colateral são colocados na parte relativa aos dados de áudio, onde a informação colateral vai especificar o tipo de bloco, factores de ganho das sub-bandas e tabelas de Huffman. 6.3. Descodificação Figura 8 – Diagrama de blocos do descodificador MP3. A descodificação MP3 pode ser subdividida em 3 diferentes fases como se pode ver na figura 8. Numa primeira fase é feita a sincronização entre a sequência de bits codificada e outras informações acerca de cada frame. De seguida, dá-se o processo de desquantificação, onde se reconstrói os coeficientes gerados nos blocos de DCT modificado durante a codificação. O cálculo de desquantificação é baseado na saída de descodificação de Huffman e na informação do factor de escala. Numa última fase, são efectuadas uma série de operações invertidas da DCT modificada e é feita uma análise do filtro de sub-banda no codificador. O mapeamento frequência/tempo resulta na saída de áudio PCM a partir dos coeficientes desquantificados. 6.4. Aplicações A Layer III tem como alvo aplicações onde uma necessidade crítica de baixos débitos binários justifique o sofisticado sistema de codificação. Como permite resultados de alta qualidade a débitos binários tão baixos como 64 kbps por canal, esta solução é muito útil para um largo número de aplicações, pois praticamente qualquer sistema que tenha uma capacidade de canal limitada beneficia no uso desta solução. Esta técnica abrange pelo menos três grandes áreas: a transmissão, a radiodifusão/teledifusão e o armazenamento de dados. 6.5. Limitações Apesar de todas as vantagens descritas anteriormente, existem algumas limitações que restringem a eficiência do código quando comparada com outras normas. Por exemplo, o MP3 não pode permutar de modo Join Stereo entre as diversas bandas e depois de especificado um modo (Intensity Stereo ou MS Stereo) para uma determinada banda, esse é mantido para todas as bandas, o que por vezes leva a uma codificação menos eficiente. Apesar do uso do reservatório de bits, este pode não ser suficiente. Como as frames são limitadas, por vezes, pode-se ter um excesso de bits, o que pode provocar uma degradação da qualidade do sinal de áudio. Uma outra desvantagem, é o facto do tamanho das janelas não ser o adequado para a codificação MP3. No caso dos long blocks o número de amostras é insuficiente o que limita a resolução espectral e consequentemente a eficiência do código. No caso dos short blocks o número de amostras é demasiado elevado o que limita a resolução temporal, provocando uma falta de precisão. Para manter a compatibilidade com a norma MPEG-1 Layer II, a norma MPEG-1 Layer III só aplica a transformada MDCT após as bandas serem filtradas do mesmo modo que na norma MPEG-1 Layer II. Esta filtragem introduz um ruído que não é totalmente eliminado e que se traduz numa desvantagem para a norma MP3. Por último existem limitações ao nível da falta de ferramentas, que actualmente outras normas de codificação já utilizam, sendo elas: a PNS (perceptual noise substitution); a SBR (spectral band replication); a TNS (temporal noise shaping); e a LTP (long term prediction). 7. ADVACED AUDIO CODIG (AAC) Em 2003, o AAC foi escolhido para ser utilizado como codec padrão nas transmissões digitais japonesas, que utilizam o sistema digital ISDB-T, e em Abril de 2006, teve uma variação chamada de HE-AAC utilizada em transmissões de aparelhos móveis. O AAC utiliza basicamente 2 métodos simples para codificação, que resultam na diminuição de dados necessários para transmissão de áudio digital, são eles: a eliminação das componentes do sinal consideradas irrelevantes e a eliminação das redundâncias do sinal de áudio codificado. Na codificação, inicialmente o sinal é convertido do domínio tempo para frequência, com a utilização do método MDCT. Isto é feito com uso de filtros que capturam amostras de tempo do sinal e as transformam em amostras de frequência. Em seguida, o sinal já em domínio de frequência é quantizado, e então, codificado. Depois, é inserido o código de correcção de erros, passo após o qual o sinal é armazenado ou transmitido. Um dos cuidados a ter-se com o AAC, é o controlo de erros. Normalmente existe um código de correcção de erros que é utilizado em todo processo de codificação, mas como determinadas partes do arquivo estão mais sujeitas a erro do que outras, este, não é um método muito eficiente. O arquivo de áudio AAC, pode ser subdivido em várias partes de diferentes sensibilidades a erros: • Códigos independentes de controlo de erros podem ser aplicados em qualquer uma dessas partes, usando a ferramenta Protecção de Erros, disponível no sistema MPEG-4 Áudio padrão; • Esta ferramenta permite à correcção de erros, a possibilidade de que partes de diferentes sensibilidades a erro recebam diferentes tratamentos, a fim de manter o tamanho final do arquivo o mais compacto possível; • O Error Protection do MPEG-4 Audio é totalmente compatível com o codec AAC, mas já existia antes dele, e era usado em outros métodos de codificação. Outra técnica utilizada com o AAC, é a Error Resilient (ER) AAC, técnica utilizada para tornar a codificação por si só, mais robusta contra erros. Três novas técnicas foram desenvolvidas no MPEG-4 Audio para o uso com AAC: • Huffman Codeword Reordering (HCR) – utilizado para evitar a propagação de erros dentro do espectro do arquivo; • Virtual Codebooks (VCB11) – utilizado para detectar erros no espectro do arquivo; • Reversible Variable Length Code (RVLC) – utilizado para reduzir a propagação de erro em escalas do arquivo. Além disso, o processamento de sinal usa a transformada discreta do co-seno na versão modificada (MDCT), e acrescenta códigos de correcção de erros. O sinal pode ser armazenado, ou transmitido. Em cada trama é aplicada o algoritmo de Luhn mod -, para evitar a existência de amostras com defeito. A norma MPEG-4 não define um único grupo de esquemas de compressão de áudio, mas sim um conjunto de ferramentas, que permitem realizar uma série de operações, de acordo com as necessidades. Cobre assim uma gama que, vai desde o processamento de fala a um baixo débito binário, até síntese de música. Assim, esta variação pode ir desde 2kbps para voz, até 64kbps, ou mais, por canal para o caso de música. As frequências de amostragem vão de 8kHz até 96kHz, e o número de canais de 1 a 48. Comparativamente ao banco de filtros híbrido usado no MP3, o AAC usa a MDCT juntamente com uma janela de comprimento de 1024. Isto faz com que o AAC seja capaz de codificar sinais áudio com formas mais complexas (ondas quadradas e impulsos complexos), com melhor resultado, comparativamente ao MP3. Um codificador AAC pode comutar, dinamicamente, entre um bloco MDCT com comprimento de 1024 pontos, e 8 blocos de 128 pontos. Se, por exemplo, ocorrer uma variação no sinal, 8 pequenas janelas de 128 pontos são escolhidas em função da sua resolução temporal. Por omissão, é usada a janela de 1024 pontos uma vez que a resolução de frequência superior permite a criação de um modelo psico-acústico mais elaborado, o que, consequentemente, resulta numa codificação mais eficiente. Portanto, o Advanced Audio Coding (AAC) é um algoritmo de codificação de sinais áudio de banda larga, projectado como um codec e desenvolvido com a mesma base de codificação que o MP3. Tem, no entanto, como objectivo uma maior qualidade, fazendo uso de novos modos de codificação para ter taxas de transmissão mais baixas mantendo a qualidade. 7.1. Estrutura do codificador A estrutura ideal do codificador AAC completa-se interpondo uma unidade de processamento espectral entre a unidade Analysis & filterbank e a unidade Quantization & Coding. A estrutura base de um codificador AAC, dado que é um codificador perceptivo, é representada na figura 9. Figura 9 – Diagrama de blocos do codificador AAC. Surge assim um conjunto de ferramentas de codificação, das quais se focam as mais importantes: • Pré-processamento - Pseudo-QMF de 4 bandas com detectores de ganho; • Banco de filtros - MDCT de 512/2048 pontos com comutação dinâmica de janelas. Tem como objectivo transformar o sinal de entrada do domínio dos tempos para coeficientes no domínio das frequências através de uma MDCT (Transformada Discreta de Co-seno Modificada) que usa o conceito de codificação em subbandas. • Temporal noise shaping - tem como objectivo controlar a forma temporal do ruído de quantização dentro de cada janela de codificação, o que se consegue aplicando um processo de filtragem a partes do espectro de dados de cada canal fazendo com que ocorra redução do artefacto de pré-eco, utilizando a predição no domínio da frequência; • Long Term Prediction (Bloco LTP) - ferramenta utilizada para a redução de redundância entre sucessivas frames de codificação; • Intensity\Coupling - insere-se na ferramenta Joint Channel Coding Tool para ritmos binários baixos, e faz uso da técnica “Intensity Stereo” (IS). Esta faz com que a codificação stéreo só seja transmitida num canal, obtendo-se assim um stream áudio mono e uma posição stéreo, que por sua vez consiste em coeficientes espectrais divididos em blocos, tornando a codificação de informação stereo eficiente. O coupling permite que os dados de um canal sejam combinados com dados de outro. Este é um módulo opcional e é usado apenas para ritmos binários muito baixos. Remove a informação espacial presente, de forma a manter a distorção baixa, e envia códigos de amplitudes para reconstrução. • Prediction - ferramenta de predição adaptativa de coeficientes espectrais ao longo do tempo, que tem o objectivo de remover a correlação entre amostras, isto é, remover redundâncias contidas no áudio em amostras sucessivas, tendo uma maior eficiência em sinais estacionários. Este módulo tenta reduzir a redundância entre os coeficientes das frequências para um dado bloco através do uso de predições. Recebe cada coeficiente de frequência por ordem e tenta prever o que vai acontecer nesse bloco. • Perceptual -oise Substitution (PNS) - ferramenta utilizada para melhorar a eficiência das taxas de transmissão que, em alternativa à transmissão de todas as componentes espectrais de um sinal com ruído, indica apenas a frequência que tem ruído e dá a informação sobre a potência nessa banda. • MS-Stereo - ferramenta de codificação da soma e diferença de dois canais áudio. Compressão obtida a partir do envio apenas da soma ou da diferença dos dois canais [M= (L+R) /2 S= (L-R) /2], isto é, os canais mid e sid que são o resultado dessa soma e diferença respectivamente. Esta ferramenta mantém ainda inalterado o áudio não introduzindo qualquer tipo de artefacto ao sinal, ao contrario do que acontece no Intensity Stereo. • Escalador e Quantizador - ferramenta que permite a • Scaleable Sample Rate Profile - o áudio é dividido em 4 bandas de frequência discreta, adaptando-se a diversas quantização de coeficientes espectrais usando um larguras de banda. Este modo tem menor complexidade; procedimento de análise por síntese aproximada, para que o ruído quantizado e definido, de acordo, com o • Long Term Prediction - modo semelhante ao Main Profile modelo psico-acústico fique muito pouco perceptível, mas com baixa complexidade. Utiliza forward predition. ou mascarado. Dependendo, obviamente, do perfil escolhido para o codificador AAC e para o MP3, uma codificação em AAC, • Codificação sem perdas - ferramenta que faz uso do a 96kbit/s, deve dar a mesma, ou mesmo melhor método de codificação de Huffman por ser mais flexível qualidade (perceptível ao ouvinte) que uma codificação de e utilizar os quádruplos das linhas de frequência. É 128kbit/s em MP3. Tal com o MP3 sofreu uma pequena preferível em certos casos converter o sinal para evolução com o uso da técnica SBR (Spectral band midlle\side antes de quantificar dada a sua informação replication) que deu origem ao chamado MP3Pro, espacial. Assim, é esta ferramenta que decide de que também o AAC tem um perfil um pouco especial, em que modo codifica para obter maior ganho de codificação. se usa SBR e PS (Parametric stereo) denominado por • Bitstream Formatter - bloco onde são agregados os AACplus, sendo esta a família de codecs mais recente na coeficientes quantizados e codificados, e os parâmetros norma MPEG-4. de controlo para a transmissão. Desta forma, observando-se a figura 9, verifica-se que o 8. EVOLUÇÃO DOS FORMATOS AAC segue o mesmo paradigma de codificação que o Layer-3, utilizando novas ferramentas de codificação Ambos os formatos sofreram evoluções ao longo do como forma de melhorar a qualidade a baixos débitos, tais tempo. Estas evoluções encontram as suas bases nos como: formatos já referidos. O MP3Pro é um destes exemplos e • Elevada resolução espectral, onde o número de linhas no combina o formato de áudio e compressão MP3 com AAC encontra-se acima das 1024 comparado com as métodos baseados na replicação de banda espectral. Este 576 para o Layer-3; SBR (spectral band replication) é uma tecnologia baseada • Predição, baseada no passado opcional, computada linha na redundância harmónica no domínio da frequência e por linha, o que permite alcançar melhor eficiência na surge com o intuito de melhorar a qualidade dos codecs codificação, especialmente para sinais correspondentes de áudio, de forma que o ficheiro resultante detém apenas a tons muito próximos; metade do tamanho do obtido com a compressão normal • Codificação do tipo stereo melhorada, que comparada do MP3. Este avanço, surgiu naturalmente dado que o com o MP3, tanto a codificação estéreo (mid/side) como MP3 usa uma largura de banda bastante limitada quando a intensidade de codificação são mais flexíveis, se desce o bitrate. Podemos assim observar a título permitindo reduzir o débito mais frequentemente; ilustrativo as figuras 10 e 11. • Codificação de Huffman melhorada, sendo mais frequente a codificação por quádruplos de linhas de frequência e existindo maior flexibilidade na atribuição de tabelas de código Huffman. Relativamente à qualidade de áudio, são utilizadas ferramentas para: • Melhoramento do processo de troca de blocos, ou seja, Figura 10 – Codificação MP3 a 64kbps. em vez do filterbank híbrido utilizado no Layer-3, o AAC utiliza um filterbank do tipo MDCT; • Ajuste temporal do ruído, T-S (Temporal -oise Shaping), uma técnica que realiza ajuste do ruído no domínio temporal através de um ciclo aberto de predição no domínio da frequência. 7.2. Modos de codificação Dado que a codificação de áudio se faz de forma modular, dependendo da qualidade final desejada e da complexidade do fragmento áudio a codificar, podemos, através de uma combinação das ferramentas, obter quatro modos de codificação áudio permitidas pelo AAC: • Main Profile - utiliza todas as ferramentas disponíveis, necessitando de muita memória e capacidade de processamento para atingir uma qualidade elevada; • Low Complexity - modo simples e muito utilizado para diminuir significativamente o uso da memória e do processamento, embora com menor qualidade final e taxa de compressão; Figura 11 – Codificação MP3Pro a 64kbps. O SBR foi também combinado com o AAC e com o PS (Parametric Stereo) de forma a criar o formato HE-AAC. Este formato foi desenvolvido igualmente com o intuito de aumentar a eficiência da codificação a bitrates baixas ao usar apenas uma representação paramétrica do áudio, não sendo muito eficiente fora destas. O MPEG-4 SLS ou HD-AAC como é comercialmente conhecido, é mais uma vez desenvolvido pelo Fraunhofer IIS, e vem acrescentar ao formato AAC uma forma de compressão sem perdas, no entanto, facilmente convertível com perdas num ficheiro de tamanho reduzido caso o espaço de armazenamento disponível seja limitativo. O formato permite ter ambas as layers, uma com perdas, e uma segunda que tem a função de colmatar as perdas da primeira chamando-se por isso lossless correction layer. O MPEG-4 Low Delay Audio Coder (AAC-LD) é uma derivação do AAC usado em MPEG-2. Tem como objectivo usar as vantagens da codificação de áudio, e minimizar os atrasos para se usar em comunicação bidireccional. Vem fazer a ponte entre os sistemas dimensionados para voz, e os sistemas para áudio genérico (que inclui música e, por conseguinte, necessita de mais processamento). O parâmetro mais exigente cifrase em ter um máximo de atraso de 20ms, mantendo uma boa qualidade, em qualquer tipo de sinal áudio, seja voz ou música. 9. MP3 VS. AAC Comparando o AAC com o MP3, verificam-se as seguintes melhorias do AAC, que permitem obter a mesma qualidade para ritmos binários mais baixos: • Maior resolução de frequências - número das linhas de frequências em AAC é 1024 e 576 na layer3; • Predição - predição inversa opcional, calculada linha a linha, com melhor eficiência de codificação, especialmente para sinais tonais (ex. sinal de chamada dos telefones); • Codificação de Joint Stereo melhorada - a codificação dos canais middle/side e a codificação intensity são mais flexíveis, e a aplicação das duas, reduz o ritmo binário; • Codificação de Huffman melhorada - em AAC, a codificação de Huffman opera com quádruplos das linhas de frequência mais frequentemente., e o uso das tabelas de codificação de Huffman pode ser muito mais flexível; • Suporte até cerca de 48 canais (AAC), comparativamente aos 2 canais no modo MPEG-1 e 5.1 canais em modo (MP3); • Maior eficiência e um filterbank mais simples, puramente MDCT; • Maior eficiência na codificação para sinais estacionários (Tamanho do bloco: 576 -> 1024 amostras); • Maior eficiência na codificação para sinais transientes (tamanho do bloco: 192 -> 128 amostras); • Leitura melhor com frequências acima dos 16 kHz do que no MP3; • Técnica joint stereo mais flexível (separada para cada banda); Estes módulos podem ser combinados entre si, permitindo ao AAC uma maior flexibilidade na criação de codecs. Este conjunto de pequenos melhoramentos permite ao AAC atingir em média a mesma qualidade que o MP3 em cerca de 70% do ritmo binário. Outra das vantagens do AAC, é que este não requer qualquer licença ou pagamento para o streaming ou distribuição de conteúdos, e por esta razão, este torna-se um formato mais atractivo para a distribuição de conteúdos, em particular para streaming na internet., ou seja, o AAC permite uma maior flexibilidade no que diz respeito ao design e à concepção dos codificadores de áudio. Quando comparado com o AAC, a débitos superiores a 128 kbps, verifica-se que o MP3 apresenta uma qualidade semelhante ao AAC. A maior diferença entre eles registase para débitos binários menores que 128 kbps, onde o AAC tem uma melhor performance que o MP3. 10. COCLUSÃO Neste artigo são apresentadas as duas normas, para codificação de áudio, mais utilizadas na actualidade. Estas normas são as primeiras a nível internacional no campo da compressão digital áudio de alta qualidade. A grande base onde ambas as normas assentam é o modelo psicoacústico, que explora as limitações auditivas humanas. O MP3 cobre a codificação de sinais áudio estereofónicos a altas frequências de amostragem com perdas de informação imperceptíveis ao ouvido humano. Apesar das suas limitações, o MP3 tem se mostrado extremamente robusto, sendo um dos métodos de codificação mais utilizados. Adicionalmente, o MPEG-2 também oferece codificação multi-canal com, sem compatibilidade inversa para MP3, fornecendo uma imagem acústica melhorada para aplicações exclusivamente áudio e para sistemas de televisão e vídeo-conferência. Dada a robustez e eficiência do AAC, a sua utilização tem se popularizado cada vez mais. Em conclusão, num mundo a acompanhar o avanço tecnológico procura-se conseguir uma qualidade subjectiva tão boa quanto possível, que ocupe a menor banda possível. Assim, o AAC oferece-nos essa possibilidade, mas, apesar deste facto, o MP3 continua a ser o mais utilizado. 11. REFERÊCIAS [1] http://www.img.lx.it.pt/~fp/cav/com.htm [2] http://en.wikipedia.org/wiki/MP3 [3] http://en.wikipedia.org/wiki/Advanced_Audio_Coding [4] http://en.wikipedia.org/wiki/Lossy_data_compression [5] http://www.apple.com/quicktime/technologies/aac/ [6] http://www.kendavies.net/resources/audioformats/ [7] http://www.ebu.ch/trev_283-kozamernik.pdf. [8] http://www2.ufpa.br/ensinofts/capitulo3.html [9] http://www.prof2000.pt/users/eta/Ruido.htm [10] http://professores.faccat.br/azambuja/MP3.htm [11] http://www.mp3dev.org/mp3/ [12] http://www.mp3-tech.org/index.html [13] http://www.iis.fhg.de/amm/techinf/layer3/index.html [14] http://www.mpeg.org/MPEG/index.html [15] http://www.ime.usp.br/~walter/mp3/mp3.html [16] http://www.infowester.com/histomptres.php [17] http://www.mp3-tech.org/content/?Mp3%20Limitations [18] http://www.mpeg.org
Documentos relacionados
MP3 VERSUS AAC
muito similar, passando pelos seguintes blocos fundamentais: banco de filtro de análise, um analisador de espectro, um bloco para o cálculo de limiares de mascaramento, um quantificador e escalador...
Leia mais