Project 3: Click Bath

by Hamish Lang

View Hosted Project HERE

Overview

Click Bath is an ambient music generator. It allows the user to click on one of two pads to produce a calming tone. It can be used by musicians and non-musicians alike, no musical theory is required.

What's with the name?!? The idea is a play on ‘sound baths’, which is usually just ambient music played live on non traditional instruments which is rising in popularity.

Features Overview

  • Allows users to assign one of ten sounds to one of the two pads, the color of the pad will change depending on the tone selected when changed.

  • Notes can be chosen from either a musical scale or a ‘mood’ based scale for non-musicians.

  • 10 Presets available

  • A weather specific preset can be loaded from the users location.

  • Oscilloscopes that react to the sound being played.

  • Environmental soundscapes can be blended into the tones via the center knobs.

  • Pads randomly generate notes based on the tone and key, and based on the users mouse location within the pad and play a high tone at the top, or a low tone at the bottom.

  • Tones created by myself, using a combination of synths, guitars, and pre recorded sample libraries.

TECH USED

  • Tone.js for sound playback, musical control.

  • WebAudio Controls for the Knob interaction controls.

  • Nexus.js for Oscilloscope functionality.

  • JQuery.

  • OpenWeather API.

MAY 2021 UPDATES

  • Removed Firebase due to not wanting user authentication. Added hard coded presets.

  • Fixed Major and Minor notes scales.

  • Removed Panning due to the clicking that it was producing when it was changed and a note was still being played.

  • Added 'About' section. Either click on the top left question mark or on the title to view further information.

  • Made mobile friendly (though performance is poor on it).

  • Further refactoring, toned down the comments etc.