<?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>Tom / bangnoise &#187; VDMX</title>
	<atom:link href="http://kriss.cx/tom/tag/vdmx/feed/" rel="self" type="application/rss+xml" />
	<link>http://kriss.cx/tom</link>
	<description></description>
	<lastBuildDate>Tue, 24 Jan 2012 20:05: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>VVFFGL</title>
		<link>http://kriss.cx/tom/2012/01/vvffgl/</link>
		<comments>http://kriss.cx/tom/2012/01/vvffgl/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 17:20:17 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=283</guid>
		<description><![CDATA[In 2009 vade and I developed the VVFFGL framework which provides FreeFrame GL support for VDMX. Vidvox have open-sourced our work: as well as the framework there&#8217;s a Quartz Composer plugin for running FreeFrame GL (and older FreeFrame 1.0) plugins in Quartz Composer.]]></description>
			<content:encoded><![CDATA[<p><a href="http://kriss.cx/tom/wp-content/uploads/2012/01/VDMX5-Main-Output-2012-01-24-at-17.09.01.png"><img class="alignnone size-large wp-image-284" title="TVPixel" src="http://kriss.cx/tom/wp-content/uploads/2012/01/VDMX5-Main-Output-2012-01-24-at-17.09.01-700x393.png" alt="" width="700" height="393" /></a></p>
<p>In 2009 <a href="http://vade.info/">vade</a> and I developed the <a href="http://code.google.com/p/vvffgl/">VVFFGL</a> framework which provides FreeFrame GL support for <a href="http://vidvox.net/">VDMX</a>. Vidvox have open-sourced our work: as well as the framework there&#8217;s a Quartz Composer <a href="http://code.google.com/p/vvffgl/downloads/list">plugin</a> for running FreeFrame GL (and older FreeFrame 1.0) plugins in Quartz Composer.</p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2012/01/vvffgl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Datamosh 1.01</title>
		<link>http://kriss.cx/tom/2010/08/datamosh-1-01/</link>
		<comments>http://kriss.cx/tom/2010/08/datamosh-1-01/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 01:46:23 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[CoGe]]></category>
		<category><![CDATA[glitch]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=208</guid>
		<description><![CDATA[Datamosh 1.01 Update to fix a bug which caused unintentional glitch, ha.]]></description>
			<content:encoded><![CDATA[<p><a href="http://kriss.cx/tom/datamosh"><img class="alignnone size-full wp-image-232" title="livebloom_bangnoise2" src="http://kriss.cx/tom/wp-content/uploads/2010/08/livebloom_bangnoise21.png" alt="" width="580" height="327" /></a></p>
<p><a href="http://kriss.cx/tom/datamosh/">Datamosh 1.01</a></p>
<p>Update to fix a bug which caused unintentional glitch, ha.</p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2010/08/datamosh-1-01/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>v002</title>
		<link>http://kriss.cx/tom/2010/06/v002/</link>
		<comments>http://kriss.cx/tom/2010/06/v002/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 16:29:40 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[Cocoa]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[glitch]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=150</guid>
		<description><![CDATA[Recent coding work has been with vade on v002.]]></description>
			<content:encoded><![CDATA[<p>Recent coding work has been with vade on <a href="http://v002.info/">v002</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2010/06/v002/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Datamosh</title>
		<link>http://kriss.cx/tom/2009/06/datamosh/</link>
		<comments>http://kriss.cx/tom/2009/06/datamosh/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 11:48:25 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[glitch]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=123</guid>
		<description><![CDATA[Datamosh 1.0 Real-time compression-artifacting plugin for use in Quartz Composer, VDMX and any other QC-based app. References: datamosher&#8217;s YouTube videos, Create Digital Motion.]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-125" title="Tennis Yellow" src="http://kriss.cx/tom/wp-content/uploads/2009/06/Tennis-Yellow1.png" alt="" width="640" height="352" /></p>
<p><a title="Datamosh Plugin" href="http://kriss.cx/tom/datamosh/">Datamosh 1.0</a></p>
<p>Real-time compression-artifacting plugin for use in Quartz Composer, VDMX and any other QC-based app.</p>
<p>References: <a href="http://www.youtube.com/watch?v=tYytVzbPky8">datamosher&#8217;s YouTube videos</a>, <a href="http://createdigitalmotion.com/2009/03/13/how-to-datamosh-with-free-video-tools-datamosh-is-the-wrong-word-david-oreilly-is-also-wrong/">Create Digital Motion</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2009/06/datamosh/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RGB Shift</title>
		<link>http://kriss.cx/tom/2009/05/rgb-shift/</link>
		<comments>http://kriss.cx/tom/2009/05/rgb-shift/#comments</comments>
		<pubDate>Sat, 02 May 2009 23:10:18 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=92</guid>
		<description><![CDATA[RGB Shift CI Filter for Quartz Composer. Kernel: kernel vec4 RGBEffect(sampler image, vec2 offset) { vec2 coord = destCoord(); float r = sample(image, samplerTransform(image, coord - offset)).r; vec2 ga = sample(image, samplerTransform(image, coord)).ga; float b = sample(image, samplerTransform(image, coord + offset)).b; return vec4(r, ga[0], b, ga[1]); } Filter Function: function myROIFunction(samplerIndex, dstRect, offset) {    [...]]]></description>
			<content:encoded><![CDATA[<p>RGB Shift CI Filter for Quartz Composer.</p>
<p><img class="alignnone size-large wp-image-91" title="rgb-shifted-dots" src="http://kriss.cx/tom/wp-content/uploads/2009/05/rgb-shifted-dots-700x393.png" alt="" width="700" height="393" /></p>
<p><span id="more-92"></span></p>
<h4>Kernel:</h4>
<pre>kernel vec4 RGBEffect(sampler image, vec2 offset)
{
<span>	</span>vec2 coord = destCoord();
<span>	</span>float r = sample(image, samplerTransform(image, coord - offset)).r;
<span>	</span>vec2 ga = sample(image, samplerTransform(image, coord)).ga;
<span>	</span>float b = sample(image, samplerTransform(image, coord + offset)).b;
<span>	</span>return vec4(r, ga[0], b, ga[1]);
}</pre>
<h4>Filter Function:</h4>
<pre>function myROIFunction(samplerIndex, dstRect, offset) {
   var roiRect = new Vec(dstRect);
   var extra = new Vec(Math.abs(offset.x), Math.abs(offset.y));
   if (dstRect.x &gt; extra.x)
   <span>	</span>roiRect.x -= extra.x;
   if (dstRect.y &gt; extra.y)
   <span>	</span>roiRect.y -= extra.y;
   roiRect.z += extra.x;
   roiRect.w += extra.y;
   return roiRect;
}

RGBEffect.ROIHandler = myROIFunction;

function __image main(__image image, __number amount, __number angle) {
   s = amount / 2;
   offset = new Vec(s * Math.cos(angle), s * Math.sin(angle));
   return RGBEffect.apply(image.definition, offset, image, offset);
}</pre>
<p><a href="http://kriss.cx/tom/downloads/rgb-shift.qtz">Download</a> (qcFX for VDMX)</p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2009/05/rgb-shift/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Video Delay</title>
		<link>http://kriss.cx/tom/2009/03/video-delay/</link>
		<comments>http://kriss.cx/tom/2009/03/video-delay/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 21:13:07 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[visuals]]></category>
		<category><![CDATA[Quartz Composer]]></category>
		<category><![CDATA[VDMX]]></category>

		<guid isPermaLink="false">http://kriss.cx/tom/?p=30</guid>
		<description><![CDATA[Video Delay Plugin &#8211; video to follow, eventually. Uses a map image to apply varying delay across the output.]]></description>
			<content:encoded><![CDATA[<p><a href="http://kriss.cx/tom/video-delay/">Video Delay Plugin</a> &#8211; video to follow, eventually. Uses a map image to apply varying delay across the output.</p>
<p><img src="http://kriss.cx/tom/wp-content/uploads/2009/03/video_delay_3.png" alt="video_delay_3" title="video_delay_3" width="400" height="300" class="alignnone size-full wp-image-88" /></p>
]]></content:encoded>
			<wfw:commentRss>http://kriss.cx/tom/2009/03/video-delay/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

