Loading AI tools
来自维基百科,自由的百科全书
VST(Virtual Studio Technology),中文名為虛擬工作室技術,是Steinberg公司推出的一項軟件接口技術,主要用於計算機音樂製作領域,以插件的形式供音頻處理相關的軟件來使用。使用VST插件,用戶可以對音頻訊號進行處理,也可以使用VST樂器(VSTi, VST instruments)來創作音樂。開發者可以使用Steinberg所提供的開發套件,來自主開發各種類型的VST插件。
VST由Steinberg創立,它最初的的標準和SDK首發於1996年,與其同時推出的還有宿主軟件Cubase 3.02。當時的VST主要用於音頻信號的處理,為音頻添加效果。第一批VST插件是Steinberg推出的Espacial(reverb殘響插件)、Choirus(合唱效果插件)、Stereo Echo(回聲效果插件)和Auto-Panner(聲相插件)。
1999年,Steinberg將VST接口規範更新到2.0版本,其中的一個新增能力是插件能夠接收並處理MIDI數據。由此,VST樂器技術誕生,開發者可以基於此開發軟件合成器和採樣器。第一個VSTi插件是Steinberg推出的Neon。[1]
2006年,VST接口規範更新到2.4版本,其改動包括增加採用64位精度處理音頻的能力。[2]
2008年,Steinberg推出VST 3.0接口規範。它採用了與先前版本差別較大的格式(由先前的動態鏈接庫(DLL)格式改為專有的VST3格式),使得諸如REAPER、FL Studio等數字音頻工作站通常將其與先前版本分開進行管理。
2011年2月,VST 3.5接口規範發布。
2013年9月,Steinberg停止了對VST 2 SDK的維護。12月,Steinberg停止發布該版本的SDK。
根據處理對象的不同,VST插件一共有三種類型。在宿主軟件中,「VST」一詞單用,通常指的就是VST效果或VST MIDI處理器;只有在明確指出「VSTi」的情況下才能表示VST樂器。
VSTi(VST instrument),即VST樂器,是VST家族中用於生成音頻的一類VST插件。它們作為音源來使用,一般都是虛擬的合成器或採樣器。其中合成器通過軟件算法和DSP,模擬真實樂器、硬件合成器或獨創性地生成樂音;而採樣器則是採樣真實樂器的聲音,並通過VST插件播放出來。值得一提的是,一些VSTi插件能夠通過軟件合成媲美真實樂器的聲音,效果堪比真實樂器,卻擁有比採樣音源小的多的體積[註 1]。
VST效果是VST最基本也是最核心的用途。它們執行和硬件音頻處理器相同的功能,即時處理計算機中的音頻信息,為音頻添加各種效果。同時也可以實時監測音頻信息,並為用戶提供可視化的反饋,如頻譜分析和測量。大多數宿主軟件,尤其是DAW,都允許同時加載多個效果,組成VST效果鏈,極大提升了音頻處理的體驗。
顧名思義,VST MIDI處理器主要用於處理MIDI消息,它是為使用MIDI進行音樂創作的音樂工作者而設計的。比如,有的VST插件可以給MIDI消息加上諸如轉置、琶音等效果,也有的可以操作MIDI控制器以改變宿主處理MIDI的行為。
VST宿主(VST Host),又稱VST宿主,是VST插件所運行的軟件或硬件設備,它們為VST插件提供加載UI的接口,與VST插件直接交互。
典型的宿主通常可分為以下幾類:
這樣的宿主軟件通常會利用VST插件來擴展自己的功能。最典型、最為重要的就是數字音頻工作站(Digital Audio Workstation,簡稱DAW),如Cubase、FL Studio、REAPER、Ableton Live等。同時,一些處理音頻的軟件也支持VST效果插件,如Adobe Audition、Audacity。
這樣的宿主軟件一般只為一款VST插件提供主機環境,而不是將其作為插件來擴展自己的功能。它們通常會根據自己所運行的插件進行實時優化。
最典型的就是各種VST插件開發者所推出的插件的「獨立版本」(standalone version),獨立版本實際上就是一個集成了VST插件運行環境的可執行文件,只要運行就會自動加載對應的插件,界面的核心也正是插件的UI。通常開發者會在宿主中添加一些插件之外的功能,提高宿主的實用性,如音頻設備設置、MIDI輸入、導出縮混音頻等。這種設計常用於各種VSTi,主要供用戶直接運行插件而不通過運行DAW,方便用戶演奏樂器;一些VST效果也會提供獨立版本來方便用戶直接處理現有的音頻文件。
硬件VST宿主可以加載特殊版本的VST插件。這些單元是便攜式的,並且在沒有計算機的情況下可用,儘管其中一些單元需要計算機進行編輯。通常硬件VST宿主可以獨立進行音頻處理的運算,從CPU接管音頻處理,同時釋放RAM。典型的例子就是VST機架。
開發VST插件,需要使用Steinberg的VST SDK。它使用C++開發,是一套基於C API的C++類。可以從官方網站上下載。
Steinberg也開發了VST GUI,這是VST SDK的一部分,也是另外一套C++類,可用於構建圖形界面,但相對來說都比較陽春。一般地,插件的外觀仍然必須由插件的開發者創建。
大量的商業和開源的VST插件是使用Juce框架編寫的,而不是直接調用VST SDK,因為它允許從單個代碼庫構建多格式(VST,AudioUnit和Real Time AudioSuite)的二進制文件。