Responsive image

Declarative Web Audio API

Alexander Inkin
In this talk, we will explore differences between imperative and declarative approach to Web Audio API. We will see what it takes to turn Web Audio API declarative with dependency injection pattern also known as inversion of control and what benefits it brings. We will create basic proof of concept using plain JavaScript and compare it to more advanced code based on Angular framework. All these techniques will help us write reusable structures and program music with Web Audio API. On top of that, we will look at Web MIDI API and create playable synthesizer using same declarative approach so we can perform music live. We will also touch on how using this knowledge we can create a Guitar Hero-like keys playing and Karaoke singing game which can be played directly in the browser, even on modern smartphones.
            
@inproceedings{2021_26,
  abstract = {In this talk, we will explore differences between imperative and declarative approach to Web Audio API. We will see what it takes to turn Web Audio API declarative with dependency injection pattern also known as inversion of control and what benefits it brings. We will create basic proof of concept using plain JavaScript and compare it to more advanced code based on Angular framework. All these techniques will help us write reusable structures and program music with Web Audio API. On top of that, we will look at Web MIDI API and create playable synthesizer using same declarative approach so we can perform music live. We will also touch on how using this knowledge we can create a Guitar Hero-like keys playing and Karaoke singing game which can be played directly in the browser, even on modern smartphones.},
  address = {Barcelona, Spain},
  author = {Inkin, Alexander},
  booktitle = {Proceedings of the International Web Audio Conference},
  editor = {Joglar-Ongay, Luis and Serra, Xavier and Font, Frederic and Tovstogan, Philip and Stolfi, Ariane and A. Correya, Albin and Ramires, Antonio and Bogdanov, Dmitry and Faraldo, Angel and Favory, Xavier},
  month = {July},
  pages = {},
  publisher = {UPF},
  series = {WAC '21},
  title = {Declarative Web Audio API},
  year = {2021},
  ISSN = {2663-5844}
}