Klaus Knopper

Propaganda
Pergunte ao Klaus!
COLUNA
Klaus Knopper
O criador do Knoppix responde as mais diversas dúvidas dos leitores.
por Pablo Hess
Múltiplas placas de som
Tenho duas placas de som M-Audio Delta 10101LT
e quero que elas funcionem juntas, como se fossem
uma única placa, pois meu interesse é ter 16 entradas
de áudio na máquina. Já consultei várias documentações a esse respeito e algumas sugestões são muito
difíceis – exigindo a reinstalação do ALSA e aplicação de patches no kernel, por exemplo. Também já
li que o antigo subsistema de áudio OSS permite
isso, mas acho que remover o ALSA e instalar o OSS
seria mais problemático que prático.
Simplesmente ajustar o
desempenho do sistema e as
prioridades dos processos não
é suficiente. Provavelmente,
será necessária a extensão
de tempo real do kernel.
Estou usando um processador AMD de 2.6 GHz
e a distribuição AGNULA, que resulta em menos
xruns que qualquer outra distribuição multimídia
que eu já tenha testado. Ainda não encontrei uma
configuração que diminua os xruns e não entendo
por que o AGNULA é tão melhor a esse respeito.
É possível conseguir o que eu quero com alguma
versão mais recente do ALSA, sem uma recompilação e reinstalação completa? Sei que a segunda placa
precisará ser escrava da primeira e conectada a esta
através das conexões SMPTE ou Word Clock. Preciso descobrir como fazer as duas placas funcionarem
como uma única, pois tenho um estúdio de gravação
e necessito das entradas extras. Alguma sugestão?
Resposta
Em resumo, a sua questão está respondida (em
inglês) em [1]. Com essa configuração, basicamente, informa-se à biblioteca ALSA quais entradas de
hardware e placas usar para cada entrada (virtual)
12
de áudio nos aplicativos, e reunir mixers para que as
duas placas se comportem como uma única. Como
isso é feito por software, é uma tarefa que depende
totalmente do compartilhamento de tempo, o que
explica porque é provável sofrer overruns e underruns
quando o sistema não está preparado especialmente
para esse fim. Simplesmente ajustar o desempenho
do sistema e as prioridades dos processos não é suficiente. Provavelmente será necessária a extensão
de tempo real do kernel [2].
O motivo para o melhor desempenho no AGNULA pode estar relacionado com o fato de que
ele também utiliza um kernel modificado para
aplicações de tempo real. A maioria das distribuições mais usadas (ainda) não incluem esse recurso
do kernel, pois ele não faz parte do kernel oficial
(também chamado de vanilla) e cria um certo
overhead, além de modificar muitos aspectos internos do kernel, tais como o tratamento de interrupções para dispositivos. Para processamento de som
e sintetizadores de áudio de tempo real é essencial
utilizar essa extensão do kernel, independente da
velocidade do seu computador. ■
Mais informações
[1] Tutorial de uso de múltiplas placas de som:
http://www.sound-man.co.uk/
linuxaudio/ice1712multi.html
[2] Extensões de tempo real para o kernel:
http://rt.wiki.kernel.org/
Sobre o autor
Klaus Knopper é o criador do Knoppix e
co-fundador do evento Linux Tag. Atualmente ele trabalha como professor, programador e consultor.
http://www.linuxmagazine.com.br
Download