O seu site de Tecnologia
Digital aplicada à Música. Aqui
você encontra informações
técnicas relativas
à construção de
seqüências MIDI,
gravações de áudio, loops,
compactação de arquivos, manuais traduzidos para
o
português de softwares musicais consagrados, download de
softwares, plug-ins e utilitários para quem utiliza a
informática como ferramenta musical, além das
notícias mais atuais do que está acontecendo no
mundo da
música digital.
Os plugins de áudio se tornaram componentes essenciais em
qualquer estúdio moderno de som e os usuários do
Linux podem, agora, desfrutar tanto de seus excelentes plugins nativos
LADSPA quanto d imenso acervo de plugins VST/VSTi antes
disponíveis só para usuários do
Windows. Ou seja, os músicos que utilizam Linux
têm à sua disposição, numa
só tacada, muito mais plugins que todos os outros.
Os plugins VST tornaram-se componentes muito bem-vindos em
estúdios profissionais de gravação e
produção de som, sejam baseados em Windows ou
Mac. Alguns plugins de altíssima qualidade e
preço são, hoje, pedras fundamentais na
produção sonora profissional. Além
deles, muitos plugins ainda de alta qualidade mas de baixo
preço ou mesmo gratuitos permitem que estúdios
menores e músicos em seu estúdio caseiro possam
produzir peças de um nível impressionante -
às vezes até rivalizando com o dos
caríssimos grandes estúdios.
A API dos plugins VSTi estendem implementação VST
por permitir que o plugin seja um instrumento, ou seja , um
sintetizador, sampler ou seqüenciador e não apenas
um modificador de som. Da mesma forma como na API do VST, os plugins
VSTi tornaram-se componentes padrão em programas de
música e tratamento sonoro nas plataformas Windows e Mac.
Como
mostrado na figura acima, um instrumento VSTi típico
é um sintetizador por software, "tocável" via
protocolo MIDI, com um controle paramétrico em tempo real,
manual ou via MIDI e, possivelmente, com saídas multicanais.
Qualquer
software moderno de produção de áudio
para Windows ou Mac está preparado para receber plugins VST
e VSTi. O número de aplicativos que aderem ao
padrão é simplesmente grande demais para que
possamos enumerá-los aqui - O Google é
mais eficiente nisso. Entretanto, os últimos itens a serem
incluídos nessa lista são de nosso especial
interesse: finalmente os plugins VST/VSTi podem ser usados nos
aplicativos de som e música no Linux.
A
possibilidade de usar plugins VST e VSTi no pingüim foi
desenvolvida primeiramente por Kjetil Matheussen. O esforço
inicial resultou no promissor vstserver, o marco inicial de uma
arquitetura cliente/servidor para execução de
plugins VST.
O servidor é baseado na capacidade da onipresente biblioteca
Wine,
cujo objetivo é recriar a API do Windows dentro do Linux.
Foram criados também dois clientes para uso com o vstserver.
O primeiro foi um "objeto" para o Pure Data, o conhecido Pd,
um ambiente para sintetização e
composição musical. O segundo foi um plugin para
o LADSPA
(Linux Audio Developers Simple Plugin), uma espécie de "VST
livre" para o Linux. O plugin VST do LADSPA age como um programa
hospedeiro para os plugins VST de verdade e pode ser usado em conjunto
com os plugins LADSPA nativos.
Recentemente,
foi desenvolvido um terceiro plugin, que permite o uso de instrumentos
VST, os chamados VSTi. É claro, poderíamos usar
plugins de instrumentos nativos no padrão DSSI, mas ter
milhares de instrumentos VSTi à
disposição é altamente
desejável. Portanto, graças ao vstserver,
é possível rodar efeitos e instrumentos VST no
Linux.
Para
instalar o ambiente vstserver em seu sistema, siga os passos abaixo:
Baixe,
compile e instale o pacote do Wine modificado por Kjetil,
disponível em All Things
LADSPA.
Baixe,
compile e instale os pacotes vst-server,
k_vst~,
ladspavst
e vsti mais atuais que encontrar, eles também
estão disponíveis no site acima.
Ajuste a
variável de ambiente VST_PATH exatamente como descrito na
documentação do vstserver - só assim o
servidor saberá onde encontrar os plugins VST.
Inicie o
servidor a partir do diretório onde estão os
códigos fonte.
Execute
um dos clientes. O PD é necessário para o k_vst~.
Para o plugin VSTLADSPA,
é necessário um aplicativo hospedeiro LADSPA. Uma
boa pedida é o velho editor de áudio Snd,
modificado por Kjetil como prova de conceito. O cliente VSti
é um aplicativo completo - não precisa de um
hospedeiro - do qual falaremos mais adiante.
Cada
pacote inclui instruções bastante detalhadas
sobre a compilação e a
instalação do software. Por sinal, quem quiser
usar o sistema de Kjetil deve baixar e compilar a versão
modificada do Wine disponível no site do vstserver. O
servidor é muito sensível à
versão do Wine instalada. Outras versões que
não a de Kjetil podem não funcionar ou causar
instabilidades no servidor.
Nota: conforme
indicado na documentação do vstserver, a segunda
etapa (compilação) requer o pacote de
desenvolvimento da Steinberg, o VST SDK (System Development Kit).
Apenas dois arquivos são necessários para
compilar o servidor. Embora o SDK seja gratuito, não
é de livre distribuição e deve ser
baixado em separado, diretamente da Steinberg.
Além disso, se o caminho até os plugins VST
estiver configurado corretamente, mas o servidor vstserver se recusa a
encontrá-los, tente fazer um link simbólico para
o servidor e o objeto vstservant.so no mesmo diretório
determinado pela variável de ambiente VST_PATH.
Servidor e
cliente Ovstserverfoi projetado para "escutar"
requisições de um aplicativo cliente. Como
já foi mencionado anteriormente, foram criados dois clientes
para o vstserver.
um
objeto para o ambiente de síntese e
composiçãoPure Data,
também
conhecido como PD;
um plugin
LADSPA que age como hospedeiro para plugins VST.
Ambos
os clientes merecem explicações mais
aprofundadas, que serão colocadas aqui.
PD e o
objeto k_vst~ Inicie
o servidor com o comando vst-server em um terminal. Você
verá uma breve mensagem indicando que o servidor
está pronto para receber dados dos clientes. Caso
você possua o maravilhoso PD instalado em seu sistema,
inicie-o como o comando a seguir, que adiciona o objeto k_vst~ a suas
funções internas: #
pd -lib k_vst~
Estamos
considerando que o comando foi emitido em seu diretório
pessoal, ou seja, dentro de /home. Caso seja rodado em qualquer outro
lugar é preciso incluir o caminho completo para o objeto.
A figura acima mostra um plugin VST de efeito utilizado dentro de um
banco PD, que roteia o sinal de entrada pelo objeto k_vst~object, ou
seja, o plugin VST, e, depois, joga o som modificado em sua placa de
áudio. O plugin VST pode ser operado da mesma forma que no
Windows ou no Mac; os parâmetros dos efeitos são
ajustados simplesmente movendo os controles deslizantes, girando os
botões e ligando ou desligando chaves.
Detalhes
sobre o "banco" citado podem ser encontrados aqui.
Recomendamos usar o JACK
como sistema de som em vez do ALSA, pois foi dele que obtivemos os
melhores resultados no que toca ao desempenho de entrada e
saída. (Clique aqui para saber mais). Ao se deparar com
problemas de intermitência no som quando estiver usando o
ALSA, experimente usar o JACK. Você nunca será
mais o mesmo.
O cliente
ladspavst Usar
um plugin LADSPA como hospedeiro para um plugin VST pode parecer
bastante esquisito - afinal, são dois plugins, um dentro do
outro. O ladspavst realmente cria uma instância de plugin que
age como hospedeiro de outros. O ladspavst em si é
transparente para os usuários, já que apenas suas
funções são importantes e
não há necessidade de interface.
A
figura acima mostra o plugin de filtro NorthPole,
chamado do menu LADSPA em um editor de som Snd. Como podemos ver na
figura, os plugins VST estão listados como VST
Plugin[plugin_name.dll] available from vstserver. Não
há diferença na forma de uso; os plugins VST
são plugados em seu software da mesma forma que qualquer
plugin LADSPA nativo. O plugin ladspavst permite dois modos de
operação: os plugins VST podem adotar o visual do
seu ambiente hospedeiro, no exemplo acima o Motif
- ou podem mostrar o plugin em sua própria interface
original, idêntica à que seria vista em um sistema
Windows.
Usando um
plugin VSTi Como
já foi dito anteriormente o sistema vstserver
também inclui um cliente chamado vsti, que permite o uso de
instrumentos VST, os chamados VSTi. A sintaxe do cliente vsti
é bem simples, veja a seguir: #
vsti /caminho/para/o/plugin_vsti.dll
Repare
novamente na primeira figura desta página. Lá
vemos o vsti rodando o sintetizador Crystal. O servidor vstserver
está aberto e vemos o painel de conexões MIDI - o
excelente qjackctl,
de autoria de Nuno Capela - ligando o teclado MIDI externo ao Crystal.
Além de conexões MIDI, o qjackctl
também oferece um painel para interligar entidades de
áudio.
O projeto
FST O
sistema FST -
FreeST é uma maneira alternativa de usar plugins
VST e VSTi no Linux. Em vez de um servidor, implementou-se uma
biblioteca. O desenvolvedor Paul Davis diz que o FST é " ...
uma solução mais apropriada para
aplicações de áudio que pode trabalhar
com muitos plugins VST, já que os chaveamentos de contexto
do vstserver não trabalham muito bem quando diversos plugins
VST são usados ao mesmo tempo". A desvantagem é
que " ... um plugin malcriado pode travar o hospedeiro, coisa que o
vstserver evita".
O sistema inclui no momento a biblioteca libfst e o jack_fst, um
utilitário de demonstração para
carregar e rodar plugins VSY/VSTi. Assim como no vstserver, compilar o
FST requer as instalações completas do Wine e do
JACK, incluindo seus códigos fontes e os arquivos AEffect.h
e aeffectx.h, do VST SDK da Steinberg.
As
funções da biblioteca libfst podem ser compiladas
em aplicativos como o gravador multipistas em disco rígido
Ardour, o sistema de processamento e síntese de som gAlan e
o seqüenciador MIDI Muse. Os plugins VST ficam
disponíveis para esses programas da mesma forma que os
plugins nativos LADSPA.
O
cliente jack_fst possui um "lançador" na linha de comando
para rodar plugins VSTi como instrumentos independentes. O exemplo a
seguir demonstra o processo como sintetizador Crystal:
#
jack_fst Crystal
A
extensão do arquivo não é
necessária, mas talvez seja preciso especificar o caminho
completo para o diretório de plugins. O servidor JACK deve
estar rodando e as conexões de áudio e MIDI
necessárias já devem ter sido feitas pelo
usuário - elas não são
automáticas.
Alguns Problemas conhecidos Tanto o
vstserver quanto o libfst dependem fortemente de versões
específicas do Wine. Como já foi dito
anteriormente, o site do vstserver oferece uma versão
modificada do Wine que funciona a contento com o sistema. Entretanto,
ele é baseado em código-fonte relativamente
antigo; se por algum motivo você quiser uma versão
mais nova do Wine pode se arriscar a perder a estabilidade do
vstserver. O sistema FST é menos enjoado no tocante a
versões do Wine, mas ainda assim falha em algumas delas.
Consulte o tutorial sobre VST no Linux, disponível aqui,
para saber as última notícias sobre a
compatibilidade entre o Wine e o FreeST, além de
informações sobre outros problemas já
detectados.
Assista
a
nossa Revista Eletrônica. A cada dia um novo artigo
é publicado
Assista
os previews de nossos cursos em vídeo. A grande maioria
deles
é constituída de capítulos
completos