SEMESTEROPPGAVE FOR TOBIAS GRENNESS

Foreløpig prosjektbeskrivelse

Jeg har tenkt å lage en monofonisk FM/additive hybrid synthesizer med en forhåpentligvis unikt fleksibel signalgang.
Hovedfokuset kommer til å ligge på den additive delen, og det er godt mulig at de mest interessante lydene vil bli laget uten noen frekvensmodulasjon i det hele tatt.
Hvis jeg finner en interessant innfallsvinkel (og hvis jeg får tid), vil jeg også forsøke å implementere ringmodulasjon og enkle lavpass filtre basert på tapin/tapout.

En tenkt mulighet  er at jeg  har to sinewaves som en stereo carrier, som gradvis frekvensmoduleres av en 32partials sagtann som morpher til en 16partials firkant mens annenhver partial autopanoreres mens hver tredje partial forsinkes av tids envelopes og så rutes tilbake som fm modulator og pannes osv

Hovedfokuset i prosjektet vil være implementeringen av additiv synthese, og hvordan jeg eventuelt får patchen til å fungere som et fleksibelt nettverk. Jeg vil forsøke utbredt bruk av envelopes til å påvirke alt fra pitch på hver enkelt partial, pitch på grupper av partialer, til panning, fm index, volum og så videre.
En utfordring blir å tenke ut hvordan jeg skal lage grupperinger av partialer og envelopes i en slags modulasjons matrise.
Jeg har tenkt meg et brukergrensesnitt kun bestående av envelopes basert på multislidere og functions, tidsangivelser for multisliderne og matrix moduler for å styre signalgangen.

Synthesizeren vil ikke ha noen form for midi kontroll utenom noteon/off og notepitch. Velocity sensivitet, aftertouch og alt annet vil utelukkes, alle parametre vil kun bli styrt av envelopes.
Den vil altså respondere monofonisk når man spiller på et klaviatur for raskt og enkelt teste hvordan patchen høres ut i forskjellige tonearter.
Den har i tilegg en innebygget midi spiller til standard midi files (smf.) for å generere "wavetables". (Denne terminologien kan nok diskuteres)
Patchen vil loade default med en smf. file som spiller kromatisk ifra c1 til c6 med en duration på 1 sekund, samt en sfrecord~ modul til å ta opp lyden, samt ha en meny bestående av andre lignende smf. filer

Tanken bak dette er dels at det gjør prosjektet lettere å gjennomføre, men mest fordi det tvinger komponisten til å forholde seg til færre applikasjoner når hun arbeider med det musikalsk kreative. Å bruke en så avansert synthesizer vil for mange representere en teknisk utfordring
Det er høyst varierende hvor mange brukergrensesnittsfunksjoner man kan få internalisert, noe som er en forutsetning for å kunne befri seg fra teknologisk problemløsning under den kreative prosessen. For enkelte kan dette føre til at lateral og kreativ tenking undertrykkes av det kognitive.

Ideen er da at komponisten på forhånd har laget lydbanker bestående av wav/aiff filer ut ifra patcher hun finner musikalsk inspirerende/ musikkteknologisk interressante, og at hun senere under komponeringen (arrangering,produksjon) kun må forholde seg til sin favoritt sampler, som hun da formodentlig kjenner godt.
Det er da avgjørende at sampleren har automapping (og pitch detection) funksjon, og at audiofilen fra max/msp har blitt autoslicet på forhånd.
Eksempler på kjente kommersielle samplere med disse funksjonene og høy grad av brukervennlighet er Native Instruments Kontakt og Propellerheads NNXT.
Jeg foretrekker å slice samplene i Wavelab, da dette programmet også har  svært gode pitch detection algoritmer, men det mest populære programmet for autoslicing er Propellerheads Recycle. (Men da kreves ekstern pitch detection, og rex kompatibel sampler)

En utfordring blir hvordan implementere antialiasing. Med en samplerate på 44100 når jeg et kritisk nivå fra H3 (466hz) da min nåværende additive patch har førti partialer,
og partial nr 40 ganger grunntonen med 40.  Jeg vet foreløpig ikke hvordan jeg skal gå frem hvis jeg i  tillegg skal ta høyde for stigende pitch envelopes, fm sidebands og ringmodulasjon sidebands. Hvis jeg ikke klarer å løse det matematisk, vil jeg implementere et enkelt lavpass filter satt til rundt 12khz, men det løser ikke problemet da mange foldover frekvenser blir liggende lavere enn 12khz. (skaden er allerede gjort)

Jeg strever også med hvordan jeg skal forholde meg til phase parameteren på cycle~ modulene for å redusere dc offset og dermed optimalisere signal to noise ratio, men jeg vet ikke om det er lurt å bruke mye tid på dette da man har mulighet for å bruke 24 og 32bit audio.
Men med null dc offset og normalisert 16 bit vil man kunne få betydelig datareduksjon, akseptabel lydkvalitet og dermed beslaglegge mindre RAM.