Wednesday, July 4, 2018


My latest single, Raindrops, has been released.  This piece starts with a gentle series of raindrops represented by marimbas, xylophones, and piano. The piece slowly builds into a complete orchestral thunderstorm.  The music is also available for purchase on iTunes, Amazon, CDBaby, and available to stream on numerous platforms. Enjoy!

Monday, December 4, 2017

Incredible performance and many thanks!!!!

I wanted to express my deepest gratitude to the The Maryland Classic Youth Orchestras for the incredible opportunity to collaborate on the Krzesany piece.  The performance was a huge success!  The musician's performance was superb and Kristopher's conducting and musical direction was exceptional.

Also, thanks to the staff and crew at Strathmore Hall.  Everyone was a pleasure to work with.

Wojciech Kilar's inspiration came to life as majestic mountains illuminated to the music and Polish paper art danced to the intricacies of the folk themes woven throughout the piece.  I have a few images and videos below.  Stay tuned for a segment on the making of the Wycinanki paper arts portions of the visualization.  I'll break down the inspiration, construction, and final composition used in the music visualization.  For now, enjoy some of these images/videos.  I'll have another compilation of the performance soon.

Sunday, November 12, 2017

MCYO performance December 2nd!

So I have the privilege of working with Maryland Classic Youth Orchestras (MCYO) and I will be presenting a live visualization for their performance of Wojciech Kilar's "Krzesany." In researching the origins and inspiration for this piece, I discovered that Kilar was inspired by the Tatras mountains of Poland. These mountains are gorgeous and very majestic.  They remind me of the Grand Tetons here in the United States.

I also began exploring Polish folk art and stumbled upon "Wycinanki."  This is the Polish word for 'paper-cut design.' You can learn more about this art form here at the Polish Art Center.  The multi-layered, brightly colored paper was very inspirational and I decided to leverage this art style along with the majestic Tatras mountains in my music visualization. Check out some of the works in progress below.

Finally, if you're in the Washington DC area on December 2nd, please come check out the live performance at 4:30PM  The MCYO will be performing the piece and my visualization will be reacting to their performance live and in real-time!!  The performance will be held in the beautiful Strathmore Hall.  I highly encourage everyone to come check it out.  Tickets can be purchased here:

Monday, August 28, 2017

First shot: City nightlights

First shot of the city at night.  Bloom is too high right now and that will eventually be controlled by the audio but I've got buildings growing and reacting to music.  Video of all this in motion is coming soon.

Saturday, August 5, 2017

New audio analysis engine 3.0 complete

Version 3.0 of my audio analysis system is finally complete!  This is essentially a complete rebuild of my previous visualization system with additional flexibility added.  Now I can control individual frequency ranges across the audio spectrum.

The previous version had all that stuff hard-coded.  This latest version allows someone to set different frequency ranges for each of the different audio channels.  Some pics of the newest system are below:

A new and improved interface with larger text and more accessible sliders. This new system will also make use of Max/MSP's Mira which allows you to control the interface from a website!  Custom interfaces will be faster to implement versus having to use TouchOSC in previous versions.

Interface for controlling different frequency ranges.  Currently this is set to 32 bands. It can be increased if additional frequency resolution is required.

Simplified and condensed audio compression interface. It looks like a lot of knobs in there but ideally you would only need to set these once and then forget about it afterwards.

Example of some of the data being extracted from each channel. This gets sent to Unity3D via OSC.

Now that I've wrapped this part up, it's time to move back into seeing how all this plays out in 3D.  More updates will be coming soon with a city reacting to music.

Thursday, May 18, 2017

A City and Night - visualization progress #1

Development continues.  I realize it's been awhile.  Life just seems to get busy.  So here is a line-up of buildings I've got.  I figured I would go with all the letters of the alphabet so there are 26 different buildings here!  Check them out.

Building Z is obviously the biggest and coolest one while building A is the shortest and smallest.  The idea will be to procedurally increase building type based on amplitude analysis for different frequency ranges.  I'm also exploring the possibility of higher frequencies having more of a spire look to them while lower frequencies will be thicker/heavier shaped buildings.  Height would still be tied to amplitude.

Getting all these buildings built was the easy part.  The next stage will be tracking amplitude as it accumulates across various frequencies.  My previous audio analysis system was somewhat limited. I had 8 bands of frequencies to pull from but I wanted more flexibility. The frequency ranges were limited to 8 distinct bands which were hard-coded.

For example, one band went from 20Hz to 120Hz.  The next band might have been from 150Hz to 350Hz. You can see the original 8 bands in blue here:

The new system I've got will allow almost unlimited flexibility with which frequency bins I collect. There are a great series of tutorials on the web about FFT analysis for Max/MSP.  I highly recommend checking them out below.

Using the help of the work above, I've constructed a new equalizer with extremely fine controls over which frequencies will be analyzed.  Check out the image below:
The light blue and gray curves at the top control which frequency ranges will be analyzed.  You can see the result in the lower spectrograms.  The one on the left is the complete spectrum while the one on the right is a subset based on the control curves.  This will allow finite tuning of each audio channel to better match specific instruments, voices or whatever range is required.

Next steps will be to replicate this across multiple channels and pipe all that revised data over to Unity3D.  I still need to tweak some envelop following and data smoothing functions to best capture the music and solidify a cleaner user interface.  More updates in the future with some city animations too!


My latest single, Raindrops, has been released.  This piece starts with a gentle series of raindrops represented by marimbas, xylophones, ...