~/talk

The Web Audio Explanation I Wish I Had

Talkat RVA JavaScript Conf 2019 · on Friday, 2019-11-15· [web-platform, creative-coding]
links:none on file
slides:none on file

Adds synthesized note playback to abcjs using the browser Web Audio API and a small soundfont of per-note MP3s, caching ~88 piano samples so repeats avoid extra network cost. Requires a single shared AudioContext (resume on user interaction) and creates audio buffers then one-shot source nodes; source nodes are non-reusable. Finds practical polyphony well above 32 voices, but extreme tests (all notes on all instruments) take minutes to prepare. Measures unpredictable latency (recording ~1464 ms, direct tick ~109 ms), so timing needs compensation.

AI-written summary · about

  1. 0:00Introduction and background
  2. 3:16Why browser audio matters
  3. 6:57Evolution of audio in browsers
  4. 9:06Web Audio API basics
  5. 13:01Converting music to playable audio
  6. 16:15Handling audio context resources
  7. 18:42Creating audio buffers
  8. 21:08Simple UI controls for playback
  9. 23:18Connecting audio to speakers
  10. 25:42User interaction and autoplay
  11. 27:28Browser limitations and quirks
  12. 30:03Latency and real-world timing
  13. 33:16Demo of latency impact
  14. 35:31Conclusion and open source call
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.