tvorba zvukových pluginů Část 1: Úvod
Vítejte! V této sérii tutoriálů se naučíme, jak vytvořit zvukové pluginy, které běží jako VST, VST3, AU, RTAS, AAX nebo jako samostatná aplikace.
Audio pluginy jsou programy, které jsou načteny do hostitelského softwaru (například Ableton Live, Logic nebo REAPER). Zpracovávají Audio a / nebo MIDI data a mohou mít grafické uživatelské rozhraní. Zde jsou tři příklady (u-he Zebra, Sonalksis Freg a D16 Decimort):
jak můžete vidět, GUI obvykle obsahuje některé ovládací prvky (knoflík je nejběžnější), které mění způsob, jakým plugin zpracovává příchozí data. Plugin má předvolby (na snímku se nazývají Combo a emulátor), které ukládají všechny polohy knoflíků a další hodnoty.
začneme jednoduchým pluginem zkreslení. Poté vytvoříme tento subtraktivní syntezátor plugin krok za krokem:
budeme používat C++ a knihovnu WDL-ol. Je založen na Cockos WDL (vyslovováno whittle). V podstatě to pro nás dělá hodně práce, nejdůležitější:
- Ready-made projekty Xcode / Visual Studio
- Vytvořte formáty VST, AudioUnit, VST3 a RTAS z jedné kódové základny: stačí vybrat formát pluginu a kliknout na spustit!
- vytvořit 32/64-Bit spustitelné soubory
- Udělej si svůj plugin Spustit jako samostatný Win / Mac aplikace
- většina GUI ovládací prvky používané v audio pluginů
to také vám dává většinu GUI ovládací prvky používané v audio pluginů, a některé běžně používané audio algoritmy, jako je například převzorkování. Toto vlákno fóra obsahuje screenshoty mnoha pluginů, které byly provedeny pomocí WDL.
různé formáty pluginů dělají víceméně totéž, takže za normálních okolností by ve vašem kódu bylo hodně kopie & vložit. Jako programátor Chcete zůstat v suchu, takže dříve nebo později byste napsali abstrakční vrstvu přes různé formáty. Tato práce již byla provedena ve formě IPlug, který je součástí WDL. Jedná se o nepříjemné části vývoje zvukových pluginů, takže se nyní můžeme soustředit na zábavné věci, jako například:
- jak plugin zpracovává příchozí Audio / MIDI
- jak plugin vypadá
- jak se integruje s hostitelem (automatizace, předvolby atd.)
další dobrou věcí na WDL je jeho přípustná licence: můžete ji volně používat pro komerční aplikace. Podrobnosti naleznete na výše uvedených odkazech.
jak to uděláme
pronásledování je lepší než úlovek.
V programování je výsledek obohacující, ale cesta je tam, kde se učíme. V této sérii tutoriálů vám nedám jen dlouhé výpisy kódů s dokonalým řešením. Začneme s něčím, co funguje a vylepšíme ho, jakmile budeme čelit problémům.
nevýhodou je, že napíšete kód, který později nahradíte něčím lepším. Jako programátor jste na to asi zvyklý. První výhoda: nebude to tak ohromující, protože k řešení přistoupíme krok za krokem, místo abychom tam jen skočili. Druhou výhodou je, že bychom se po cestě mohli naučit hodnotné lekce programování.
tato série není o výpočtu složité matematiky ručně. Je to o vytváření úžasné software, který můžete dát svým přátelům hudební producent, aby mohli udělat tlustší bassline.
co budete potřebovat
- Mac se systémem Xcode 4 nebo novějším nebo systémem Windows s Visual C++ 2010 nebo novějším. Budu používat Mac, ale můžete použít téměř všechny informace o Windows stejně.
- některé porozumění C++ (syntaxe, ukazatele, základní OOP, paměť). Možná jste slyšeli, že C++ je velmi těžké, ale nebudeme používat příliš mnoho pokročilých věcí.
- některé znalosti o (digitálním) zvuku obecně: Co znamená amplituda a frekvence, co filtr dělá, jak je zvuk uložen ve vzorkovací frekvenci a bitové hloubce. Pokud jste nahráli nebo produkovali hudbu dříve, jste pravděpodobně dobře nastaveni.
- zájem o zpracování digitálního signálu a programování GUI: to budou dvě hlavní témata této série. Pokud nemáte žádné předchozí znalosti DSP, možná budete muset v určitém okamžiku přečíst několik témat. Pokusím se poskytnout další odkazy typu čtení, kdykoli tomu tak je.
užitečné zdroje
zde je několik odkazů, které mohou být užitečné později:
- přetečení zásobníku: hledejte věci jako obskurní varování kompilátoru a zjistěte, co znamenají.
- průvodce DSP: velmi dobrá kniha zdarma, pokrývá pravděpodobně více, než použijeme. Podívejte se na to, pokud někde na cestě nerozumíte konceptu DSP.
Zní to vzrušující? Příště připravíme vše, co potřebujeme, abychom mohli začít!