Making Audio Plugins Del 1:Innledning
Velkommen! I denne opplæringen serien vil vi lære å lage lyd plugins som kjører SOM VST, VST3, AU, RTAS, AAX eller som et frittstående program.
Audio plugins Er programmer som er lastet inn i en vert programvare(For Eksempel Ableton Live, Logic eller REAPER). De behandler Lyd-og / ELLER MIDI-data og kan ha et grafisk brukergrensesnitt. Her er tre eksempler (U – He Zebra, Sonalksis FreeG Og D16 Decimort):
SOM du kan se, INNEHOLDER GUI vanligvis noen kontroller (knappen er den vanligste) som endrer hvordan plugin behandler innkommende data. En plugin har forhåndsinnstillinger (i skjermbildet kalles De Combo og Emulator) som lagrer alle knottposisjoner og andre verdier.
Vi starter med en enkel forvrengning plugin. Etter det lager vi dette subtraktive synthesizer-pluginet trinnvis:
vi bruker C++ og wdl-OL-biblioteket. Den er basert På Cockos WDL (uttales whittle). Det gjør i utgangspunktet mye arbeid for oss, viktigst:
- Ferdige Xcode / Visual Studio Prosjekter
- Lag vst, AudioUnit, VST3 og RTAS formater fra en kodebase: bare velg plugin format og klikk kjør!
- Lag 32/64-Biters kjørbare
- Gjør din plugin kjøre som en frittstående Win/Mac-program
- De FLESTE GUI-kontroller som brukes i audio plugins
det gir deg også de FLESTE GUI-kontroller som brukes i audio plugins, og noen vanlige lydalgoritmer som for eksempel resampling. Denne forumtråden har skjermbilder av mange plugins som ble gjort ved HJELP AV WDL.
de forskjellige plugin-formatene gjør alle mer eller mindre det samme, så normalt ville det være mye kopi & lim inn i koden din. Som programmerer vil DU holde DEG TØRR, så før eller senere vil du skrive et abstraksjonslag over de forskjellige formatene. Dette arbeidet er allerede gjort i form AV IPlug, som er EN del AV WDL. Dette er de irriterende delene av lydpluginutvikling, så vi kan nå fokusere på morsomme ting, for eksempel:
- hvordan plugin behandler innkommende Lyd / MIDI
- hva plugin ser ut
- Hvordan det integreres med verten (automatisering, forhåndsinnstillinger, etc.)
EN annen god TING OM WDL er dens permissive lisens: du kan bruke den fritt for kommersielle applikasjoner. Se linkene ovenfor for detaljer.
Hvordan vi skal gjøre dette
jakten er bedre enn fangsten.
i programmering er resultatet givende, men reisen er hvor vi lærer. I denne opplæringsserien vil jeg ikke bare gi deg lange kodeoppføringer med den perfekte løsningen. Vi vil starte med noe som fungerer og forbedre det så snart vi står overfor problemer.
ulempen er at du vil skrive kode som du senere vil erstatte med noe bedre. Som programmerer er du sannsynligvis vant til det. Den første fordelen: Det vil ikke være så overveldende fordi vi vil nærme løsningen trinnvis i stedet for bare å hoppe der. Den andre fordelen er at vi kan lære verdifulle programmeringstimer underveis.
denne serien handler ikke om å beregne kompleks matte for hånd. Det handler om å lage fantastisk programvare som du kan gi til musikkprodusentens venner, slik at de kan lage en fetere basslinje.
Hva du trenger
- En Mac som kjører Xcode 4 eller nyere eller Et Windows-system Med Visual C++ 2010 eller nyere. Jeg bruker En Mac, men du kan også bruke nesten all informasjon På Windows.
- litt forståelse Av C++ (Syntaks, Pekere, Grunnleggende OOP, Minne). Du har kanskje hørt At C++ er veldig vanskelig, men vi kommer ikke til å bruke for mye av de avanserte tingene.
- litt kunnskap om (digital) lyd generelt: Hva amplitude og frekvens betyr, hva et filter gjør, hvordan lyd lagres med en samplingsfrekvens og bitdybde. Hvis du har spilt inn eller produsert musikk før, er du sannsynligvis godt satt.
- Interesse For Digital Signalbehandling Og GUI Programmering: de vil være de to hovedtemaene i denne serien. Hvis DU ikke har noen tidligere dsp-kunnskap i det hele tatt, må du kanskje lese på noen få emner på et tidspunkt. Jeg vil prøve å gi ytterligere lesingstype lenker når det er tilfelle.
Nyttige ressurser
her er noen lenker som kan være nyttige senere:
- Stack Overflow: Søk etter ting Som obskure kompilator advarsler og finne ut hva de betyr.
- Dsp Guide: Veldig god gratis bok, dekker sannsynligvis mer enn vi skal bruke. Se det hvis et STED på veien du ikke forstår ET dsp-konsept.
Høres spennende ut? Neste gang setter vi opp alt vi trenger for å komme i gang!