Beats in the Browser: Coding Music with JavaScript
Can your own heartbeat set the tempo for your music? See how JavaScript and the Web Bluetooth API can power a drum machine in the browser.
#1about 7 minutes
The history and influence of Roland drum machines
Roland's TR-808 and TR-909 drum machines were commercial failures that later became iconic in hip hop and house music.
#2about 3 minutes
Creating basic sounds with the Web Audio API
The Web Audio API allows sound generation in the browser using an AudioContext and an oscillator node to create specific frequencies and waveforms.
#3about 3 minutes
Simplifying audio playback with Tone.js and WAV files
Instead of complex Web Audio API code, the Tone.js library provides a simple abstraction for loading and playing audio files like WAVs.
#4about 6 minutes
Triggering browser audio with the Web MIDI API
The Web MIDI API enables connecting hardware controllers to a web application by requesting access and listening for MIDI messages to trigger events.
#5about 7 minutes
Building a step sequencer using Tone.js for looping beats
Create a looping drum pattern by building a step sequencer that uses the Tone.js transport scheduler to repeatedly trigger sounds based on user input.
#6about 4 minutes
Using the Web Bluetooth API to control music tempo
The Web Bluetooth API can connect to low-energy devices like a heart rate monitor to dynamically control application parameters, such as music tempo.
#7about 2 minutes
Combining a drum machine with karaoke for a live performance
A live demonstration showcases the creative possibilities of browser-based music tools by combining the custom drum machine with a karaoke performance.
Related jobs
Jobs that call for the skills explored in this talk.
Matching moments
16:40 MIN
Building music sequencers with the Web Audio API
New Browser APIs, End of React Create App, Smuggling Data in Emoji and more with Rowdy Rabouw
07:12 MIN
How to build a step sequencer in JavaScript
Beats in the Browser: Coding Music with JavaScript
02:31 MIN
A live karaoke demo and concluding thoughts
Beats in the Browser: Coding Music with JavaScript
06:05 MIN
Connecting physical MIDI controllers using the Web MIDI API
Beats in the Browser: Coding Music with JavaScript
03:08 MIN
Generating basic sounds in the browser with Web Audio API
Beats in the Browser: Coding Music with JavaScript
03:03 MIN
Simplifying audio playback in the browser with Tone.js
Beats in the Browser: Coding Music with JavaScript
06:33 MIN
The history and cultural impact of Roland drum machines
Beats in the Browser: Coding Music with JavaScript
04:10 MIN
Controlling music tempo with the Web Bluetooth API
Beats in the Browser: Coding Music with JavaScript
Dev Digest 136 - No JS(on) of mineNews and ArticlesDouglas Crockford is our featured video, so let's talk about evolving JavaScript and all things JSON. Judicious JSON explains all the weird things in it, you can learn why it can be incredibly slow, people wonder what even is a JSON ...
Chris Heilmann
Accessibility tip: Detecting reduced motion in one line of JavaScriptAnimation can be a great tool to make apps seem more performant, be more engaging or even just more interesting. There are, however, quite a few groups of people who can not deal with things animating, as it distracts them or can even cause nausea. T...
Chris Heilmann
Micro Components - a different approach to a simpler component-based webThere has been a lot of heated discussion lately in the web community about component based development. One side argued that Web Components are a standard we should follow whereas others complained that they still lag behind in what frameworks offer...
Chris Heilmann
Dev Digest 131 - AI'm not sure about OSSNews and ArticlesRust and Typescript are rising stars in programming languages 2024 survey, the State of CSS 2024 survey is open and here is what's new in ECMAScript.In security news, a Microsoft update bricks Linux dual-boot systems, they patched a ...
From learning to earning
Jobs that call for the skills explored in this talk.