This project is a work in progress. The goal is to make a project that maps 'real-time' weather data to audio parameters that generate music. As the weather changes, so will the music.
You can use your current location or input coordinates to fetch the current weather data. This uses open-meteo, a free open-source weather API. For more information visit open-meteo. The data is sent to a RNBO device that updates it's setting based off of the given input. Then you hear sounds. see Data Mapping below.
- Enter a location in the input field and click "Fetch Weather" or click "Use Current Location" to get the weather for your current location.
- View the weather information displayed on the page.
- Listen to the sounds generated from the weather data.
WIP
This project is a work in progress.
- map weather to audio parameters
- finish building rnbo patch
- Connnect weather data to rnbo patch
- add geocoding to add search by name of location functioanlity geocoding api
- fix google maps integration (look at alternatives Nasa Whirlwind, OpenStreetMap)
- Add auto-refresh (by minute? or hour? or day?) Open-Meteo has a limit of 10,000 calls per day.
The weather data is mapped to RNBO parameters. Inside RNBO are mutliple patches that receive the input values and change the audio.
Weather Types | Data Traits |
---|---|
sunny | - High temperature - Low dew point - No precipitation - High atmospheric pressure |
rainy | - Moderate to high precipitation - Moderate to high humidity - Low atmospheric pressure - Cooler temperature |
windy | - High wind speed - Variable wind direction - Moderate temperature changes - Possible low pressure |
stormy | - Very high precipitation - High wind speed - Low atmospheric pressure - Thunder and lightning presence |
cloudy | - Overcast conditions - Potential for cooler temperature - Moderate humidity - Possible light precipitation |
Weather Variables | RNBO Parameters |
---|---|
Rain amount (mm/hr) | RainSynth - Trigger Rate - Frequency - ADSR - Note Length(ms) - OutputGain - Noise Gain |
Wind Speed (km/h) | tbd |
Wind Direction (deg) | tbd |
Temperature (C) | tbd |
Humidity (%) | tbd |
Day or Night (1or0) | tbd |
Surface Pressure (hPa) | tbd |
Max Patches | Description |
---|---|
RainSynth | 4 OSCs: 2 sine, 2 saw, each channel has dedicated saw and sine OSCs. There is noise stage that is applied to both channels equally. After that, a delay and filter. Each "clock input" triggers random numbers for the following parameters: - frequency multiplier for each channel's OSCs. - delay time for ADSR note on. - left or right channel to trigger note on. |
HeatSynth | Need to build. Could be for temperature, humidity, maybe pressure as well? |
WindSynth | Need to build. Would be for windspeed, and winddirection. |
EarthTone | Single sine wave at 64hz. |