|
Audio - Processadores de Efeito 32 Bits |
| TRANSFORME
SEU PC NUM ESTÚDIO COM O PACOTE PREFERIDO PELOS PROFISSIONAIS EM 12CD - ESCOLHIDO EM 8 DE CADA 10 PACKS DE ÁUDIO VENDIDOS NA INTERNET |
||||||||||||||||||||||||||
|
32 bits ponto-flutuante x 24 bits ponto-fixo
"Os plug-ins DSP-FX Virtual
Pack devem sua incrível fidelidade e precisão sonora não apenas aos algoritmos que
criam o efeito, mas também ao processo matemático usado para executar os algoritmos. O
texto a seguir é um tratado técnico sobre as vantagens da arquitetura de 32 bits com
ponto-flutuante, usada pelos efeitos do Virtual Pack, em comparação aos tradicionais 24
bits fixos. Temos certeza de que você achará esta discussão esclarecedora. E quando
você ouvir pessoalmente a diferença entre os efeitos do Virtual Pack e os efeitos
convencionais que não usam ponto-flutuante, sabemos que você jamais irá olhar para
trás."
- Michael Marans, editor do informativo Current Event
Desde o final da década de 1970 (uma história antiga, falando
tecnologicamente), o processamento digital de sinais (DSP) tem sido uma parte integrante
do processo de se fazer música. E por todos os anos, desde o início, quase todos os
equipamentos de efeitos em hardware, a maioria das workstations digitais e a maioria dos
softwares plug-ins de efeitos têm usado o tipo de processamento conhecido como
ponto-fixo para efetuar as complexas operações numéricas requeridas para
implementar os algoritmos de efeitos. Nos dias de hoje, o processamento com ponto-fixo
geralmente é executado com precisão de 24 bits, na maioria das vezes usando os chips de
DSP da série 56000, da Motorola, ou, no caso de softwares plug-ins, usando a CPU (unidade
de processamento central) do computador.
Embora a maioria de nós pense que a resolução de 24 bits seja o
estado-da-arte no que diz respeito a áudio digital, isso só é verdade quando se executa
apenas a gravação e reprodução de um arquivo de áudio. À medida que você começa a
manipular seus arquivos com DSP - reverb, EQ, chorus, etc - os requisitos matemáticos
para manter a qualidade aumentam dramaticamente. Como você vai ver no decorrer do texto,
os processadores de 24 bits com ponto-fixo nem sempre são adequados à essa tarefa.
Felizmente, dispomos da tecnologia de 32 bits com ponto-flutuante para manter intacta a
integridade sonora.
Valor fixo
A aritmética de ponto-fixo é assim chamada porque a faixa de
números que pode representar um determinado valor é fixa. Dessa forma, você
pode logo ter problemas quando precisa usar números que são maiores do que os que estão
dentro da faixa fixa. Por exemplo, as primeiras calculadoras digitais tinham um ponto
decimal fixo em seu display. Se você fizesse um cálculo cujo resultado fosse um valor
muito grande, o display mostraria um E, de erro. Um exemplo primitivo da
saturação (clipping) digital. Se o resultado fosse muito pequeno, você
teria erros significativos, devido ao arredondamento do número. Um exemplo
primitivo do ruído de quantização (quantization noise).
Um sinal de áudio que é processado
usando um formato de 24 bits com ponto-fixo pode ter uma faixa dinâmica de 144 dB - a
diferença entre o nível de sinal mais fraco e o mais forte (cada bit fornece 6,01 dB de
volume; 24 x 6,01 = 144,24 dB). Como 144 dB ultrapassa a faixa dinâmica da audição
humana, à primeira vista você poderia pensar que os 24 bits teriam precisão suficiente
para o processamento de efeitos de áudio. Mas na realidade, algoritmos complexos, como o
reverb, irão exibir o que os ouvintes freqüentemente descrevem como aspereza digital
(digital harshness), quando são implementados usando processamento usando 24
bits com ponto-fixo. Vejamos porque isso ocorre.
Perdendo bit a bit
Num ambiente real, é criado um campo de som reverberante em seus
ouvidos a partir da suma de literalmente milhares de ondas sonoras individuais.
Tipicamente, cada uma dessas ondas começou na fonte original do som e depois então bateu
nas várias superfícies do recinto, até atingir seu ouvido. Mas não termina aí: cada
onda individual continua a bater nas superfícies e então reaparecer no seu ouvido, com
uma intensidade menor a cada vez que é refletida. Embora cada onda individual possa ser
muito fraca em nível, quando múltiplas ondas são somadas juntas no seu ouvido elas
criam uma onda que você percebe como reverberação.
Os sistemas de reverb digital, implementados tanto por hardware quanto por software,
simulam a reverberação criando e depois somando milhares de ecos individuais do sinal
sonoro original. Da mesma maneira que num ambiente real, cada um desses ecos do sinal
aparece em seu ouvido (a saída do reverb) várias vezes, com cada interação
sucessiva a um nível mais baixo.
Num sistema processado com ponto-fixo, à medida que esses ecos atingem níveis baixos
eles começam a perder precisão de bit, isto é, no final os ecos já são
representados por seis bits, depois quatro bits, depois dois bits, e assim por diante,
até caírem ao nível de silêncio. Ouvidos com atenção, esses ecos soam
ásperos e rudes devido à baixa precisão de bit com que eles
estão sendo representados. O componente áspero do som é o resultado dos erros de
quantização que ocorrem quando tão poucos bits são usados para representar o sinal. O
componente rude do som é devido ao fato dos níveis de sinal sendo representados estão
muito próximos do nível de ruído do sistema. O fato é que muitos desses fracos ecos
ásperos e rudes são somados juntos para criar o sinal final na saída, resultando na
criação de um sinal maior áspero e rude.
Além dessa perda de precisão de bit, o formato com ponto-fixo tem uma outra limitação
chamada de saturação interna. Se a amplitude de um determinado sinal excede a faixa
dinâmica máxima do sistema (144 dB, num sistema de 24 bits), ele sofrerá uma
saturação (clipping), sendo os picos da onda aquadratados de forma não
natural. Essa forma de distorção digital soa excepcionalmente desagradável; no reverb,
mesmo pequenas saturações podem fazer todo o som parecer muito áspero. Vamos usar o
exemplo do reverb novamente para ver como e porque essa aspereza ocorre em algoritmos de
efeitos que usam arquitetura de ponto-fixo.
Entrando na saturação
Como foi descrito acima, os efeitos de reverb digital são criados
pela soma de muitos ecos individuais juntos. Quando o sinal de entrada é um transiente
forte, como uma batida da caixa da bateria, os níveis iniciais desses ecos individuais
serão razoavelmente altos. Entretanto, as fases relativas desses ecos são impossíveis
de serem predeterminadas. Assim, quando alguns dos ecos são somados, a combinação de
suas amplitudes pode exceder o nível interno máximo do sistema, e a onda resultante
estará saturada.
Para minimizar a probabilidade da ocorrência da saturação, os engenheiros geralmente
fazem um escalonamento da amplitude dos sinais internos. Essa operação de
escalonamento literalmente desloca os bits de sinal inserindo zeros, o que resulta a
redução das amplitudes dos sinais. Como já foi citado antes, sinais com baixa amplitude
são representados por menos bits, e portanto com menos precisão, o que resulta na
introdução de elementos sonoros desagradáveis. Assim, embora o escalonamento de
amplitude ajude a minimizar a distorção por saturação, isso é feito às custas da
precisão de bits.
Tecnologia de 32 bits vem socorrer
Em processamento de efeitos de áudio, o formato de 32 bits com
ponto-flutuante tem algumas vantagens significativas em comparação com o formato de 24
bits com ponto-fixo. Além da maior precisão de bit, ele oferece um método diferente e
muito mais poderoso no uso dos bits para representar o sinal de áudio. O formato de 32
bits com ponto-flutuante dedica 24 bits (a mantissa) para representar os valores do sinal,
enquanto usa os oito bits adicionais (o expoente) para representar a faixa de sinal ou
nível.
Quando os níveis de sinal caem, como no nosso exemplo do reverb, ao invés de usar menos
do que 24 bits para representar o valor do sinal, o sistema de ponto-flutuante
simplesmente muda o ajuste de nível do sinal, ajustando o valor do expoente. Isso
significa que o nível da cauda do reverb pode cair cerca de 1.500 dB e ainda poder ser
representado com toda a precisão dos 24 bits (de fato, a faixa dinâmica interna de um
sistema de 32 bits com ponto flutuante é de 1.535 dB). Dessa forma, quando a cauda de um
reverb decai até o silêncio num sistema de 32 bits com ponto-flutuante, ela não sofre
com a presença dos elementos sonoros desagradáveis que estariam associados com o mesmo
sinal num sistema de ponto-fixo.
Quando as amplitudes do sinal aumentam, como no nosso exemplo do reverb num transiente
forte, o sistema de 32 bits com ponto-flutuante simplesmente ajusta o expoente, ao invés
de saturar o sinal. E por causa da enorme faixa dinâmica disponível, não é preciso
adotar operações artificiais de escalonamento; toda precisão de bit do sinal original
é preservada.
O valor dos últimos (30)-dois bits
O formato de 32 bits com ponto-flutuante
supera completamente dois dos problemas principais associados com o processamento com
ponto-fixo: a perda de precisão de bits em baixas amplitudes e a saturação interna.
Mesmo algoritmos relativamente simples, como os de EQ, quando implementados em formato de
32 bits com ponto-flutuante, podem obter um som claro e transparente que até então só
era associado a equalizadores analógicos de alta qualidade. Quando adequadamente
implementados, algoritmos complexos como os de chorus, flange, pitch-shift e, obviamente,
reverb, também são beneficiados dramaticamente com as vantagens da arquitetura com
ponto-flutuante.
O uso da arquitetura com ponto-flutuante é relativamente novo no processamento de áudio.
Mas não há dúvida de que suas fortes vantagens sonoras irão torná-la um padrão no
processamento de áudio profissional. E, com isso, sistemas baseados somente em
processamento de 24 bits com ponto-fixo estarão fadados à obsolescência.
As entradas e saídas (e os meios) da resolução de bits
Quando você lê as especificações de um sistema de áudio digital, é
essencial que você observe todo o caminho de entrada/processamento/saída de áudio de
forma a determinar a verdadeira capacidade de performance do sistema. A mais baixa
resolução de bit que você encontrar em qualquer ponto da cadeia será a máxima
resolução para o sistema inteiro. Por exemplo, se você tem conversores A/D de 16 bits,
um processador de 24 bits e conversores D/A de 20 bits, você tem um sistema de 16 bits.
Se você tem conversores A/D de 24 bits, um processador de 24 bits e conversores D/A de 20
bits, você tem um sistema de 20 bits. As interfaces de áudio com conversores A/Ds de 20
bits, processamento interno de 24 bits e D/As de 20 bits, são sistemas de 20 bits - pelo
menos no que diz respeito às entradas e saídas analógicas.
No domínio digital, a capacidade total das placas com conversores de 20 bits com DSP de
24 bits terá resolução de 24 bits, se houver entrada e saída digitais S/PDIF
suportando 24 bits. Se você possui uma fonte/destino de sinal digital, como um
dispositivo de efeitos, que tem capacidade de 24 bits, esse tipo de placa irá aceitar o
sinal de 24 bits do dispositivo, gravar o sinal no disco (desde que o software também
suporte 24 bits) e reproduzir o sinal para o dispositivo - tudo em 24 bits.
Os Bits do Meio. O DSP Motorola 56301 que é o coração das
prtimeiras placas Layla, Gina e Darla de 20 bits é um chip de 24 bits; todos os dados que
passam para dentro e para fora do chip, e todas as computações matemáticas dentro do
chip, são efetuados com resolução de 24 bits. No que se refere ao processamento de
áudio de 20 bits, um processador de 24 bits oferece uma faixa mais larga (isto é,
espaço para escrever números maiores), de forma que ele possa processar com precisão o
áudio de 20 bits. Se você mixa trilhas digitalmente, por exemplo, pode estar seguro de
que o arquivo resultante será verdadeiramente de 20 bits, livre de qualquer erro de
saturação que possa ocorrer como resultado do processo matemático.
Processamento x Reprodução. Adicionar efeitos de DSP, como reverb ou EQ, à uma
trilha, geralmente requer precisão ainda maior do que 24 bits para que seja mantida a
integridade sonora de uma trilha, como explicado neste artigo de Paul Titchener. É
importante compreender que o processamento de 32 bits com ponto-flutuante em questão é
efetuado pela CPU Pentium, e não pelo chip Motorola 56301 das primeiras Layla, Gina e
Darla. E pelo fato de que o processamento de efeitos requer resolução de 32 bits, o
arquivo de áudio permanece na resolução original de 16, 20 ou 24 bits em que foi
gravado.
Paul Titchener é fundador e presidente da DSP/FX Inc (USA), que desenvolveu os plug-ins
DSP-FX Virtual Pack. Ele tem feito um grande trabalho na implementação de algoritmos
complexos para processamento digital de sinais (DSP) e para aplicações musicais de
filtragem adaptiva (uma forma avançada de DSP na qual o algoritmo automaticamente se
modifica em tempo-real, para melhor se adaptar ao resultado desejado). Junto com Mark
Kaplan, ele continua a aprimorar a excelência sonora no processamento de efeitos em
tempo-real em PCs. Em resumo, ele é um sujeito em formato de 32 bits com
ponto-flutuante.