Medição de Picos Verdadeiros de Sinais de Áudio Leandro da Silva Pires Coordenação de Outorgas e Recursos à Prestação Gerência Regional de Minas Gerais Agência Nacional de Telecomunicações (Anatel) [email protected] Resumo – Seja na reconstrução do sinal analógico na conversão D/A, seja na passagem do sinal digital por uma conversão de taxa de amostragem, os riscos de sobrecarga são consideráveis uma vez que as técnicas tradicionais de controle de picos de programação usadas na radiodifusão ou são puramente analógicas (VUs e PPMs) ou, no caso dos medidores digitais de pico, não levam em consideração as ocorrências de picos entre amostras. Este artigo tem como objetivo apresentar a implementação de um medidor de pico verdadeiro conforme Recomendação ITU-R BS.1770-3 usando técnicas de processamento digital de sinais. Palavras-chave: Áudio. Loudness. Radiodifusão. Pico verdadeiro. Processamento de Sinais. 1. Introdução O áudio digital é a representação de um sinal analógico continuo por meio de uma sequência de amostras, obtidas em intervalos regulares determinados pela taxa de amostragem [1]. Não há garantias nem de que alguma amostra será obtida exatamente no pico da forma de onda analógica, nem que seu nível de pico será adequadamente restaurado na sua reconstrução [2]. Adicionalmente, este valor de pico pode também não ser adequadamente representado quando as amostras são sujeitas a etapas de processamento que introduzam offset de tempo ou deslocamento de fase. Por consequência, as novas amostras poderão sofrer ceifamento (clipping) durante a reprodução mesmo que as amostras originais não atinjam o fundo de escala digital [3]. Como os medidores digitais de pico somente registram os maiores valores das amostras, estes acabam por dimensionar incorretamente a margem de excursão dinâmica do sistema [4]. Há recomendações sobre medidores que fornecem o valor de pico de um sinal de áudio digital, quando reproduzido no domínio analógico [5, 6]. Os picos não representados pelas amostras podem ser estimados por técnicas de interpolação usadas em processos de sobreamostragem e conversões analógico-digital [7]. Um filtro passa-baixas do tipo FIR com corte próximo à frequência de Nyquist aliado a um fator de interpolação entre 4 e 8 resultam em boas estimações do valor de pico verdadeiro [8] 2. Histórico Para ajuste de níveis de áudio, a maioria dos radiodifusores usa o Indicador de Volume (VU) ou o Medidor de Picos de Programação (PPM), ambos projetados há mais de 70 anos para a radiodifusão analógica. Enquanto que os VUs foram projetados para indicar o loudness aproximado, os PPMs foram criados para monitorarem níveis de pico e alertarem para ultrapassagem de limiares e/ou ceifamento [9]. Ao longo destes anos, pesquisas sobre audição mostraram que a percepção de loudness está mais relacionada à energia do sinal do que aos níveis por ele atingidos [10]. Além disso, o ouvido humano não percebe todas as frequências por igual. Por esse motivo, um medidor de loudness deve incorporar curvas de ponderação e detectores RMS [11]. Quanto à detecção de valores de pico, as constantes de tempo dos PPMs foram baseadas na percepção da saturação em sistemas analógicos, nos quais os produtos de intermodulação gerados pela não-linearidade do ceifamento são de baixa ordem e pouco audíveis devido às próprias características de mascaramento de frequências do ouvido humano [8]. Já nos sistemas digitais, o ceifamento é bastante abrupto e mais bem percebido pelo ouvido humano. 3. Descrição das técnicas empregadas 3.1. Sobreamostragem Idealmente, a taxa de amostragem do áudio digital deveria ser bastante alta para identificação dos verdadeiros valores de pico da forma de onda analógica original. Mas na prática, os custos com uso de banda são minimizados e as taxas de amostragem usando PCM são limitadas em pouco mais de duas vezes a largura de banda de áudio. Um exemplo de sinal cujo valor de pico é representado de forma pobre nessas condições seria uma onda senoidal com uma frequência de fs 4 , onde f s é a taxa de amostragem, e as amostras possuem ângulos de fase de 45, 135, 225 e 315 graus (Figura 1). Este conjunto de amostras possui valores 3 dB abaixo do valor de pico da forma de onda analógica devido aos instantes das amostras. Embora este seja um exemplo bastante artificial, é próximo do pior caso para sinais de áudio de uma programação de radiodifusão. Uma sobreamostragem num fator de 4 foi considerada suficiente para fins práticos [11]. Muito embora não haja nenhuma recomendação sobre níveis máximos de picoverdadeiro em [12], indicadores de pico verdadeiro devem alertar quando um limiar de -2 dBFS é atingido [5]. Dadas a faixas de erro discutidas anteriormente, este valor pode ser considerado o teto de segurança operacional para se evitar ceifamentos. 4. Metodologia O algoritmo para estimação adequada de picos verdadeiros num sinal de áudio digital em PCM envolve atenuação, sobreamostragem, um filtro passa-baixas e análise dos picos dos valores absolutos [11]. Figura 2. Diagrama em blocos do processo de medida de pico verdadeiro Figura 1. Onda senoidal numa frequência de fs/4, amostrada em 45, 135, 224 e 315 graus 3.2. Interpolação Filtros de interpolação geralmente não possuem uma resposta plana na banda de passagem, assim como também não atenuam completamente produtos de aliasing na banda de rejeição [1]. Logo, contribuem com erro adicional na leitura de picos. Quanto mais estritas forem as especificações, maior será a ordem do filtro para atingi-las e maior o processamento necessário. O cálculo do erro da leitura de picos é simplificado por um parâmetro comum ε. A resposta na banda de passagem está contida numa envoltória de 1 ± ε e a resposta na banda de rejeição é < ε. Alguns exemplos de cálculo de erro usando este parâmetro podem ser encontados na Tabela 1 para um sistema com largura de banda de áudio de 20 KHz, uma taxa de amostragem de 48 KHz x 4 = 192 KHz, e uma banda de rejeição começando em 28 KHz. Tabela 1. Erros máximos de pico verdadeiro em função do parâmetro de ripple ε ε 0,122 0,059 0,029 0,011 0,0058 Atenuação na banda de rejeição (dB) 20log10 ε -18,3 -24,6 -30,8 -39,2 -44,7 Ripple na banda de passagem (dB) Erro máximo de pico verdadeiro (dB) 20log10 (1 + ε) 1,00 0,50 0,25 0,10 0,050 20log10 (1 + 2ε) 1,90 0,97 0,49 0,19 0,10 Ordem mínima de um filtro FIR 19 27 36 48 58 Uma atenuação de 12,04 dB equivale a um deslocamento de 2 bits, tal como no primeiro termo da expressão da Relação Sinal-Ruído do quantizador de B 1 bits [1]. Esta é executada antes com o objetivo de prover margem para o processamento subsequente do sinal, caso empregue aritmética de ponto fixo. Este passo é desnecessário se os cálculos forem feitos em aritmética de ponto flutuante, como nas funções do MATLAB®, por exemplo. A sobreamostragem num fator de quatro é conseguida inserindo três zeros entre cada amostra de modo que a taxa suba de 48 KHz para 192 KHz. Esta versão do sinal em alta taxa de amostragem se assemelha mais a forma de onda analógica representada pelas amostras originais. O filtro FIR passa-baixas de interpolação é então aplicado para evitar aliasing decorrente do processo de inserção de zeros. Este deve ser composto de um bom número de coeficientes de forma a garantir pouco ripple na banda de passagem, muita atenuação na banda de rejeição e uma banda de transição estreita. Um filtro de ordem 48 é especificado em [11]. O último bloco consiste na análise do valor absoluto dos picos e é feito invertendo o sinal das amostras negativas para obtenção do módulo das amostras. A saída do medidor é logarítmica e indica os resultados na unidade dBTP, que significa decibéis relativos à 100% do fundo de escala digital, medidos pelo algoritmo de pico verdadeiro. 5. Propostas Se a saída do medidor for conectada a entrada de um limitador, compressor, equalizador, ou de outra etapa de processamento, 48 coeficientes podem não ser suficientes para atendimento dos requisitos de precisão das etapas seguintes em razão do ripple na banda de passagem não ser desprezível. No entanto, considerando os requisitos para medidores de pico verdadeiro [5], se a saída do medidor for diretamente um painel de LEDs ou um gráfico em barras para auxiliar o operador de áudio no estúdio de radiodifusão, rapidez de processamento ganha um peso bem maior na decisão de projeto em detrimento da precisão da medida. Por esse motivo, foi levado em consideração o projeto clássico de filtros IIR como outra opção de desenvolvimento, objetivando uma resposta mais rápida mesmo ao custo de alguma distorção do sinal. Neste trabalho, procurou-se ir além da comparação direta ente as medidas de PSM e de pico-verdadeiro, com a implementação de três diferentes funções de MATLAB® para medidores de pico-verdadeiro: (i) usando as próprias funções de sobreamostragem nativas da plataforma (upsample/resample) para a obtenção de resultados preliminares, (ii) com rotina própria de sobreamostragem usando interpolação e projeto clássico de filtros IIR, a partir da inserção de L 1 zeros seguida de filtro passa baixas com ganho L e frequência de corte normalizada L [1], e (iii) com o uso do filtro FIR de ordem 48 especificado em [11]. 6. Testes Com o propósito de cobrir a maioria dos casos práticos de radiodifusão. Os testes do medidor foram realizados sobre fontes de áudio de comportamento bastante distinto, a saber: (i) um conjunto de blocos de programação e de intervalo comercial provenientes de uma emissora de TV digital com áudio extraído diretamente do transport stream (TS) transmitido e suas contrapartes distorcidas devido à demodulação do áudio por placas de captura, (ii) conteúdo musical com picos de amplitude atingindo o fundo de escala digital e sua contraparte normalizada em loudness a -23 LKFS conforme [11], e (iii) arquivos de programação que compõem a suíte de teste de loudness da União Européia de Radiodifusão (EBU) com faixa dinâmica larga [13]. Os resultados obtidos estão dispostos na Tabela 2. Tabela 2. Resultados obtidos Mídias PSM 20130208_Noticiário_7h39-7h45 20130208_Noticiário_7h39-7h45_Placa 20130208_Noticiário_7h48-7h56 20130208_Noticiário_7h48-7h56_Placa 20130208_Noticiário _7h29-7h37 20130208_Noticiário_7h29-7h37_ Placa 20130208_Intervalo_7h37-7h39 20130208_Intervalo_7h37-7h39_ Placa 20130208_Intervalo_7h45-7h48 20130208_Intervalo_7h45-7h48_ Placa 20130208_Intervalo_7h56-7h59 20130208_Intervalo_7h56-7h59_ Placa -9,0116 0,0000 -8,7653 0,0000 -9,0867 0,0000 -8,6677 0,0000 -8,6311 0,0000 -8,5612 0,0000 TPFS (nativo) -8,9964 0,8351 -8,7604 0,8721 -9,0690 0,9606 -8,6580 0,9153 -8,5575 0,8747 -8,5467 0,9741 TPFS (rotina IIR) -8,9985 0,9258 -8,7611 0,9909 -9,0681 1,0242 -8,6600 1,0291 -8,5703 1,0123 -8,5392 1,0256 TPFS (rotina FIR) -9,4338 0,7886 -9,1997 0,7673 -9,5031 0,8956 -9,0996 0,8020 -8,9886 0,8095 -8,9694 0,8766 Conteudo_musical 23LKFS_Conteudo_musical 0,4504 -12,5669 0,5410 -12,4766 0,7601 -12,2572 0,4605 -12,5568 seq-3341-7_seq-3342-5-24bit seq-3341-2011-8_seq-3342-6-24bit-v02 -8,9143 -2,6410 -8,9143 -2,6410 -8,9109 -2,6852 -9,3493 -3,0389 7. Discussões Com relação ao conteúdo de programação original, pôde-se observar que: (i) os valores se encontram em torno de -9 dBFS, não mais que 11 dB acima do nível de alinhamento, conforme item 8 de [4], que discorre sobre níveis de áudio recomendados para melhor uso da margem de escala disponível em sistemas digitais e analógicos, e (ii) os picos de suas contrapartes distorcidas sobreamostradas que atingiram o fundo de escala retornaram valores positivos nas rotinas de pico verdadeiro quando atingiram o nível de 0 dBFS na escala original. O que sugere que um alerta de ceifamento seria disparado mais rapidamente num medidor de pico-verdadeiro do que num medidor Peak Sample Meter tradicional, ou que, num cenário em que o pico máximo do sinal original esteja a menos de 1 dB do fundo de escala digital, o medidor de pico verdadeiro alertaria para a possibilidade de ceifamento enquanto que o medidor PSM não traria esse indicativo. Infelizmente nenhum dos conteúdos usados no teste se enquadra no cenário proposto para a avaliação desta última hipótese de forma prática. Quanto ao conteúdo musical avaliado, pôde ser verificado que: (i) a fonte não normalizada estava bastante distorcida e indicou alertas de ceifamento em todos os medidores implementados, não acrescentando contribuição relevante à discussão dos resultados, e (ii) a fonte normalizada a -23 LKFS teve seus valores medidos em torno de -12 dB, 11 dB acima do nível normalizado [4]. Para os arquivos de [13], faz-se as observações a seguir: (i) o primeiro arquivo consiste num bloco de intervalo comercial com faixa de loudness estreita (5 LU). E assim como nos arquivos de programação capturados do TS transmitido, os valores medidos também giram em torno de -9 dBFS, não mais que 11 dB acima do nível de alinhamento [4], e (ii) o segundo arquivo consiste num bloco de programação de conteúdo dramatúrgico, com faixa de loudness larga (15 LU), o que sugere uma faixa dinâmica pelo menos três vezes mais larga que o anterior. Por essa característica, mesmo o sinal tendo sido normalizado a -23 LKFS, seus picos chegam bem próximo ao fundo de escala digital e são bastante identificáveis frente às partes mais suaves da forma de onda. O que sugere não haver muita diferença entre a forma de onda do sinal sobreamostrado e a do sinal na sua taxa de amostragem original. Percepção reforçada pelas leituras de valores muitíssimo parecidos nos medidores PSM e de pico-verdadeiro exclusivamente neste caso. Sobre as diferentes rotinas de implementação, pôde-se constatar que: (i) Excetuando-se o caso do segundo arquivo de testes da EBU em razão de suas características de faixa dinâmica, as leituras dos medidores de pico-verdadeiro são ligeiramente maiores que as do PSM, e esta diferença fica mais evidente com a proximidade dos picos ao fundo de escala digital, (ii) para os casos sem distorção, o medidor de pico-verdadeiro com rotina própria de sobreamostragem produziu as mesmas leituras (diferenças na segunda casa decimal) do medidor que usou as funções nativas do MATLAB® para o mesmo fim, e (iii) o medidor de picoverdadeiro usando os coeficientes listados na recomendação obteve medidas com uma diferença de aproximadamente 0,5 dB entre as efeituadas pelos demais medidores. Muito embora a tolerância do medidor especificado gire em torno de 1 dB conforme Seção 3.2, cabe investigação do porquê da diferença constatada. 8. Trabalhos futuros Os resultados discutidos abrem algumas possibilidades de trabalhos futuros, tais como: (i) aumentar o número de coeficientes do filtro FIR de interpolação e avaliar o retardo de processamento a partir da comparação dos retardos de grupo de cada filtro, (ii) implementar um medidor de aritmética inteira e avaliar a margem de cálculo provida pelo atenuador de entrada, (iii) avaliar sua implementação num hardware FPGA ou num DSP de baixo custo, (iv) desenvolver todas as etapas da cadeia de processamento do algoritmo de medição de loudness em [11], e (v) projetar uma solução integrada de controle de áudio em DSP em conformidade com a padronização brasileira de volume de áudio para a radiodifusão digital (Portaria MC nº 354/2012). Referências [1] Oppenheim, Alan V. & Schafer, Ronald W. (1998) “Discrete-time signal processing” (2nd. ed.). Prentice Hall [2] Nielsen, S.H. & Lund, T. (1999) “Level Control in Digital Mastering”, in Proc. of the 107th AES Convention, New York, NY, USA. [3] Lund, T. (2006) “Stop Counting Samples”, in Proc. of the 121th AES Convention, San Francisco, CA, USA. [4] ITU-R (2011) “Report ITU-R BS.2054-2, Audio levels and loudness”. International Telecommunication Union. [5] ITU-R (2012) “Rec. ITU-R BS.1771-1, Requirements for loudness and true-peak indicating meters”. International Telecommunication Union. [6] ATSC (2013) “ATSC Recommended Practice A/85:2013: Techniques for Establishing and Maintaining Audio Loudness for Digital Television”. Advanced Television Systems Committee. [7] AES (2006) “AES-R7-2006, Standards project report – Considerations for accurate peak metering of digital audio signals”. Audio Engineering Society. [8] Skovenborg, E. & Nielsen, S. H. (2007) “Real-Time Visualisation of Loudness Along Different Time Scales”. Proc. of the 10th Int. Conference on Digital Audio Effects. Bordeaux, France. [9] Schmid, H., "Audio Program Level, the VU Meter, and the Peak-Program Meter," Broadcasting, IEEE Transactions on , vol.BC-23, no.1, pp.22,26, March 1977 [10] Ellermeier, W., & Hellbrück, J. (1998). Is level irrelevant in "irrelevant speech"? Effects of loudness, signal-to-noise ratio, and binaural unmasking. Journal of Experimental Psychology: Human Perception and Performance, 24(5), 1406-1414. [11] ITU-R (2012) “Rec. ITU-R BS.1770-3, Algorithms to measure audio programme loudness and true-peak audio level”. International Telecommunication Union [12] ITU-R (2012) “Rec. ITU-R BS.1864, Operational practices for loudness in the international exchange of digital television programmes”. International Telecommunication Union [13] Minimum requirements test signals for „EBU Mode‟ loudness meters http://tech.ebu.ch/loudness, (acessado em 03/07/2014).