Healing Soundscapes is a project developed by the Ligeti Center in collaboration with the University Hospital Hamburg-Eppendorf (UKE). The project implements an intelligent speaker system to be used in hospital waiting areas and operation rooms. Music therapists, composers, programmers, patients and doctors collaborate in the development of soundscapes that ensure to improve patients well-being in waiting areas as well as help doctors to concentrate during operations.
The Graphic User Interface (GUI) consists of tools for the control of the soundscape, both during operation hours as well as during the development process of a composition. Hospital staff is advised not to use the expert control menu, since this is designed for the composers and developers that know the system under-the-hood.
The graphic user interface of the Healing Soundscapes Max patch makes use of the drawsocket package, a Max/node.js based server/client system. It also requires the CNMAT Odot package which can be installed from the Max package manager. The patch works in Max 8 and Max 9.
…
The Graphic User Interface (GUI) consists of tools for the control of the soundscape, both during operation hours as well as during the development process of a composition. Hospital staff is advised not to use the expert control menu, since this is designed for the composers and developers that know the system under-the-hood.
Basic Mode includes the necessary parameters for controlling the soundscape on-site, such as playback and playlist control.
The dropdown list shows all pieces listed in the currently selected playlist. Read section 2.1.2 for an explanation on how pieces are changed.
The dropdown list for Playing Mode lists two options:
1. Selected Piece: the title chosen in the Piece list (see section 2.1.1) will be played continuously.
2. Playlist: the patch will play through the pieces in order of sequence.
Each piece will be played for the length specified in the duration box. Between the pieces – or the iteration of
the same piece – there will be a silence whose length is specified in the silence box. Read section 2.1.3 to
learn how to change the selected playlist on your device.
Each device can play only one playlist at a time. Playlists are organized as subfolders within:
/Users/user/Documents/Max 8/Library/healing-soundscapes/environments
To select a playlist, create an empty text file named blessed.txt
inside the desired playlist
folder.
⚠️ Important: The system will automatically select the first folder it finds that contains a
blessed.txt
file.
Only one playlist folder should contain this file at any given time.
When switching playlists, be sure to either move the existing blessed.txt
file to the new folder or
delete it
before creating a new one. Having multiple blessed.txt
files may result in unpredictable behavior.
A toggle to start or stop the soundscape.
Set the tempo in beats per minute (BPM) of the soundscape. A lower number results in more sparse events, a higher number will make the soundscape more lively.
The length of each piece in seconds (e.g. 300 seconds = 5 minutes).
The length of silence between each piece (or iteration of the same piece, if in ‘selected piece’ playing mode) in seconds.
The volume of the soundscape in decibels.
Expert Mode includes all parameters for controlling each individual DJster instance. This screen is meant only for the composers and programmers. There is a menu where each instance can be selected, called “Player 1” up until “Player 4”.
Selects the playback instrument or sound source for the sampler.
Defines the tonal environment.
Sets the time signature, choosing rhythmic grouping.
Activates or deactivates the DJster instance.
Determines whether the notes of each event are outputted sorted by pitch or not.
Enables overlapping of musical events, allowing simultaneous layers instead of strictly sequential playback.
?
Controls the overall density and frequency by controlling the probability of note output.
Sets the average duration of events in milliseconds, from short staccato notes to sustained tones.
Controls how strictly the generated notes fall within the chosen meter: lower values produce freer timing, higher values enforce clearer metric structure.
Controls how close the notes are to the chosen scale: lower values have more notes outside of the scale, higher values stress tonal stability.
Determines the importance of harmonic (chord-based) events relative to melodic material.
Controls the tendency for melodic continuity: negative values create disjunct leaps, positive values favor stepwise motion.
Sets the span of melodic exploration, defining how wide or narrow the pitch contour can be.
Assigns the tonal center note of the scale, anchoring pitch relationships to a chosen tonic.
Specifies the register around which pitches are distributed, centering the melodic activity.
Sets the span (in semitones) above and below the pitch center notes can be generated.
Controls the output velocity (loudness) of events, corresponding to MIDI dynamic levels.
Applies a scaling factor to dynamics, reducing or moderating the overall loudness of output.
Sets the volume of the first DJster instance in decibels.
Sets the volume of the second DJster instance in decibels.
Sets the volume of the third DJster instance in decibels.
Sets the volume of the fourth DJster instance in decibels.
Sets the virtual size of the simulated acoustic space, from small rooms to large halls.
Controls the reverb decay time in milliseconds.
Adjusts the stereo width of the reverb field: lower values keep it narrow, higher values create a wider spatial impression.
Sets the frequency range passed into the reverb: lower values darken the sound, higher values keep it brighter.
Controls the high-frequency absorption in the room: lower values yield brighter tails, higher values make the reverb warmer and darker.
Balances the level of early reflections, shaping the sense of proximity and room definition.
Adjusts the level of the late reverb tail, affecting the spaciousness and depth of the acoustic.
Sets the balance of the unprocessed (dry) signal relative to the reverberated (wet) signal.
Checks for a new software version and updates if new version was found.
⚠️ Important: This requires an active internet connection.
⚠️ Currently not working
Shows the IP address of the GUI, so it can be accessed on another device.
Shuts down the software. This will require a manual restart.