# Virtual Studio Technology

Virtual Studio Technology (em PT-BR: Tecnologia de Estúdio Virtual), ou simplesmente VST, é uma interface desenvolvida pela Steinberg e lançada em 1996 que integra sintetizadores e efeitos de áudio com editores e dispositivos de gravação de som digitais. O VST utiliza processamento de sinal para simular o hardware tradicional de estúdio de gravação com software. Existem milhares de plugins desenvolvidos sobre a plataforma VST, que é suportada pela maioria das aplicações de áudio; notavelmente, o suporte a VST é padrão em aplicativos DAW. A tecnologia pode ser licenciada diretamente da Steinberg.
A sigla VSTi é normalmente usada para diferenciar um plugin de efeito de um plugin de instrumento virtual, este tendo a letra "i" adicionada ao fim da sigla.

## Visão Geral

Plugins VST funcionam geralmente dentro de uma estação de trabalho de áudio digital (DAW), para fornecer funcionalidades adicionais. A maioria dos plugins VST são ou instrumentos (VSTi) ou efeitos, embora existam para outras categorias analisadores de espectro, por exemplo e vários metros.
Plugins VST costumam fornecer uma interface de usuário gráfica personalizada, que exibe controles semelhantes aos interruptores e botões físicos no hardware de áudio. Alguns plugins (muitas vezes mais velhos) contam com o aplicativo host para sua interface de usuário.
Instrumentos VST incluem emulações de software para simulação de sintetizadores de hardware bem conhecidos e samplers. Estes geralmente imitam a aparência do equipamento original, bem como suas características sonoras. Isso permite que músicos e engenheiros de gravação usem versões virtuais de dispositivos que de outra forma poderia ser difícil ou caro de se obter.
Instrumentos VST recebem notas como informação digital via MIDI, e saída de áudio digital. Os plugins de efeito recebem áudio digital e processam-no por meio das suas saídas.
Nota: Alguns plugins de efeito também aceitam MIDI como entrada, por exemplo MIDI sync para modular o efeito em sincronia com o tempo). Mensagens MIDI pode controlar ambos os parâmetros do plugin de instrumentos e efeitos. A maioria dos aplicativos de host pode encaminhar a saída de áudio de um VST para a entrada de áudio de um outro VST (encadeamento). Por exemplo, a saída de um sintetizador VST pode ser enviado através de um efeito VST reverb.

## História

Steinberg lançou a especificação de interface VST e SDK em 1996. Eles lançaram-lo, ao mesmo tempo, com o Steinberg Cubase 3.02, que incluiu os primeiros plugins formato VST: Espacial (um reverb), Chorus (um efeito coro), Stereo Echo e Auto-Panner.
Mais tarde, Steinberg atualizou a especificação de interface VST para a versão 2.0 em 1999. A novidade foi a capacidade dos plugins receberem dados MIDI. E graças a essa novidade, foi introduzido o formato Virtual Studio Technology Instrument (VSTi). VST Instruments pode atuar como autônomo sintetizadores, samplers, software ou drum machines.
Neon foi o primeiro disponível instrumento VST (incluído com o Cubase VST 3.7). Era um 16-vozes, 2-osciladorores sintetizador analógico virtual. A especificação de interface VST foi atualizado para a versão 2.4 em 2006. As mudanças incluíram a capacidade de processar áudio com precisão de 64 bits.
VST 3.0 foi lançado em 2008. As mudanças incluíram:
* Entradas de Áudio para VST Instruments;
* Vários MIDI entradas / saídas;
* SKI Opcional (Steinberg Kernel Interface) integração.
VST 3.5 foi lançada em fevereiro de 2011. As mudanças incluíram nota expressão, que fornece informações abrangentes articulação em eventos das notas individuais em um arranjo polifônico. Isso apoia a flexibilidade desempenho e uma sensação mais natural de jogo.
Em setembro de 2013, Steinberg descontinuado manutenção do VST 2 SDK. Em dezembro, Steinberg parou de distribuir o SDK.

## Linguagens de programação

VST SDK do Steinberg é um conjunto de classes C++ com base em torno de uma API C subjacente. O SDK pode ser baixado de seu site.
Existem vários "ports" disponíveis, como uma versão Delphi por Frederic Van Mol, uma versão Java do projeto jVSTwRapper no Sourceforge, e duas versões Noise.NET e VST.NET; este projeto de código aberto também inclui uma estrutura que torna a criação de plugins VST mais fácil e resultar em um código mais estruturado. VST.NET também fornece suporte para a criação de aplicativos host gerenciados com uma classe de gestão que permite o carregamento de um Plugin não gerenciado. A linguagem notável apoio VST é Faust, considerando que ele é feito especialmente para a tomada de plugins de processamento de sinal, produzindo muitas vezes mais rápido do que o código C ++ escrito à mão.
Além disso, Steinberg desenvolveram a GUI VST, que é um outro conjunto de classes C ++, o qual pode ser usado para construir uma interface gráfica. Há classes para os botões, controles deslizantes e displays etc. Note-se que estas são as classes C ++ e de baixo nível a aparência ainda tem que ser criado pelo fabricante do plugin. VST GUI é parte do VST SDK e também está disponível como um projeto sourceforge em http://sourceforge.net/projects/vstgui.
Um grande número de VSTs comerciais e de código aberto são escritas usando a estrutura Juce C++, em vez de chamadas diretas para o VST SDK, porque isso permite binários multi-formato (VST, AudioUnit e Tempo real AudioSuite) a ser construído a partir de uma única base de código.

## Plugins VST

Existem três tipos de plugins VST:
* VSTi (instrumentos). Eles são geralmente sintetizadores virtuais ou samplers. Muitos recriam a aparência e o som de sintetizadores de hardware famosos. Alguns VSTi mais conhecidos incluem: Massive, FM8, Absynth, Sylenth1, Reaktor, Gladiator, Vanguard, Nexus, Serum, Omnisphere, entre muitos outros.
* VST, que por sua vez gera efeitos de áudio e executa as mesmas funções de processadores de áudio hardware, como compressão, distorção, reverbs, delays, phaser, etc. E também temos efeitos de monitoramento, que fornecem feedback visual do sinal de entrada, sem o processamento de áudio. A maioria dos DAWs (Estação de Trabalho de Áudio Digital) permitem múltiplos efeitos em cadeia. Dispositivos de monitoramento de áudio, como analisadores de espectro e medidores de decibéis, representam características de áudio (de distribuição de frequência, amplitude, etc.) visualmente.
* VST MIDI envia efeitos MIDI (por exemplo, transpor ou arpejo) e encaminha os dados MIDI para outros instrumentos VST, ou a dispositivos de hardware, que estejam conectados.

## Presets

Plugins VST, muitas vezes têm muitos controles, e, portanto, precisarão de um método de gerenciamento de presets (conjuntos de configurações de controle).
Steinberg Cubase introduziu dois formatos de arquivo para armazenar presets: um arquivo FXP armazena um único pré-definido, enquanto um arquivo FXB armazena todo um banco de presets. Esses formatos já foram adotados por muitos outros hospedeiros VST. Porém muitos plugins VST tem seu próprio método de carregar e salvar presets, que não necessariamente utilizam os formatos FXP/FXB padrão, usando tecnologias concorrentes.