An Online Library of Sound Models
Master thesis
Permanent lenke
https://hdl.handle.net/11250/3060436Utgivelsesdato
2022Metadata
Vis full innførselSamlinger
- Institutt for musikk [503]
Beskrivelse
Full text not available
Sammendrag
Formålet med dette masterprosjektet er å lage et bibliotek med åpen kildekode av lydmodeller for bruk i spill, web og andre medieapplikasjoner. Med prosedyre mener vi generering av lyd gjennom algoritmer, både offline og i sanntid. Dette er implementert i et rammeverk med åpen kildekode for å legge til rette for at alle kan se, redigere og bruke kildekoden. Modellene er implementert i programmeringsspråket Csound som vi håper vil gi modellene et større bruksområde og fleksibilitet på grunn av de ulike grensesnittene som er tilgjengelige for Csound (webapplikasjoner, spill, VST, programmerings-APIer).
For å presentere modellene på en måte som lar brukerne utforske dem, brukes en ekstern server til å være host for en nettapplikasjon der brukeren kan få tilgang til og utforske dem. Brukeren kan laste ned hele biblioteket, eller bare modellene de har valgt. Ved å oversette modellene til Csound kan vi lette denne formen for utforskning og eksport av biblioteket på en tilgjengelig måte. Dette skal tillate at modellene kan brukes i enhver applikasjon som støtter Csound, og forenkler inkorporering av ytterligere kontrollparametere som kan kopieres direkte fra webgrensesnittet.
Biblioteket er basert på en samling valgt fra Andy Farnells bok Designing Sound (2010), hvor de er en del av en seksjon om praktiske øvelser som utforsker digital syntese av lyd. Denne rapporten beskriver utfordringene knyttet til å oversette en modell fra Pure Data til Csound, oversette koden på en forståelig måte for alle som er fjernet fra prosjektet, implementeringen av modellene i webapplikasjonen.
Vi oversatte modellene fra Pure Data til Csound og brukte Csound WASM til å hoste dem nettet ved hjelp av en nettapplikasjon. Vi bygde en GUI for nettapplikasjonen og oversettelsesprosessen fra Pure Data til Csound viste at de vanligste DSP-komponentene har direkte ekvivalenter mellom de to programmeringsspråkene. Vi konkluderte at det er mulig å lage et åpent bibliotek med lydmodeller og hoste det på nett. The purpose of this masters project is to create a library of open source procedural sound models for use in games, web and other media applications. With procedural we mean the generation of sound through algorithms, both offline and in real-time. This is implemented in an open source framework in order to facilitate that anyone can see, edit, and use the source code. The models are implemented in the programming language Csound which we hope will allow the models a larger use case and flexibility due to the various interfaces available for Csound (web applications, games, VST, programming APIs).
In order to present the models in a way that allows users to explore them, a remote server is used to host a web application where the user can access and explore them. The user can download the entire library, or only the models they chose. By translating the models to Csound we can facilitate this form of exploration and exporting of the library in a accessible manner. This should allow the models to be used in any application that supports Csound, and facilitates the incorporation of additional control parameters that can be directly copied from the web interface.
The library is based on a collection selected from Andy Farnell's book Designing Sound (2010), where they are part of a section on practical exercises exploring digital synthesis of sound. This report details the challenges associated with translating a model from Pure Data to Csound, translating the code in a understandable manner for anyone removed from the project, the implementation of the models in the web application.
We translated the models from Pure Data to Csound and used Csound WASM to host them online using a web application. We built a GUI for the web application and the translation process from Pure Data to Csound revealed that the most common DSP components have direct equivalents between the two programming languages. We found that creating an open library of sound models and hosting it online is possible.