Audio Plugins készítése 1. rész: Bevezetés
Üdvözöljük! Ebben az oktatóanyagsorozatban megtanuljuk, hogyan lehet olyan audio plugineket létrehozni, amelyek VST, VST3, AU, RTAS, AAX vagy önálló alkalmazásként futnak.
az Audio pluginek olyan programok, amelyek betöltődnek egy gazdagép szoftverbe (például Ableton Live, Logic vagy REAPER). Audio és/vagy MIDI adatokat dolgoznak fel, és grafikus felhasználói felülettel rendelkezhetnek. Íme három példa (U-He Zebra, Sonalksis FreeG és D16 Decimort):
mint látható, a GUI általában tartalmaz néhány vezérlőt (a gomb a leggyakoribb), amelyek megváltoztatják a plugin bejövő adatok feldolgozását. A plugin előre beállított (a screenshot ők hívják Combo és emulátor), hogy tárolja az összes gomb pozíciók és egyéb értékeket.
kezdjük egy egyszerű torzítás plugin. Ezt követően lépésről lépésre elkészítjük ezt a szubtraktív szintetizátor plugint:
C++-t és a WDL-OL könyvtárat fogjuk használni. Ez alapján Cockos WDL (ejtsd whittle). Alapvetően sok munkát végez számunkra, a legfontosabb:
- Kész Xcode / Visual Studio projektek
- VST, AudioUnit, VST3 és RTAS formátumok létrehozása egy kódbázisból: csak válassza ki a plugin formátumot, majd kattintson a Futtatás gombra!
- hozzon létre 32/64 bites futtatható
- hogy a plugin fut, mint egy önálló Win/Mac alkalmazás
- a legtöbb GUI vezérlők használt Audio plugins
azt is megadja a legtöbb GUI vezérlők használt audio plugins, és néhány általánosan használt audio algoritmusok, mint például a mintavételezés. Ez a fórum szál screenshotok egy csomó plugin, hogy végeztek a WDL.
a különböző plugin formátumok mind többé-kevésbé azonosak, így általában sok másolat lenne & beillesztés a kódba. Programozóként szárazon akarsz maradni, ezért előbb-utóbb absztrakciós réteget írsz a különböző formátumokra. Ezt a munkát már elvégezték az iPlug formájában, amely a WDL része. Ezek az audio plugin fejlesztésének idegesítő részei, így most a szórakoztató dolgokra összpontosíthatunk, mint például:
- hogyan dolgozza fel a plugin a bejövő Audio/MIDI-t
- hogyan néz ki a plugin
- hogyan integrálódik a gazdagéphez (automatizálás, előre beállított értékek stb.)
egy másik jó dolog a WDL-ben a megengedő licenc: szabadon használhatja kereskedelmi alkalmazásokhoz. A részletekért lásd a fenti linkeket.
Hogyan fogjuk ezt csinálni
a hajsza jobb, mint a fogás.
a programozásban az eredmény kifizetődő, de az utazás az, ahol tanulunk. Ebben a bemutató sorozatban nem csak hosszú kódlistákat adok neked a tökéletes megoldással. Kezdjük valami, ami működik, és javítani, amint szembe problémák.
hátránya, hogy olyan kódot fog írni, amelyet később valami jobbal cserél le. Mint programozó, valószínűleg megszokta ezt. Az első előny: nem lesz olyan elsöprő, mert lépésről lépésre közelítjük meg a megoldást, ahelyett, hogy csak oda ugranánk. A második előny az, hogy útközben értékes programozási órákat tanulhatunk.
ez a sorozat nem a komplex matematika kézi kiszámításáról szól. Arról van szó, ami félelmetes szoftver, amit adhat a zenei producer barátok, így lehet, hogy egy kövérebb bassline.
amire szüksége lesz
- Xcode 4 vagy újabb rendszert futtató Mac vagy Visual C++ 2010 vagy újabb rendszert futtató Windows rendszer. Mac-et fogok használni, de szinte az összes információt felhasználhatja a Windows rendszeren is.
- néhány megértése C++ (szintaxis, mutatók, alapvető OOP, memória). Lehet, hogy hallottad, hogy a C++ nagyon nehéz, de nem fogunk túl sokat használni a fejlett cuccokból.
- néhány tudás a (digitális) hangról általában: Mit jelent az amplitúdó és a frekvencia, mit csinál egy szűrő, hogyan tárolja a hangot mintavételi sebességgel és bitmélységgel. Ha korábban felvett vagy készített zenét, akkor valószínűleg jól meg van állítva.
- érdeklődés a digitális jelfeldolgozás és a GUI programozás iránt: ez lesz a sorozat két fő témája. Ha egyáltalán nincs előzetes DSP ismerete, előfordulhat, hogy valamikor fel kell olvasnia néhány témát. Megpróbálok további olvasási típusú linkeket biztosítani, amikor ez a helyzet.
hasznos források
íme néhány link, amely később hasznos lehet:
- Stack Overflow: keressen olyan dolgokat, mint az obscure compiler figyelmeztetések, és megtudja, mit jelentenek.
- DSP útmutató: nagyon jó ingyenes könyv, borítók valószínűleg több, mint fogjuk használni. Nézze meg, ha valahol útközben nem érti a DSP koncepciót.
izgalmasan hangzik? Legközelebb mindent előkészítünk, amire szükségünk van az induláshoz!