|
|
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 que este, fazendo uso de novos modos de codificação para ter taxas de transmissão mais baixas mantendo a qualidade.
Quais as razoes para o aparecimento do MPEG4- AAC?
l As novas aplicações multimédia requerem uma codificação eficiente e flexível dos diferentes tipos de conteúdo • Áudio natural • Áudio sintético • Fala natural • Fala sintética l Necessidade de codificar uma cena com vários tipos de conteúdos e tratá-los de forma independente
Tendo assim outras aplicações, como por exemplo:
• Codecs diferentes para objectos diferentes
• Débitos diferentes para objectos diferentes;
• Possibilidade de mudar facilmente a Língua do discurso (e.g. inglês> português);
• Pós-processamento diferente em objectos diferentes;
Assim o AAC foca-se em duas estratégias de codificação de forma a reduzir a quantidade de dados necessários para codificar áudio digital de alta qualidade:
-Eliminação das componentes que são perceptualmente irrelevantes;
-Eliminação de redundâncias no sinal áudio codificado;
ESTRUTURA DO CODIFICADOR
A estrutura base de um codificador AAC, dado que é um codificador perceptual, é representada do seguinte forma:
Fig.10 – Estrutura base de um codificador AAC
A estrutura ideal do codificador AAC completa-se interpondo uma unidade de processamento espectral entre a unidade Analysis & filterbank e a unidade Quantization & Coding. Esta unidade tem como objectivo a redução da redundância, ao fazer uso de ferramentas de predição. Estando agora completo o codificador AAC obtém-se a seguinte representação: Fig. 11 – Estrutura completa de um codificado AAC
FERRAMENTAS DE CODIFICAÇÃO
Surge assim o seguinte conjunto de ferramentas:
Pré-processamento: Pseudo-QMF de 4 bandas + detectores de ganho;
Banco de filtros: MDCT de 512/2048 pontos + 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 sub bandas, ou seja, tem como função transformar o sinal áudio para o domínio da frequência de modo a evidenciar as redundâncias.
“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 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.
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;
“Perceptual Noise 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 quantização de coeficientes espectrais usando um procedimento de análise por síntese aproximada, para que o ruído quantizado e definido de acordo com o modelo psicoacustico fique muito pouco perceptível ou mascarado.
Codificação sem perdas: Ferramenta que faz uso do método de codificação de Huffman por ser mais flexível e utilizar os quádruplos das linhas de frequência. É preferível em certos casos converter o sinal para midlle\side antes de quantificar dada a sua informação espacial. Assim, é esta ferramenta que decide de que modo codifica para obter maior ganho de codificação.
Bitstream Formatter: Bloco onde são agregados os coeficientes quantizados e codificados, e os parâmetros de controlo para a transmissão.
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;
Scaleable Sample Rate Profile: O áudio é dividido em 4 bandas de frequência discreta, adaptando-se a diversas larguras de banda. Este modo tem menor complexidade;
Long Term Prediction: Modo semelhante ao Main Profile mas com baixa complexidade; utiliza forward predition. |