<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>decker labs &#187; New Media Classes</title>
	<atom:link href="http://labs.eric-decker.com/category/new-media-classes/feed/" rel="self" type="application/rss+xml" />
	<link>http://labs.eric-decker.com</link>
	<description></description>
	<lastBuildDate>Thu, 18 Aug 2011 04:16:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Guitar Genetics: Case Study</title>
		<link>http://labs.eric-decker.com/2008/02/guitar-genetics-case-study/</link>
		<comments>http://labs.eric-decker.com/2008/02/guitar-genetics-case-study/#comments</comments>
		<pubDate>Mon, 25 Feb 2008 03:33:06 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Case Study]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=131</guid>
		<description><![CDATA[Guitar Genetics is the project I&#8217;ve been working on for the last six weeks or so combining an electric guitar and Processing. I feed an electric guitar though a headphone amplifier and into the line in on my laptop. (I also split it before the headphone amp to a read amp so as you play [...]]]></description>
			<content:encoded><![CDATA[<p>Guitar Genetics is the project I&#8217;ve been working on for the last six weeks or so combining an electric guitar and Processing. I feed an electric guitar though a headphone amplifier and into the line in on my laptop. (I also split it before the headphone amp to a read amp so as you play you can hear it). Using the Fast Fourier Transform from the Sonia class, I made a visualization that resembles DNA patterns. The color of each plot depends on which string on the guitar is plucked, and the vertical position is based on the fret. Since I am using pseudo-note detection, the program reads extra notes most of the time which produce more interesting visuals. To create a print, all the note information from a recording session is saved to a XML file, which is then run though my render engine I built, so I can produce high resolution prints. I have a more detailed case study below, or you can download it as a <a href="http://labs.eric-decker.com/wp-content/uploads/2008/02/VECaseStudy.pdf" title="Download Case Study PDF" target="_blank">PDF</a>.</p>
<p><script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfidc36749e0cd891941c4ba3ae6ca3d02b3"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://labs.eric-decker.com/wp-content/uploads/2008/02/DNA_pano_viewer.swf","swfidc36749e0cd891941c4ba3ae6ca3d02b3","600","485","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
<p>There are more images on <a href="http://flickr.com/photos/ericdecker/sets/72157603890241731/" title="flickr set" target="_blank">flickr</a>.</p>
<p><span id="more-131"></span></p>
<p><strong>Initial Idea</strong><br />
The idea for this project originated about six months ago during the summer. I was thinking of things I could do with Teleo devices, and one thing I wanted to explore was using a guitar. I first wanted to attach a vibration sensor to the strings on an acoustic guitar and make a ‘Folk Guitar Hero’ game in Flash. That would be too awkward too, with all those wires hanging off of the guitar. So the next step was just to hook an electric guitar up to a tuner, and do some rewiring to the tuner so it can be plugged into a Teleo device. The tuner will output a value, which would be the note or pitch, and then Flash could interpret that to be whatever it needed to be. However, after getting a tuner I soon realized a problem with this – the tuner can only recognize one string at a time. So an open strum would confuse it, or even if two notes were played separate but back-to-back, enough time has to pass for it to ‘clear out.’ The result would be a pretty lame game.<br />
So, as it usually happens with me, sometime the most obvious solution comes later. The electric guitar has an output to the amp, and the amp has an output to headphones, so why not just get a male-to-male end headphone cable and plug it into the microphone line-in on the computer? So that’s what I ended up doing. This is the setup I’m using: The electric guitar cable plugs into a Y splitter. One end plugs into an amp, so that the guitar can actually be heard. The other end of the splitter plugs into a headphone amplifier. Using a ¼ to 1/8 adapter, a male-to-male end headphone cable is plugged into the line-in port on a computer. And that’s all there is too it, the electric tuner doesn’t need to be used at all, although it does help me tune is since I actually don’t play the guitar ¬– or any instrument at all.</p>
<p><strong>Gathering the Data</strong><br />
The next step was to take whatever the computer takes in and turn that into some sort of note. Flash doesn’t really have anything for real time audio analysis, even with the extended capabilities with Action Script 3. So the next logical step was Processing. “Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production .” In order to read the live input sound data, I had to use the external library Sonia.  So the way to analyze sound in Sonia is by using and FFT array. The Fast Fourier Transform array is a series of bin samples of frequency ranges and their levels. What I needed is the pitch, so basically pitch detection. I did a little research and apparently many people want to do pitch detection, but unfortunately it hasn’t been done yet with Java. It seems that in order to do pitch detection you need to do something a little more serious, like C++.  I looked up other people doing note detection from instruments, and it looks like they are all computer science majors working on their thesis, so it might be a little over my head. I looked for ways to convert the FFT to a pitch or try to get some harmonics or anything from it, but I’m a designer who’s maybe decent in math, I took pre calc in high school but really don’t remember much from it. But I kept finding equations that all looked like this:</p>
<blockquote><p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/02/beyond_me_invert.png" alt="beyond_me_invert.png" /></p></blockquote>
<p>The best way I can describe this is as “it looks like the quadratic formula exploded .” So this pretty much killed my idea for a Guitar Hero game with a real guitar.<br />
The best I could do with the FFT data is look at the patterns it makes as certain notes are played. When a note is played, certain frequencies respond much stronger than others, and when graphed out these form peaks. By looking at just these peaks we can kind of determine what note is played. And since the guitar is plugged directly into the input, there is reduced background noise to worry about. What I ended up creating is a program that looks for certain peaks, and when all those peaks show up it determines that a certain note is played. I call this pseudo-note detection. It’s not really authentic because it doesn’t work half of the time, and it gets confused – a lot. This is because a many notes share similar peaks, so when whole bunch get played the program see more peaks, and thus more notes. This makes it way too inaccurate for a game where a mistake on the game’s part would result in the player becoming very annoyed. But for making generative art, it is actually kind of cool because you get more data to visualize, and plus you can see, in a way, how certain notes are similar (similar in FFT terms, I guess).</p>
<p><strong>Analyzing the Spectrum</strong><br />
I wrote a special program to first capture all the notes. This is extremely boring. I decided for each string I would want the note of the open string, and then the first nine frets from the head down. So that means that there are ten notes per string for six strings, meaning I had to capture 60 notes. Each note is comprised of an array of peaks from the FFT. When the FFT spectrum is analyzed, the program looks for bins that have a significantly larger value than the rest, and these are then classified as peaks. I played every note and had processing save out a text file that had the bin peaks save to it, and yes, I did that 60 times and again yes, that did get very boring. Here’s an example of what the spectrum looks like for open High E string:</p>
<blockquote><p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/02/spectrum2.jpg" alt="spectrum2.jpg" /></p></blockquote>
<p>Once I had all the notes captured as an array, I could on to using them to make visuals. All I had to do was when input from the guitar comes in, rip though an if statement of 60 arrays and check each one for matching bins values. This actually runs really smooth with Processing, which is one of its strengths. I bet there are more efficient ways to do this, such as with math, but nothing I could figure out. The spacing between peaks are supposed to theoretically be even, but from what I saw that is extremely theoretical.</p>
<p><strong>Creating Visuals</strong><br />
This was another difficult step, as I wanted to make something interesting and different. The danger I now faced from moving away from the more-solid concept of Folk Guitar Hero, or even just a Guitar Hero rip-off, was that I had no design direction. That led me to flail around for some time. I first started off with just radiating circles over notes and then on a grid and that didn’t really seem all too interesting. I started experimenting more, again with a grid, with a paint analogy. The grid layout seemed too restrictive, where I had the string value on the x-axis, and the fret value on the y-axis, and the strength (‘volume’) of the note-determining radius. I wanted a little more abstract, so I decided to look into 3D. I made a neat looking 3D visual using the mouse with JAVA3D or OPENGL renderer in Processing. However, the Sonia class does not like to play with others, and even on ‘super computers’ the program ran incredible slow. My guess is that Sonia only can run with the JAVA2D engine. So I built out a pseudo 3D visual thing in 2D space, and had all sort of properties to play with. The string could effect overall color, the fret from one would change rotation speed, one string made starbursts, etc. But then I had just created another visualization like anyone can make in 10 minutes in win amp. I needed structure, an idea, a concept. Luckily I had a critique a few weeks before the project was due.</p>
<p><strong>New Direction</strong><br />
During a class critique, one of my classmates Nate Wolf suggested that I have it build out and not erase or fade away, so things pile up over time, or even make it expand. All of this time I had imagined that the final piece would be a performance piece that would be recorded. I did a print piece previously this quarter, and I liked it, it was nice to have a tangible piece for once and not just a website or animation that only exists on screen as a series of interpreted zeros and ones.  So I decided that a print piece would be cool to do, and that I wanted it to scroll out, so this would be a big print, something like maybe one foot tall by maybe 50 feet long or something utterly ridiculous. Of course, paying for a print that size would be out of my price range. With printing being $4 per square foot, a print that size would cost over $200. So I guess I would make a “theoretical print” instead.<br />
I figured that what I was doing, even if it was sloppy, was mapping the notes of the guitar. It would generate a representation of the make-up of the song. Basically like the genetic make up of it. That struck me – the genetic structure of a song. I looked up some images of DNA patterns and found my inspiration. I used blurry squares overlapping each other to simulate DNA patterns. Rather than making running a blur filter every time a new note is drawn, I had the program pre-draw all the notes and then when it comes time to make one it just slaps that image down. This little cheat is necessary since doing filters when Sonia is running and getting real-time results is a bit iffy. I also made the value by which the program determines a peak in the FFT by dynamic, so if I decrease that value it lets more bins be seen as peaks, and thus more notes. This makes a more muddy response, an extreme decline in accuracy, but greatly enhances the visual quality. I control this when capturing by using the up and down arrow keys. I also have done a variation using circles instead, which when asked 50% or people preferred circles over DNA, but at the same time the other half liked the DNA one better. So I figured the tiebreaker came up to me, and since this was ‘Generative Art’ and not ‘Generative Design’ that I can make it look like however I want. So I picked the DNA style.</p>
<blockquote><p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/02/dna_pattern.jpg" alt="dna_pattern.jpg" /><br />
<em>example of a DNA pattern (<a href="http://www.fao.org/docrep/007/ae216e/ae216e0x.jpg" target="_blank">source</a>)</em></p></blockquote>
<p><strong>Creating the Render Engine</strong><br />
Of course, I was not finished yet. I had the program saving out screen shots every 100 frames or so, and the Photoshop could run the ‘Photomerge’ script and stitch them all together to make my panoramic-like image. (I also draw guide numbers below the image, sort of like visual meta data to help Photomerge align everything correctly). But, to make a print from this would be either really tiny or really shitty because I was only saving out a 1000 x 400 pixel image. That could make a really crummy 72dpi 13.8” x 5.5” print, or a high quality tiny 3.3” x 1.3” microprint. In order to achieve something large and with high resolution, the image needed to be atleast1800 pixels tall. Since the images are stitched together later the width of them is not as important, as long as all the data is drawn correctly. And when trying to run that real-time, drawing out an image that big presents two problems. One, you can’t actually see the entire image, especially not on a 640 x 480 projector and two, it’s not going to run smooth, you’d be lucky with getting over 1fps.<br />
So my solution was to separate the performance part from the print part. The performance part will show on screen whatever is being played in low resolution, so it runs faster. As it does this, it saves out all the note data to an object array. Once the person is done, the collected data is written to an XML file and created in a new folder. To make it easier, I made up my own auto increment system that checks and writes to a text file the names of the folders created. The XML data is structured so that each frame has its own node, even if it is empty. Inside the frame node are note nodes, and each one of those contains the string, the fret, and the value, which is more or less volume. There’s also a meta section I included with the date, time, and information the user can input so if I were to show this during class I could later build someone’s visualization for them.<br />
Now I can render the session out whenever I please. I open up my render program, declare a few variables such as what session folder to use, what color scheme, and height in inches and the resolution. It then parses though the XML file and builds it out just like it would from the guitar, except now I can scale it larger. Once it is done, I throw it into Photoshop and trim it up, and then it will be off to the printers.</p>
<p><strong>Technicalities</strong><br />
There is a lot of backend stuff here. There is an issue right now with Sonia v0.91 where it won’t work in any browsers, so right now I cannot efficiently deploy this. I made a few external classes to help my program run more efficiently, or at least keep it a little more organized (which if you saw it, it is still all over the place). One useful tool was making a color manager that has arrays of color schemes. I just need to set it to a color scheme, the ColorManager will remember what it is set to, and then I can just call colors from it. So, for example, I can just call background = Colors.getColor(0) and that will get my background color. It kind of works like CSS in a way, where I just tell it to use a different style sheet.<br />
One thing I wanted is to be able to set which session folder to draw from in the render engine without having to edit the .pde file. I couldn’t find anything about a input text field, so I had to make my own. It’s really simple, click on it to set focus to it, and then what you type just adds to it’s own string which is displayed in the box and updated every time it changes. The only issue here is that I only pass key values to it, not keyCode values such as SHIFT or ENTER, other wise they show up as question marks. I can also use the delete key to remove the last character from the sting. But for some reason, on my PowerBook at least, the keyCode for the delete key is neither one of Processing constants of DELETE or BACKSPACE. I found out later that it’s 8, but I also put the left arrow key in there just in case. I had the same issue for return, both keyCodes RETURN and ENTER did not work, but a key value of 10 did.</p>
<p><strong>Resources</strong><br />
Sonia Processing Library: <em><a href="sonia.pitaru.com" title="Sonia" target="_blank">sonia.pitaru.com</a></em><br />
Processing 1.0 Beta: <em><a href="http://processing.org" title="Processing Beta" target="_blank">processing.org</a></em><br />
FFT information: <em><a href="http://en.wikipedia.org/wiki/Fast_Fourier_transform" title="FFT on wikipedia" target="_blank">http://en.wikipedia.org/wiki/Fast_Fourier_transform</a></em></p>
<p>[<a href="http://labs.eric-decker.com/wp-content/uploads/2008/02/guitar_genetics.zip" title="download source" target="_blank">Download Guitar Genetics source code</a>]<br />
<em>Be forewarned, I wrote this for myself so organization of the code&#8230; yeah&#8230;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/02/guitar-genetics-case-study/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Genetic Panoramic Test</title>
		<link>http://labs.eric-decker.com/2008/02/genetic-panoramic-test/</link>
		<comments>http://labs.eric-decker.com/2008/02/genetic-panoramic-test/#comments</comments>
		<pubDate>Wed, 13 Feb 2008 09:20:46 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=123</guid>
		<description><![CDATA[&#160; After talking with colleagues, I&#8217;ve decided that I want a print to be the final result of my project involving using an electric guitar as an input device. I like the idea of something resembling sheet music, but also showing how the music is made up. So I looked at DNA pattern images, and [...]]]></description>
			<content:encoded><![CDATA[<p align="left">&nbsp;</p>
<p align="left">After talking with colleagues, I&#8217;ve decided that I want a print to be the final result of my project involving using an electric guitar as an input device. I like the idea of something resembling sheet music, but also showing how the music is made up. So I looked at <a href="http://labs.eric-decker.com/wp-content/uploads/2008/02/panb.gif" title="DNA pattern">DNA pattern</a> images, and based it off of that.</p>
<p align="left">I just finished building a prototype, and the next step is hooking it up to the guitar part. Makes me kind of nervous, because I fear it might run too slow once integrated with the sonia library. This image is just based off of the mouse, but for the final one there will be six colors, one for each string, and the vertical placement will be determined by fret.</p>
<p align="left">&nbsp;</p>
<p align="left"><a href="http://eric-decker.com/processing/_images/genetic_pano_test-large.jpg" title="Large view" target="_blank"><img src="http://labs.eric-decker.com/wp-content/uploads/2008/02/genetic_pano_test-small2.jpg" alt="genetic_pano_test-small.jpg" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/02/genetic-panoramic-test/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guitar Art Progress</title>
		<link>http://labs.eric-decker.com/2008/02/guitar-art-progress/</link>
		<comments>http://labs.eric-decker.com/2008/02/guitar-art-progress/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 21:07:32 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=121</guid>
		<description><![CDATA[More work with an electric guitar and Processing. Gave a presentation today on what I was working on, and got some great feedback, especially from Nate Wolf who suggested something that would be accumulative, s no fading. I had the idea of it building before as it scrolled, but something about how Nate put it [...]]]></description>
			<content:encoded><![CDATA[<p>More work with an electric guitar and Processing. Gave a presentation today on what I was working on, and got some great feedback, especially from <a href="http://cias.rit.edu/~ncw4260/wordpress/" title="Nate's Blog" target="_blank">Nate Wolf </a>who suggested something that would be accumulative, s no fading. I had the idea of it building before as it scrolled, but something about how Nate put it made it strike me to take a second whack at that idea. Later I was talking with <a href="http://cias.rit.edu/~sjm8098/wordpress/" title="Sarah's Blog" target="_blank">Sarah Merchant</a>, and we were talking about how it could be a big print and I thought it might be really neat to make some sort of genome looking thing, so after you play a song or whatever, you have a long scroll (like of sheet music) of &#8216;genetic code.&#8217; I&#8217;m going to have to look into that. (If anyone is interested in financing and being a patron for a 100-foot or so print, let me know – I sure know that I can&#8217;t afford that right now.)</p>
<p><script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfid76e08ca30708880864bfc4c5b42cbc69"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://www.youtube.com/v/wx87E811D7U","swfid76e08ca30708880864bfc4c5b42cbc69","415","355","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/02/guitar-art-progress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Motion Tracking Experiment #2</title>
		<link>http://labs.eric-decker.com/2008/02/motion-tracking-experiment-2/</link>
		<comments>http://labs.eric-decker.com/2008/02/motion-tracking-experiment-2/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 17:41:08 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Experimental New Media]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=120</guid>
		<description><![CDATA[Another clip playing around with SynthEyes, Cinema 4D, and After Effects. I can&#8217;t seem to get the GI to stop flickering, even though I have it set to &#8216;camera animation.&#8217; I might have to upload a saved solution file or something to netrender. Additionally, if you&#8217;re having a problems recently with After Effects not rendering [...]]]></description>
			<content:encoded><![CDATA[<p>Another clip playing around with SynthEyes, Cinema 4D, and After Effects. I can&#8217;t seem to get the GI to stop flickering, even though I have it set to &#8216;camera animation.&#8217; I might have to upload a saved solution file or something to netrender. Additionally, if you&#8217;re having a problems recently with After Effects not rendering out due to a permissions error, you need to update QuickTime to 7.4.1 or whatever the new one is. They also cut out a  lot of codecs, but as long as H246 is there I&#8217;m good.</p>
<p><script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfid354917851d851b331de8f221e776bc25"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://www.youtube.com/v/t87GPlLdJJ4","swfid354917851d851b331de8f221e776bc25","425","355","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/02/motion-tracking-experiment-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Experimenting with Compositing</title>
		<link>http://labs.eric-decker.com/2008/01/experimenting-with-compositing/</link>
		<comments>http://labs.eric-decker.com/2008/01/experimenting-with-compositing/#comments</comments>
		<pubDate>Thu, 31 Jan 2008 08:24:37 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Experimental New Media]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=119</guid>
		<description><![CDATA[For one of my classes I started to experiment with compositing 3D with video. One of my colleagues, Brian Cain, showed me this great software called SynthEyes. So I started just playing around with it and it&#8217;s simple and accurate. I brought a video file into SynthEyes and it tracked a bunch of points, and [...]]]></description>
			<content:encoded><![CDATA[<p>For one of my classes I started to experiment with compositing 3D with video. One of my colleagues, <a href="http://briancain.tv/" target="_blank">Brian Cain</a>, showed me this great software called <a href="http://www.ssontech.com/" target="_blank">SynthEyes</a>. So I started just playing around with it and it&#8217;s simple and accurate. I brought a video file into SynthEyes and it tracked a bunch of points, and then with a little configuration, mapped out the camera movement in 3D space. The tracker points and camera can be exported to Cinema 4D, and then whatever I render out matches up more or less perfectly with the video. Here&#8217;s a test I just did this week, I&#8217;m going to be filming some better quality video later, and at some point I&#8217;ll upload a better quality movie file.</p>
<p><script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfidce93ff325fc61398631e2e8b6be564aa"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://www.youtube.com/v/RC2C0AjasfU","swfidce93ff325fc61398631e2e8b6be564aa","425","355","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
<p><span id="more-119"></span><br />
<script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfid83d07458cce63f864fe5d65b9ba378b1"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://www.youtube.com/v/XCK4SqWE3z0","swfid83d07458cce63f864fe5d65b9ba378b1","425","355","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/01/experimenting-with-compositing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Guitar Update</title>
		<link>http://labs.eric-decker.com/2008/01/guitar-update/</link>
		<comments>http://labs.eric-decker.com/2008/01/guitar-update/#comments</comments>
		<pubDate>Wed, 23 Jan 2008 07:59:21 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=118</guid>
		<description><![CDATA[Worked on getting different notes from the strings, and it&#8217;s far from perfect, but it will work later for some sort of generative art engine. The Processing file is up here, but Java needs you to allow it to use your microphone, and it doesn&#8217;t always work (sometimes the browser window will freeze). You probably [...]]]></description>
			<content:encoded><![CDATA[<p>Worked on getting different notes from the strings, and it&#8217;s far from perfect, but it will work later for some sort of generative art engine. The Processing file is up <a href="http://www.eric-decker.com/processing/guitarInput_09/" target="_blank">here</a>, but Java needs you to allow it to use your microphone, and it doesn&#8217;t always work (sometimes the browser window will freeze). You probably won&#8217;t be able to see anything, unless you have an electric guitar and plug it into your mic.</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/geetar_1.jpg" alt="geetar_1.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/01/guitar-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Electric Guitar GenArt</title>
		<link>http://labs.eric-decker.com/2008/01/electric-guitar-genart/</link>
		<comments>http://labs.eric-decker.com/2008/01/electric-guitar-genart/#comments</comments>
		<pubDate>Mon, 21 Jan 2008 07:54:25 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Music]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=116</guid>
		<description><![CDATA[Jason Arena has us at it again, making crazy stuff. This time around I am using Processing again (It&#8217;s just so much fun) and will be using an electric guitar as an input device. It is simple to set up and required me only to buy a 6&#8242; male to male stereo 1/4&#8243; jack wire [...]]]></description>
			<content:encoded><![CDATA[<p>Jason Arena has us at it again, making crazy stuff. This time around I am using Processing again (It&#8217;s just so much fun) and will be using an electric guitar as an input device. It is simple to set up and required me only to buy a 6&#8242; male to male stereo 1/4&#8243; jack wire and find a 9 volt battery to repair a headphone amplifier. The electric guitar outputs to the headphone amp, which then outputs to the mic input of my laptop. Then, using the Sonia library, I take that data and do whatever I want. As of now I am working on note detection, which cannot be done though pitch so I have to analyze the frequency spectrum. I&#8217;ll have a video up shortly demonstrating it.</p>
<p><script type="text/javascript" src="http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/js/swfobject.js"></script><span class="embedflash" id="swfid346057c213c183be4592288aecd8917c"><small>(Please open the article to see the flash file or player.)</small></span><script type="text/javascript">
				var flashvars = {}; var params = {}; var attributes = {};flashvars.searchbar = "false";flashvars.file = "http://labs.eric-decker.com/flv/guitarviz_1768K_Stream001.flv";params.allowfullscreen = "true"; params.allowscriptaccess = "always";
				swfobject.embedSWF("http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/mediaplayer.swf?width=425&amp;height=260","swfid346057c213c183be4592288aecd8917c","425","260","9.0.0","http://labs.eric-decker.com/wp-content/plugins/pb-embedflash/swf/expressInstall.swf",flashvars,params,attributes);
		</script></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/01/electric-guitar-genart/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VE Project 1 / ImageMapper Wrap Up</title>
		<link>http://labs.eric-decker.com/2008/01/ve-project-1imagemapper-wrap-up/</link>
		<comments>http://labs.eric-decker.com/2008/01/ve-project-1imagemapper-wrap-up/#comments</comments>
		<pubDate>Thu, 10 Jan 2008 05:24:34 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=105</guid>
		<description><![CDATA[Today I &#8216;finished&#8217; the ImageMapper project for my Virtual Entertainment class. I had settled on the joshua tree image from a large set of other images I liked. Everyone had their generative artwork printed out and we hung them up in one of the halls. All together, everyone did a great job, and the look [...]]]></description>
			<content:encoded><![CDATA[<p>Today I &#8216;finished&#8217; the <a href="http://eric-decker.com/processing/imageMapperPresentation/" target="_blank">ImageMapper</a> project for my Virtual Entertainment class. I had settled on the joshua tree image from a large set of <a href="http://flickr.com/photos/ericdecker/sets/72157603450890500/" target="_blank">other images</a> I liked. Everyone had their generative artwork printed out and we hung them up in one of the halls. All together, everyone did a great job, and the look great together. Here are some photos from today.</p>
<p>Graeme putting up images:<br />
<img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/graeme.jpg" alt="graeme.jpg" /></p>
<p>Old Man Arena:<br />
<a href="http://eric-decker.com/stuff/ve2007.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/old_man_arena.jpg" alt="old_man_arena.jpg" boarder=0 /></a><em><br />
(<a href="http://labs.eric-decker.com/?p=105">more</a>) </em></p>
<p><span id="more-105"></span></p>
<p>Brendon showing up late:<br />
<img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/brendon.jpg" alt="brendon.jpg" /></p>
<p>Close up of one of the walls:<br />
<img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/closeup.jpg" alt="closeup.jpg" /></p>
<p>Sarah hangs up prints:<br />
<img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/sarah.jpg" alt="sarah.jpg" /></p>
<p>Old Man Arena and the VE class:<br />
<img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/ve.jpg" alt="ve.jpg" /></p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/01/ve-project-1imagemapper-wrap-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ImageMapper results</title>
		<link>http://labs.eric-decker.com/2008/01/imagemapper-results/</link>
		<comments>http://labs.eric-decker.com/2008/01/imagemapper-results/#comments</comments>
		<pubDate>Tue, 08 Jan 2008 03:48:07 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=87</guid>
		<description><![CDATA[Project 1 is wrapping up for my Virtual Entertainment class. I&#8217;ve picked my favorites (it was hard) and have made an image that will be of print quality. Our class will be printing them out in 8, 5, and 3 inch squares and then displaying them. In order to make a 8&#8243; x 8&#8242; square, [...]]]></description>
			<content:encoded><![CDATA[<p>Project 1 is wrapping up for my Virtual Entertainment class. I&#8217;ve picked my favorites (it was hard) and have made an image that will be of print quality. Our class will be printing them out in 8, 5, and 3 inch squares and then displaying them. In order to make a 8&#8243; x 8&#8242; square, I needed a 2400 x 2400 px image. Here&#8217;s an example of the image scaled down and a section of it 100%.</p>
<blockquote><p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/compare.jpg" alt="joshuatree compare" /></p></blockquote>
<p>Here are a handful of some images &#8220;I&#8221; have made with my <a href="http://eric-decker.com/processing/imageMapperPresentation/" target="_blank">ImageMapper program</a>. I figured that I would show what the photo I used was to generate the image. Kind of takes all the magic away from it, seeing them side by side. Again, there are more on <a href="http://flickr.com/photos/ericdecker/sets/72157603450890500/" title="flickr" target="_blank">flickr</a>.</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/joshuatree-out.jpg" alt="joshuatree-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/joshuatree-in.jpg" alt="joshuatree-in.jpg" /><br />
Joshua Tree National Park</p>
<p><span id="more-87"></span></p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/914-out.jpg" alt="914-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/914-in.jpg" alt="914-in.jpg" /><br />
Clock from digital display on a stove</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/fire-out.jpg" alt="fire-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/fire-in.jpg" alt="fire-in.jpg" /><br />
Charcoal grill fire</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/painting-out.jpg" alt="painting-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/painting-in.jpg" alt="painting-in.jpg" /><br />
Portion of a painting by Erin</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/shells-out.jpg" alt="shells-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/shells-in.jpg" alt="shells-in.jpg" /><br />
Muscle shells</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/turtleeatshotdog-out.jpg" alt="turtleeatshotdog-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/turtleeatshotdog-in.jpg" alt="turtleeatshotdog-in.jpg" /><br />
Turtle eating a hot dog off a stick</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/watch-out.jpg" alt="watch-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/watch-in.jpg" alt="watch-in.jpg" /><br />
Wrist watch</p>
<p><img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/merlot-out.jpg" alt="merlot-out.jpg" /> <img src="http://labs.eric-decker.com/wp-content/uploads/2008/01/merlot-in.jpg" alt="merlot-in.jpg" /><br />
Merlot, my parents&#8217; African Grey parrot.</p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2008/01/imagemapper-results/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Image Mapper Demo</title>
		<link>http://labs.eric-decker.com/2007/12/image-mapper-demo/</link>
		<comments>http://labs.eric-decker.com/2007/12/image-mapper-demo/#comments</comments>
		<pubDate>Mon, 17 Dec 2007 02:13:00 +0000</pubDate>
		<dc:creator>Eric</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Processing]]></category>
		<category><![CDATA[Virtual Entertainment]]></category>

		<guid isPermaLink="false">http://labs.eric-decker.com/?p=62</guid>
		<description><![CDATA[I&#8217;ve been playing around more with Processing, and I&#8217;ve settled on something I like for my project for Virtual Entertainment. I am going to be using my &#8216;Image Mapper&#8217; program that I was working with that maps out all the same colors in an image. I can put any image I want into it, but [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing around more with Processing, and I&#8217;ve settled on something I like for my project for Virtual Entertainment. I am going to be using my &#8216;Image Mapper&#8217; program that I was working with that maps out all the same colors in an image. I can put any image I want into it, but right now it is set up for 900 x 900. I can let it render by itself, or I can control the sample point by using the mouse. I have it write out a PDF of it&#8217;s progress every few minutes, so it basically renders it out in steps. I can then bring it together in Illustrator (saving out the whole thing as one PDF makes the app crash).<br />
The way I&#8217;ve been making images until now has been with a modified batch version, which I give it an array of image files and for how long I want it to draw each one, and it just saves out it&#8217;s progress as a png file. This lets me see how a handful of images will look by letting it run overnight or while I am away.</p>
<p>Here is a <a href="http://eric-decker.com/processing/imageMapperPresentation/" target="_blank">demo</a> of how it works. You can click and drag to control the sample point, and the up and down arrows control the range of the random while you&#8217;re clicking and dragging. Below are some of my favorites that have come out:</p>
<p><a href="http://labs.eric-decker.com/wp-content/uploads/2007/12/914_2.jpg" title="914_2.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2007/12/914_2.thumbnail.jpg" alt="914_2.jpg" /></a>  <a href="http://labs.eric-decker.com/wp-content/uploads/2007/12/clouds_2.jpg" title="clouds_2.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2007/12/clouds_2.thumbnail.jpg" alt="clouds_2.jpg" /></a> <a href="http://labs.eric-decker.com/wp-content/uploads/2007/12/fire_0.jpg" title="fire_0.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2007/12/fire_0.thumbnail.jpg" alt="fire_0.jpg" /></a> <a href="http://labs.eric-decker.com/wp-content/uploads/2007/12/savedimage-12142007_185757_6374344607360.jpg" title="savedimage-12142007_185757_6374344607360.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2007/12/savedimage-12142007_185757_6374344607360.thumbnail.jpg" alt="savedimage-12142007_185757_6374344607360.jpg" /></a> <a href="http://labs.eric-decker.com/wp-content/uploads/2007/12/coins_6.jpg" title="coins_6.jpg"><img src="http://labs.eric-decker.com/wp-content/uploads/2007/12/coins_6.thumbnail.jpg" alt="coins_6.jpg" /></a></p>
<p>There are more examples in my <a href="http://www.flickr.com/photos/11594493@N05/sets/72157603450890500/" target="_blank">flickr gallery</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://labs.eric-decker.com/2007/12/image-mapper-demo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

