P A e

APIs P d r I o S

API, sigla para Application Programming Interface, é um conjunto de regras e funções estabelecidas G

por um , para que outros programas possam usar os seus serviços com maior facilidade. ( e A

Semelhante a forma como as GUIs (Graphic User Interface) facilitam a comunicação entre as r P v

aplicações e o utilizador, os APIs servem também como uma interface entre diferentes , á P facilitando a comunicação entre eles. s i L Os APIs são feitos por vários tipos de software, incluindo sistemas operativos, e relativamente ao o

I e

áudio, DAWs. (Digital Audio Workstation)

P

Uma das principais vantagens da existência de APIs nas DAWs é a possibilidade de criar plug-ins A e d que utilizem serviços da DAW para extender as suas funcionalidades, sem entrar em grandes T r

detalhes no que toca à sua implementação no software. I o O

A N n t

o P n

Virtual Studio Technology R i n O h

A tecnologia de estúdio virtual (VST) da é um interface que permite a integração de o G

software de sintetizadores de áudio e efeitos plugin com editores de áudio e sistemas de gravação em  R disco rígido. Os VST’s e as tecnologias similares usam o processamento de sinal digital (DSP) para T A simular hardware de estúdios de gravação tradicionais em software. Existem milhões de plugins, e c M tanto comercias como freeware e a tecnologia VST é suportada por um largo número de aplicações n o l de áudio. A tecnologia tem de ser licensiada pelo seu criador, a Steinberg. M o

Os plugins VST correm geralmente dentro de uma DAW (Digital Audio Workstation), g I i a providenciando funcionalidades adicionais ao aplicativo anfitrião. A maioria dos VST plugins são N s classificados como instrumentos (VSTi) ou efeitos, apesar de existirem outras categorias. Os VST G d plugins providenciam geralmente um GUI (Grafical User Interface) personalizado, exibindo e I

I controlos similares aos botões do hardware em questão. N n f

Os intrumentos VST incluem emulações de simulações de hardwarede áudio de renome, emulando o T o r

aspecto dos equipamentos originais e as suas características sónicas. Isto permite aos utilizadores E usarem versões virtuais de dispositivos que de outra maneira seriam difíceis de obter. m R á

Os instrumentos VST requerem o envio de notas via MIDI de modo a enviar áudio, enquanto que os t F i plugins de efeitos somente processam data (alguns plugins de efeitos necessitam também a recepção c a A de MIDI, um exemplo é tais plugins usarem sincronização MIDI para modular os efeitos em sicronia M C com o tempo). Mensagens MIDI podem também geralmente sere utilizadas para controlar u E parâmetros tanto de plugins de intrumentos como de plugins de efeitos. A maioria das aplicações s i S anfitriãs permitem que a saída de áudio de um VST seja roteada para uma entrada de outro VST c a )

(encadeamento). Por exemplo, a saída de um sintetizador VST ser enviada para a entrada de um l E 

efeito de reverb para futuro processamento.

1 P º

L T r As especificações dos interfaces VST’s datam de 1996. Ao mesmo tempo deu-se o lançamento do U a b 3.02 que incuía os primeiros formatos de VST plugins alguma vez disponíveis. G a l As especificações foram actualizadas para a versão 2.0 em 1999. Uma das adições foi a possibilidade I h N

dos plugins receberem sinais MIDI. Isto permitiu a introdução do formato de instrumentos VST. Os o

instrumentos VST por outro lado, também podiam ser autónomos. S

O Neon foi dos primeiros instrumentos VST incluídos no Cubase VST 3.7. Era um sintetizador P analógico virtual de 2 osciladores e 16 vozes. Mais uma vez as específicações da interface VST foram A actualizadas para a versão 2.4 em 2006. As mudanças incluíam a capacidade de processar audio R usando a precisão de 64 bits. A última actualização, para a versão 3.0, foi feita em 2008 e as mudanças foram as seguintes: A

Á

• Entradas audio para os intrumentos VST U

• Multiples entradas e saídas MIDI D • Integração SKI (Interface Kernel Steinberg) opcional I O Anfitriões VST

Um anfitrião VST é uma aplicação em software ou um dispositivo de hardware que possibilita o carregamento e o controlo dum plugin VST. A aplicação anfitriã é responsável pelo manuseamento do roteamento de áudio digital e MIDI de e para os plugins VST. De seguida é apresentada uma vasta gama de anfitriões VST disponíveis:

• ACID Pro • • Adobe Premiere Elements • Adobe Premiere Pro • ) • AudioMulch • • Steinberg Cubase • • Steinberg Wavelab • FL Studio • Kore • LMMS • Max MSP • • MadTracker 2 • ModPlug Tracker • Podium • REAPER • • Samplitude • Sonar • Vienna Ensemble Pro

Existem também aplicações anfitriãs autónomas dedicadas cujo único propósito é servirem de anfitrião para os plugins VST em vez de servirem como sequênciadores ou processadores de áudio. Estes são geralmente optimizados para uso em performances ao vivo, com configurações como por exemplo configuração de mudança rápida de faixas de áudio. Exemplos de VST’s dedicados a este propósito são:

• Cantabile • Brainspawn Forte • Chainer • • LiveProfessor • SAVIHost • Tobybear MiniHost • Vienna Ensemble Pro • VSTHost

Hardware

Anfitriões VST em hardware podem carregar versões especiais de plugins VST. Tais unidades são portáteis e utilizáveis sem computador, contudo, toda a edição é feita em computador. Outras opções de hardware incluem placas PCI/PCIe desenhadas para processamento de áudio, as quais libertam o computador dos processamentos de áudio poupando assim o seu CPU e memória RAM. A informação de áudio pode igualmente ser enviada através de uma rede usando o software apropriado, permitindo a operação do anfitrião principal somente num computador e os plugins VST em computadores periféricos. Presets (Pré-definições)

Os plugins VST na maior parte dos casos têm muitas definições logo é necessário um método para seu manuseamento e armazenamento. A Steinberg introduziu dois tipos de formatos para tal, fixeiros FXP e FXB, a diferençã é que enquanto os FXP armazenam uma definição única os FXB armazenam todo um banco de definições. Muitos plugins VST possuem o seu próprio método de gravar as suas definições e não usam os standars FXP e FXP.

Linguagens de programação

Steinberbg VST SDK é um conjunto de classes C++ baseadas à volta de uma C API subjacente. O SDK pode ser descarregado do site da Steinberg. Existem várias portas disponíveis, tais como uma versão da Delphi, uma versão da JAVA e uma versão .NET. Outra das implementações .NET é a VST.NET. Este projecto open source inclui também um framework que facilita a criação de plugins VST com um código mais estruturado. A VST.NET também providencia um suporte para escrever aplicações anfitriãs gerenciadas com uma classe gerenciada que permite o carregamento de um plugin não gerenciado. Em adição, a Steinberg desenvolveu o GUI VST, o qual é simplemente mais um conjunto de classes C++, as quais podem ser usadas para construir o interface gráfico. Um largo número de VST’s comerciais e de open-source são escritos usando o framework Juce C++ em vez de chamadas directas para o SDK VST, porque tal permite que binários multi-formato sejam construídos para um único código base.