Download My Patch or access the Max Code (Max code does not include MPG 3rd party external folder or images folder)
My creative project was based on a concept that I have been interested in for some time now, timbre manipulation through additive synthesis. My purpose was intended to create a musical device that a person with little experience with Max or similar programs would be able to pick up and enjoy while still allowing deeper control for more advanced users and users wishing to create more unique styles and sounds from this device. Often Max patches sound interesting and offer great control and manipulation but result in the same all around sound time after time and I am hoping to break that mold. Now, the general concept of my project is that you have 4 channels each with 5 sine waves each and a group of preset graphs for each channel representing amplitude over time to determine determines timbres for these combination of 5 sine waves per channel. These tables can be altered and saved easily, allowing a moderate amount of creativity and control to the user. The program itself is currently designed for the Macally Airstick to control many aspects and values of the sound being produced.
Macally Airstick:
The colored buttons change to the different channels which are color coordinated to match the device for users. The XYZ buttons on the side determine what the movements on the X or Y axis of the Airstick manipulates.
X Button: X-Mode, Mode 1: Pitch/Volume
X Axis: The core pitch of the set of sine waves in the active channel.
Y Axis: The overall volume level.
Y Button: Y-Mode, Mode 2: Chorus Delay/Mix
X Axis: The amount of delay used in the chorus feature.
Y Axis: The mix of clean to chorus in the active channel.
Z Button: Z-Mode, Mode 3: Freq Mod/Depth
X Axis: The amount of frequency modulation applied.
Y Axis: The depth of the frequency modulation applied.
In addition, several other buttons and provide additional functionality which will be covered in their respective sections.
Finally, the Joystick Setup subpatcher is easily accessible so customizing for advanced users is available, allowing more forms of personal expression.
This Patch includes the MPG Package for multiple performers, so please read on that here.
One Channel
Here is a screen shot of one of the four channels (specifically channel three, C, or yellow). The graph in the middle shows the shape of the combined 5 sine waves of that channel which is the sounds being played. The 4 buttons on the right will increase in redness to display the maximum amount possible being applied (bright red being maxed). Though this does not offer complete and maximum control to the user, it is easier to understand for the general user and small differences in these values are hard to perceive anyways. Double clicking on the "p AmplitudeTableC" will open the following editable Amplitude over time table (in the following example, it is amplitude table D for channel 4, D, or Green)
Amplitude Table:
This is an example of the amplitude table. A user can draw the amplitude over time graph to make any custom sounds. Leaving the last point at zero ensures no sustain. Generally, at least one or two of the 5 amplitude table presets should not end to ensure a sustain.
The Harmonic multiplier takes the pitch being sent from the X axis (or manually entered) and multiplies it by the multiplier. While integers keep the pitch in octaves, using non-integers allows for the usage of 3rds, 5ths and other relations of the users discretion.
The R and L show the panning channel which is hardwired from that channel so that using presets on one channel still slightly differ from identical presets of other channels. This allows for a deeper instrument with more "character" rewarding users who spend hours or longer learning and mastering the abilities of this musical device.
To change between the 8 presets on each channel, the joystick has been divided into 8 equal sections. Pointing the joystick in different directions changes the preset in clockwise order where straight up is Preset 1 and pointing it directly to the right loads Preset 3 and etc.
.
.
Chorus
To the Right a screen shot of the chorus function can be seen. It is mostly an edited version of the chorus function displayed in the Max help files (why re-invent the wheel, eh?).
AChorusVol is a value from the X Axis while in Y-Button Mode (Mode 2 for the Axis controls) that determines the mix between clean and chorus being output. The clean output has a direct connection to the dac so full chorus with no clean is not possible without editing the patch. This is done on purpose and lowering the volume of the clean line by using the Y Axis while in X-Button Mode (Mode 1 for the Axis controls) directly affects the volume of the chorus line.
AChorusDelay is a value from the Y Axis while the Y-Button Mode (Mode 2 for the Axis controls) that determines the amount of delay being applied. 5 Milliseconds is the minimum to add depth to the sound and 20 milliseconds is currently the maximum.
AZJ is a value received from the 2 E-F buttons to determine the amount of feedback sent through the chorus lines. this is affectionately known as Chaos Chorus and high levels with a medium mix of chorus offers subtle abnormal variations in pulsations and feedback. A favorite feature of many users.
.
.
.
Final Conclusions
This project was a lot of fun to work on and it really helped align the way I translate logical processes from my imagination into Max. There are still many ideas floating around my head for things I would like to change given more time. Adding more user friendly help options and explanations, allowing more customization or a "wizard setup" for other controllers than the Macally to be used plug and play, and recording and looping feature, more timbre control, and especially merging it with my customized Ambisonic 5 speaker layout program and even.. well you know, the list goes on and on but that has been my biggest issue in Max. The possibilities are endless and so are these ideas. For things that went well though, designing the UI was a big part for me because again, I would like a powerful musical devise that deviates away from the intimidating design of many Max patches. Using color coordination and alternative Max tools to display data such as the increasing strength LED lights and mostly user friendly amplitude table graphs has helped bridge the gap a little bit, though some knowledge of Max may be required to understand certain aspects and techniques. By letting a few non-Max users try it out, I have changed a few things but more or less they were able to grasp its usage quickly. Of course, my real goal for the instrument is for it to be like playing the blues, any starter can get it down but to make it your own and to really connect through it, a lifetime can be spent getting acquainted with its characteristics and flaws (or quirks). Only time will tell if this goal will ever be accomplished by a hobbyist like myself. * or an A would be a suitable substitute, hint hint ;) *
MaxPatSpat + Ambisonics
My research project was another early idea of mine forming back when I first started to actively notice studio tricks and sonic subtleties in the music which ultimately led to my interest in the fruits of computers and music working together. The concept of location and depth through panning and filters caught me more then anything else, hearing a swirling guitar flushing around my head through 2 little earbuds was a favorite of mine and I grew interested in how the concept and notion of music coming from many different angles could be accomplished through two static positions.
Though my research paper deals more with this concept, it naturally grew to interest in multiple speakers. Why fake it? How could we design a patch that allows sound to travel through 5 speakers around a room? 8 speakers? 24 speakers, some aligned at different X-Y positions around a user and even in multiple layers vertically! Forget panning, we are talking complete physical immersion in a sonic environment.
Fortunately, I am not the only person to think that this is a great idea and even more fortunately, Max magicians have already been hard at work figuring out how to do it. Thanks to an external named Ambisonics, the filters and math have been worked out to allow near seamless control of location over any physical location on the X-Y-Z plane. Now, of course Kristal and I couldn't just post their work, so we made a patch that takes Kristal's work with position detection and gave it a few new toys to play with from the Ambisonic package and then set it up to work with the 5 speaker surround in the Flagler Studio. Input a sound and use our coordinate plane to map out your X-Y position to the speakers. Z position is available through the patch but not currently being used as all the speakers in the Flagler setup are roughly representing equal Z coordinates. By all means, if you would like to take it a step or 3 further, please do and let me see your progress.
MaxPatSpat
Max Patch for Spatial Information Gathering and Distribution was catchy and all but….
MaxPatSpat as a patch was initially the brain child of my partner in crime, Kristal, but when we learned that our work and interest in our project complimented each others, it made sense to work together. The concept of designed a simple digital room with sound source locations and the users location could allow further work to be done to design sound installations or use real position data to mix audio recordings from a perspective's location which can also move itself.
The colored dots represent up to 4 different sound sources (interestingly with corresponding colors to my Creative Patch) and one user position which can be controlled and changed by simply clicking and dragging on the graph. Though the user's location can be "drawn" or manually entered coordinated, the sound sources must be controlled through coordinate values. A piece with either predetermined or algorithmically determined sources and locations could be listened to multiple times while the user could "walk" around the studio or stage and listen to it from different perspectives. The same piece might sound drastically different when you listen from an audience or conductors position as opposed to right on top of one sources, especially if the included effects such as time delay, reverb and Doppler shift are considered (which they are by default). Virtual environments could greatly benefit from a system like this, mixing and panning and other countless concepts could apply this concept when tailored to their needs.
.
Ambisonics for 5 speakers in Flagler Hall
Ambisonic PDF
Click picture for a larger image.
The Test Sound should be replaced by any audio source.
Distance is a scaled value from the graph for one sound source location with a box for auto-distance to set it to a back and forth changing motion.
To recreate certain audio effects, we use 4 tools, lowpass filter by distance, Doppler shift values (the change in pitch as something moves, think of the rising pitch of an ambulance alarm as it gets closer), an amplitude decrease value related to distance and finally the radius of the reverb fallout. The current values are set to the tastes of Kristal and I as we consider them noticeable but not overpowering for the sources we used and when unlocked, loadmess values can be tailored to your needs.
.
.
.
Now that the audio data has been manipulated and filtered in a desired way to recreate the audio concepts or distance and its effects, it is time to encode and decode these values to distribute them to their physical speaker positions.
The Azimuth value is the currently in degrees as read in the ambi.encode arguements, though changing it to "radians" instead will expect a radian value. This represent the angular positions from the position of a forward facing user location. -180 currently results in a sound directly behind you in which most of the audio will be directed to the back speakers.
Elevation is a value not currently being manipulated but easily can be added if a speaker arrangement with multiple vertical levels comes into play.
The encode to the right side functions to add a reverb by layering additional audio content in properly to the decode stage. Encode and decode have several arguments, 2d or 3d represents data coming in on an X-Y or X-Y-Z. 2nd or optionally 3rd relate to the order of the data which is concerned with vertical positioning and the amount of layers in which further reading can be found in the ambisonic help files. Finally on the ambi.decode the last value is the amount of speaker outputs to send to the DAC. Our DAC has 6 outputs to allow for user entry of low end frequency filters to take advantage of 5.1 Surround Sound, a very popular take on 5 speaker set ups in which a 6th speaker is added for bass frequencies to be emphasized.
Conclusion
I believe that this project was quite a success in putting together a patch that is custom tailored to the Flagler Studio and reasonably understandable to use and implement in a future project should another DA student (or non-DA student such as myself) want to enhance a project or installation. If I had a bit more time, I would have loved to integrate this into my creative patch and it would not be all too difficult, just more time consuming then I can handle in my last week as a graduating senior. Making certain aspects of it more usable and controllable would have been nice including more helpful comments and a nicer UI but it serves its function. As Borat said, "Great Success!"
Surround Sound
The human ear and brain are able to work together in an amazing way to decipher audio input and logically construct a respective location of the sound source. Evolution has provided us with a defensive mechanism for gathering and processing data from the differences of sound from different locations. These days in America though, this ability is rarely used for pure survival but instead for pleasure and entertainment.
To understand where we are though, we must first understand where we've been. Recorded music has a rich history and has influenced culture and civilization in ways that only a handful of other inventions have. In 1857, the phonautograph was invented by a French Leon Scott. The device could translate fluctuating air pressure into a cylinder with a stylus attach to its membrane. This was the first recording but the more popular story in history is of course Thomas Alva Edison's invention of the phonograph. This device could actually play back audio inscriptions on wax cylinders. Fast forward to 1881 when Clement Ader sent the first stereo transmission. In 1925, the BBC began sending the first ever stereo broadcast and shortly afterward, Bell Laboratories began investigating techniques for stereophonic recording and reproduction which consisted of two channels. The film audience in 1940 was then fortunate to witness Walt Disney's Fantasia, the first commercial motion picture to feature stereophonic sound, though this film used a technique dubbed "Fantasound" which was unable to be duplicated in a home entertainment system.
Two channels seemed to suffice but of course there were drawbacks. Some recordings resulted in "ping-pong" effects where the mixing emphasized the differences between left and right too much. Mixing a middle "phantom" center channel helped but still lacked ambient information and left a "wall of sound", even before Phil Spector began beating hostesses. The American solution to this audio problem was obvious, make it bigger. Quadraphonic audio hit the market in September 1970 and had mild success; the longest-lived quadraphonic encoded broadcast was in fact WQSR-FM out of Sarastota, Florida.
Fortunately, today’s technology allows for an almost unlimited amount of speakers and channels to be applied. The most popular commercial application beyond the standard 2 channel system on the market is Dolby Stereo 5 or 5.1 speaker set-ups. The center speaker added in 1987 moved the quadraphonic set up to 5 total speakers and the “.1” represents a separate bass output, a subwoofer. This device handles the low frequency effects (LFE) channel often employed by movie makers for powerful rumbling effects such as an explosion or earthquake.
Of course, the true innovation is this technology is not simply more speakers but the encoding process employed in this system. With only two optical tracks available, Dolby engineers designed a special 4-2-4 processing system. This system essentially derives four streams of information from two inputs: information in stream A, information in stream B, information that is the same in both A and B, and the difference between the information in A and B. Stream A feeds the left speaker and Stream B is sent to the right. When the decoder finds a match in the information, it is sent to the center speaker with a mild reduction of usually -3db to balance the bias of the audio output to the user. The differences in audio result in information that should be passed to their respective back left and right data, effectively creating 5 outputs from 2 inputs.
In addition, Dolby systems contain decoders which compare the information gathered in the streams and if the amplitude and frequency data match, the information is sent to the center speaker. Furthermore, the left and right channels are naturally out of phase of each other because of the shift in time in both audio steams. The two signals work against each other, as Stream A commits the speaker to move out, Stream B tells the speaker to come in. This effect cancels the sound and makes for a non-existent audio experience, something generally considered a bad thing in the speaker industry. Fortunately, proper decoders shift the audio to phase with each other and often pass through filters and noise-reduction systems to balance the sound levels. This makes for a much happier audiophile.
Of course the production of the audio itself at the speaker is a process in itself. The heart of a speaker is a metal cylinder with a wire coiled around it which produces a permanent natural magnet. This device is called an electromagnet and poses a north and south pole that constantly switches polar positions. The switching causes the electromagnet to move back and forth, constantly pushing and pulling at a speaker cone which in turn pushes air out and back in. With the right input to the electromagnet, these shifts create vibrations which result in an oscillating wave where the properties are determined by the fluctuation pattern in the electrical current.
So, now with a solid foundation of the basics, what is happening in the music community of today? In the major commercial aspect, Sony Dynamic Digital Surround (SDDS) is the newest addition to the experience at a movie theatre. This system includes your left, right, center, and surround left/right channels but also give the subwoofer and new left-center and left-right channels their own lines for a total of 8 audio channels. More interestingly though, Michael Gerzon, Peter Fellgett, and a team of other researchers have been working on something that might sound familiar from before, a project designated as Ambisonics. Using an expandable number of channels, planar (2D) and perphonic (3D) sound fields can be designed and encoded/decoded through a few audio devices. This allows unmatched control and opportunity to design sound systems and installments like never before, with multiple levels of both horizontal and vertical layouts. All of the channels are treated equally as opposed to most surround systems that assume bias towards the frontal speaker arrays and treat the rear channels as mediums for ambient and supportive sounds. A huge feature is the fact that the signal is independent of the replay-system, the composer and production teams can create a final mix without concerning themselves with the set up of the speakers as the encoding and decoding occur later. Of course, one could create a piece for a specific set-up, especially for sound installments as countless artists have taken advantage of, whether using Ambisonics or not.
Ultimately, we have come a far way from our past days in the wild where our ear’s understanding of position helped us survive many nights. The future of using speakers for environments is on its way to constantly improving as the market supports new technology to home systems and the audiophiles of the future will only want bigger and better. The technology is there but currently 5.1 is satisfactory for the current population but musicians and artists will always push the envelope and programs such as Ambisonics will undoubtedly fuel the future of surround sound. I personally look forward to creative new uses of advanced and complicated speaker set-ups and designs and am glad that others have the same desire to utilize available technology to treat our ears to the delights available.
Research Links and Docs:
SDIF Page
SpatDIF and papers
Library Music Journals
A 3-D Sound Primer: Directional Hearing and Stereo Reproduction, Gary S. Kendall. Computer Music Journal, Vol 19, #1. Spring 2005, published by MIT Press.
Gary Recommends Begault 1994 and Blauert 1974
Scientific Basis: Physical Acoustics, Psychoacoustics, and auditory neurophysiology.
Ambisonic PDF
I love chicken nuggets. —NW 4/29
I don't believe I ever said that — NW 5/1
Yes I did — NW 5/1