Latência
do áudio no windows
Sérgio Izecksohn
Gravar
no PC já é realidade na maioria dos estúdios, embora
alguns sistemas continuem sujeitos a falhas. As máquinas
bem configuradas apresentam bastante estabilidade. Contudo,
permanece o problema da latência do áudio. O que é a latência,
quais as suas causas e qual a solução?
A
latência é o tempo necessário para localizar os dados da
memória secundária e carregá-los na memória principal
dos computadores. Trabalhando com áudio, notamos um atraso
entre alguma alteração que mandamos o programa fazer no
som e o momento em que efetivamente notamos a alteração.
Cada sistema operacional, cada programa de gravação, cada
placa de som tem suas latências, afetando todo o
funcionamento do sistema de gravação, a monitoria do som
em tempo real e a execução dos sintetizadores virtuais.
Vários
obstáculos se colocam entre os sons gravados num computador
e a sua audição, a saber:
Latência
de conversão.
Os conversores de áudio analógico/digital (AD) e
digital/analógico (DA) localizados nas entradas e saídas
das placas de som causam, em geral, um atraso de um a 1,5
milissegundo quando operando na taxa de 44,1 kHz.
Latência
de interrupção. No
PC, o sistema operacional (Windows 98, Me, NT ou 2000)
acrescenta um atraso entre o pedido de interrupção (IRQ)
do hardware e o controle de recepção mais básico do
driver. A latência de interrupção varia de um a 100
milissegundos.
Latência
de mixagem. É
o tempo necessário para um programa de gravação como o
Cakewalk SONAR encher um buffer com dados de áudio
para tocar.
Um
disco de áudio como um CD tem os sons registrados seqüencialmente.
O CD é gravado numa espiral, de dentro para fora, enquanto
um disco de vinil era gravado de fora para dentro. Um HD
grava as informações, áudio inclusive, em setores
espalhados pelo disco. Quando queremos tocar diversas pistas
de áudio num programa gravador, a cabeça de leitura do HD
tem que ler diversos arquivos com o conteúdo do áudio
(bumbo, caixa, baixo, voz). Só que esses arquivos estão
espalhados em vários setores pela superfície do HD, e a
cabeça de leitura é uma só. Como tocar todas as pistas ao
mesmo tempo?
Um
buffer é uma memória temporária onde o programa guarda
trechos da música. Funciona assim: a cabeça de leitura do
HD envia os primeiros compassos de cada arquivo (bumbo,
caixa, prato, voz) para o buffer. Quando este receber
material de todos os arquivos, ele os envia à memória
principal, e daí os sons vão para a placa de áudio e nós
os escutamos. Enquanto ouvimos os primeiros compassos da música,
a cabeça de leitura do HD envia para o buffer os próximos
compassos da música. Quando o material de todos os arquivos
tiver chegado ao buffer, ele estará apto para enviar os
sons para fora. Podemos ajustar o tamanho do buffer. Quanto
maior for o buffer, maior será a latência. Trabalhando com
um buffer menor, reduzimos a latência, mas aumentamos o
tempo de processamento, por causa da necessidade de
recarregar o buffer mais freqüentemente. Isto pode causar
interrupções ou dropouts na execução da música.
Precisamos
aumentar a latência de mixagem quando usamos muitos efeitos
em tempo real e/ou quando a placa de som não funciona bem
em baixa latência. Os programas Cakewalk Pro Audio e SONAR
têm um recurso chamado Wave Profiler que detecta a placa de
som e ajusta a latência para otimizar o seu funcionamento.
Latência
dos sintetizadores virtuais.
A nova tendência no universo MIDI são os sintetizadores
virtuais. Eles já existem há muitos anos, mas sempre
sofreram com uma enorme latência. Com novos drivers que
aceleram o funcionamento das placas de áudio no Windows,
como o WDM, esses sintetizadores estão mudando o panorama
no mundo dos instrumentos MIDI. Para funcionarem em 'tempo
real', além do driver, os instrumentos DirectX (DXi)
precisam trabalhar com uma latência bem pequena (geralmente
abaixo de 10 milissegundos), o que exigirá grande
velocidade de processamento.
Drivers.
Os fabricantes de placas de som precisam escolher entre
diversas tecnologias sobre as quais elas vão funcionar. No
desenvolvimento dos drivers que controlam essas placas, a
indústria opta entre sistemas operacionais (Windows 9x ou
2000), entre MME, DirectX, ASIO ou EASI e entre vários
tipos de drivers. Muitas vezes, reduzem a latência
consideravelmente, mas reduzindo a compatibilidade com
hardware e software. Entre os mais compatíveis, encontramos
os drivers MME e WDM.
Em
comparação com os velhos drivers MME (Multi-Media
Extensions, ou extensões multimídia), os novos drivers WDM
(Windows Driver Model), têm características promissoras:
latência muito mais baixa, trabalham com Windows XP, 2000,
Me e 98SE e têm sido implementados na grande maioria das
placas de som. São incomparavelmente melhores que os
drivers MME, que só devem ser usados quando temos uma placa
que não disponha de WDM.
Macintosh.
De fato,
os computadores Macintosh G4 têm uma latência
infinitamente menor que os PCs rodando Windows. Sem dúvida,
é um conforto trabalhar com áudio sem ter que aguardar
intermináveis milésimos de segundo toda vez que vamos
mexer nos sons. O que faz com que uma grande parcela do
mercado internacional de áudio opte, ainda assim, pelo
Windows é o custo muito mais baixo dos computadores e sua
atualização mais freqüente, graças à arquitetura aberta
dos PCs.
Conclusões.
Para os
usuários de Macintosh, céu de brigadeiro: com um ProTools
HD e suas DSP Farm, a latência é imperceptível e o
sistema é muito estável. Para a maioria usuária de PCs, a
boa notícia é o WDM, que faz um programa como o SONAR e
seus plug-ins funcionarem como um estúdio completo,
incluindo efeitos em tempo real, processamento de sons ao
vivo, uso de sintetizadores e samplers virtuais, mixagem
automática de inúmeras pistas de áudio e MIDI, seqüenciamento
de loops etc., etc. Com um bom e rápido computador, com
muita memória e espaço no HD, dá pra rodar tudo ao mesmo
tempo. E 'quase' sem latência.
Sérgio
Izecksohn é músico, produtor e professor-coordenador dos cursos do Home
Studio
|