<?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>DrPunchBlog &#187; Art Douglas</title>
	<atom:link href="http://yo.drpunchman.com/tag/art-douglas/feed/" rel="self" type="application/rss+xml" />
	<link>http://yo.drpunchman.com</link>
	<description>Living the feaver dream.</description>
	<lastBuildDate>Thu, 02 Feb 2012 02:19:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Heat of the Battle Video: Day 1 Pics</title>
		<link>http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/</link>
		<comments>http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/#comments</comments>
		<pubDate>Sat, 05 Feb 2011 07:26:57 +0000</pubDate>
		<dc:creator>DrPunchman</dc:creator>
				<category><![CDATA[Photography]]></category>
		<category><![CDATA[Art Douglas]]></category>
		<category><![CDATA[Cindy Douglas]]></category>
		<category><![CDATA[Farm]]></category>
		<category><![CDATA[Heat of the Battle]]></category>
		<category><![CDATA[stan bush]]></category>
		<category><![CDATA[Video Shoot]]></category>

		<guid isPermaLink="false">http://yo.drpunchman.com/?p=1462</guid>
		<description><![CDATA[These are some of the pictures from the 1st day of filming Stan Bush&#8217;s new HEAT OF THE BATTLE video: WARNING: I am NOT a photographer. I am horrible at it. I still like to do it. Continue at your own risk.]]></description>
			<content:encoded><![CDATA[<p>These are some of the pictures from the 1st day of filming Stan Bush&#8217;s new HEAT OF THE BATTLE video:</p>
<p><img class="aligncenter size-full wp-image-1464" title="Stan Bush's awesomeness eclipses the sun." src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StanGreen3.jpg" alt="" width="570" height="428" /></p>
<p><span style="color: #ff0000;"><strong>WARNING: </strong></span>I am NOT a photographer. I am horrible at it. I still like to do it. Continue at your own risk.</p>
<p><span id="more-1462"></span>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/farmlocation/' title='The only thing harvested on the farm today, was METAL!'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/FarmLocation-150x150.jpg" class="attachment-thumbnail" alt="The only thing harvested on the farm today, was METAL!" title="The only thing harvested on the farm today, was METAL!" /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/farmlocation2/' title='Stan only eats giant pineapples. We shipped these babys in from Easter Island at $3k a pop.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/FarmLocation2-150x150.jpg" class="attachment-thumbnail" alt="Stan only eats giant pineapples. We shipped these babys in from Easter Island at $3k a pop." title="Stan only eats giant pineapples. We shipped these babys in from Easter Island at $3k a pop." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/studiooutside/' title='Around the back, fudge was actually being made.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StudioOutside-150x150.jpg" class="attachment-thumbnail" alt="Around the back, fudge was actually being made." title="Around the back, fudge was actually being made." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/stangreen1/' title='No lip-sync allowed. Stan sang that song 3000 times before we turned the camera on.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StanGreen1-150x150.jpg" class="attachment-thumbnail" alt="No lip-sync allowed. Stan sang that song 3000 times before we turned the camera on." title="No lip-sync allowed. Stan sang that song 3000 times before we turned the camera on." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/stangreen2/' title='Can you feel the power of solid rock?'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StanGreen2-150x150.jpg" class="attachment-thumbnail" alt="Can you feel the power of solid rock?" title="Can you feel the power of solid rock?" /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/stangreen3/' title='Stan Bush&#039;s awesomeness eclipses the sun.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StanGreen3-150x150.jpg" class="attachment-thumbnail" alt="Stan Bush&#039;s awesomeness eclipses the sun." title="Stan Bush&#039;s awesomeness eclipses the sun." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/studioopen/' title='Stan rocked the wall off the building.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/StudioOpen-150x150.jpg" class="attachment-thumbnail" alt="Stan rocked the wall off the building." title="Stan rocked the wall off the building." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/art2/' title='Art Strangles a liter of soda.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/Art2-150x150.jpg" class="attachment-thumbnail" alt="Art Strangles a liter of soda." title="Art Strangles a liter of soda." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/art/' title='Art killed the soda, who will be next? Who?'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/Art-150x150.jpg" class="attachment-thumbnail" alt="Art killed the soda, who will be next? Who?" title="Art killed the soda, who will be next? Who?" /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/cindy/' title='Cindy kisses each apple clean.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/Cindy-150x150.jpg" class="attachment-thumbnail" alt="Cindy kisses each apple clean." title="Cindy kisses each apple clean." /></a>
<a href='http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/cindydance/' title='Cindy dances. Getting ready for the mosh-pit, where she is known as Cinnamon-Death.'><img width="145" height="145" src="http://yo.drpunchman.com/wp-content/uploads/2011/02/CindyDance-150x150.jpg" class="attachment-thumbnail" alt="Cindy dances. Getting ready for the mosh-pit, where she is known as Cinnamon-Death." title="Cindy dances. Getting ready for the mosh-pit, where she is known as Cinnamon-Death." /></a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://yo.drpunchman.com/2011/02/05/heat-of-the-battle-video-day-1-pics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<enclosure url="http://yo.drpunchman.com/wp-content/uploads/2011/02/FarmLocation-150x150.jpg" length="7333" type="image/jpg" />	</item>
		<item>
		<title>AS3 YouTube API</title>
		<link>http://yo.drpunchman.com/2010/03/09/as3-youtube-api/</link>
		<comments>http://yo.drpunchman.com/2010/03/09/as3-youtube-api/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 03:16:07 +0000</pubDate>
		<dc:creator>DrPunchman</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[Art Douglas]]></category>
		<category><![CDATA[pickles]]></category>
		<category><![CDATA[VIDEO]]></category>
		<category><![CDATA[youTube]]></category>

		<guid isPermaLink="false">http://yo.drpunchman.com/?p=898</guid>
		<description><![CDATA[This is my simple youTube Player class using their API. Thanks to Art Douglas for the video playlist youTube.as [ download coming soon ]]]></description>
			<content:encoded><![CDATA[<p>This is my simple youTube Player class using their API.<br />

    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="swfobj_0" width="400" height="600" align="center">
      <param name="movie" value="http://yo.drpunchman.com/wp-content/uploads/2010/03/testTube.swf" />
      <param name="align" value="center" />
      <!--[if !IE]>-->
      <object type="application/x-shockwave-flash" data="http://yo.drpunchman.com/wp-content/uploads/2010/03/testTube.swf" width="400" height="600" align="center">
      <!--<![endif]-->
        
      <!--[if !IE]>-->
      </object>
      <!--<![endif]-->
    </object>
<br />
Thanks to <a href="http://www.youtube.com/user/ARTIED" target="_blank">Art Douglas</a> for the video playlist</p>
<p><span id="more-898"></span><br />
youTube.as</p>
<pre class="brush: as3; title: ; notranslate">
package com.drpunchlogic
{
	/*	

		YOU MIGHT WANT TO READ THIS FIRST:

http://code.google.com/apis/youtube/flash_api_reference.html

http://code.google.com/apis/youtube/flash_api_reference.html#GettingStarted

http://code.google.com/apis/youtube/flash_api_reference.html#Adding_event_listener

		good to know:

http://code.google.com/apis/youtube/articles/tubeloc.html

		this is based off of the example located at: http://code.google.com/apis/youtube/flash_api_reference.html#loadVideoById

	*/

/*
-------------------------------------------------
	INCLUDE STUFF
-------------------------------------------------
*/
	// security
	import flash.system.Security;
    import flash.system.SecurityPanel;
	import flash.system.LoaderContext;

	// display objects
	import flash.display.MovieClip;
	import flash.display.Loader;
	import flash.geom.Rectangle;

	// standard events
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.events.ProgressEvent;
	import flash.events.EventDispatcher;
	import flash.events.KeyboardEvent;

	// error checking
	import flash.events.ErrorEvent;
	import flash.events.IOErrorEvent;
	import flash.errors.IOError;
	import flash.errors.MemoryError;

	// networking
	import flash.net.URLRequest;
	import flash.net.navigateToURL;

	// TweenMax
	import com.greensock.*;
	import com.greensock.easing.*;

	// Custom
	// ---- OOPS (traces out to text box)
	import com.drpunchlogic.oops;
	// ---- XML
	import com.drpunchlogic.youTubeXML;
	// ---- GALLERY
	import com.drpunchlogic.youTubeGallery;

	// -----------------------

	public class youTube extends MovieClip
	{
// START --------------------------

/*
-------------------------------------------------
	SHARED VARIABLES
-------------------------------------------------
*/
		private var loader:Loader;
		private var _youTube:Object; // This will hold the API player instance once it is initialized.

		public var _nowPlaying:uint = 0; // The current video uint

		//public var _file:String = &quot;http://www.youtube.com/v/UA3TLWplbHs&quot;; // the file we want to play
		public var _file:Array = new Array(); // the file we want to play in an array for the XML

		// oops
		private var _log:String = '';

		// player controls
		public var _ctrl:youTubeBtn;
		private var _isFirstPlay:Boolean = true;

		// OOPS
		public var _oops:oops; // TRACE CLASS
		public var _say:Function;

		// XML
		public var _X:youTubeXML; // XML CLASS

		// GALLERY
		public var _G:youTubeGallery; // GALLERY CLASS

/*
-------------------------------------------------
	YOU TUBE!
-------------------------------------------------
*/
		public function youTube() : void
		{
			_oops = new oops();
			_oops.x = 260;
			addChild( _oops );
			_say = _oops.say;

			_say( &quot;\n\n[ testTube! ]&quot; );

			// first thing I am going to do is add security
			sercureDom();

			// after it is secure, INIT the player
			addEventListener( &quot;SEC&quot;, init );

		} 

/*
-------------------------------------------------
	SECURE DOMAINS
-------------------------------------------------
*/
		private function sercureDom() : void
		{
			_say( &quot;[ sercureDom ]&quot; );

			/*
			The player SWF file on www.youtube.com needs to communicate with your host SWF file.
			Your code must call Security.allowDomain() to allow this communication.
			*/

			Security.allowDomain(&quot;www.youtube.com&quot;);

			// ok, let's init
			//dispatchEvent( new Event( &quot;SEC&quot; ) );
			init();
		}

/*
-------------------------------------------------
	INIT
-------------------------------------------------
*/
		public function init( ) : void
		{
			_say( &quot;[ init ]&quot; );

			// we don't need the event listener any longer
			removeEventListener( &quot;SEC&quot;, init );

			// add XML
			addEventListener( &quot;XMLFIN&quot; , XMLready ); // &lt;-- Start Movie After XML is finished
			// parse XML
			addXML();

			// normally yes, but today we want the XML to tell us when it is ready.
			/*
			loader = new Loader();
			loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
			loader.load(new URLRequest(&quot;http://www.youtube.com/apiplayer?version=3&quot;));
			*/

		}
/*
-------------------------------------------------
	XML READY
-------------------------------------------------
*/
		public function XMLready( e:Event ) : void
		{
			_say( &quot;[ XML ready ]\n&quot; );

			// kill listener we don't need
			removeEventListener( &quot;XMLFIN&quot; , XMLready ); 

			// create file array
			for( var i:uint = 0; i &lt; _X._itemArr.length; i++ )
			{
				_file.push( _X._itemArr[i].video );
			}

			// add a gallery
			addGallery(); // not needed for the player

			// start loading movies
			loader = new Loader();
			loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
			loader.load(new URLRequest(&quot;http://www.youtube.com/apiplayer?version=3&quot;));
		}
/*
-------------------------------------------------
	LOADER
-------------------------------------------------
*/
		private function onLoaderInit(event:Event):void {
			addChild(loader);
			loader.content.addEventListener(&quot;onReady&quot;, onPlayerReady);
			loader.content.addEventListener(&quot;onError&quot;, onPlayerError);
			loader.content.addEventListener(&quot;onStateChange&quot;, onPlayerStateChange);
			loader.content.addEventListener(&quot;onPlaybackQualityChange&quot;, onVideoPlaybackQualityChange);
		}

/*
-------------------------------------------------
	READY?
-------------------------------------------------
*/
		private function onPlayerReady(e:Event):void {
			// Event.data contains the event parameter, which is the player API ID
			_say(&quot;\t{ ready: &quot; + Object(e).data + &quot; }&quot; );

			// Once this event has been dispatched by the player, we can use
			// cueVideoById, loadVideoById, cueVideoByUrl and loadVideoByUrl
			// to load a particular YouTube video.
			_youTube = loader.content;

			// Set appropriate player dimensions for your application
			_youTube.setSize(400, 300);
			// We are playing a movie smaller then 640 so let's not load some big format we won't use:
			_youTube.setPlaybackQuality( &quot;small&quot; );

			// don't allow multiple loads of the video player and controls
			if( _isFirstPlay )
			{
				// lets add the controls
				ctrls();

				// play the first video
				newVideo( _nowPlaying );

				_isFirstPlay = false;
			}
		}
/*
-------------------------------------------------
	ERROR, WTF?
-------------------------------------------------
*/
		private function onPlayerError(e:Event):void {
			// Event.data contains the event parameter, which is the error code
			_say(&quot;\t{ error: &quot; +  Object(e).data + &quot; }&quot;,1 );
		}
/*
-------------------------------------------------
	MARK CHANGES
-------------------------------------------------
*/
		private function onPlayerStateChange(e:Event):void {
			// Event.data contains the event parameter, which is the new _youTube state
			_say(&quot;\t{ state: &quot; + Object(e).data + &quot; }&quot; );
			// send new event to controller
			_ctrl.stateChange( Object(e).data );

			// activate gallery buttons
			if( Object(e).data == 1 ) _G.btnOnOff( true );
			//if( Object(e).data == 5 ) _G.btnOnOff( false );

		}

		private function onVideoPlaybackQualityChange(e:Event):void {
			// Event.data contains the event parameter, which is the new video quality
			_say(&quot;\t{ quality: &quot; + Object(e).data + &quot; }&quot; );
		}
/*
-------------------------------------------------
	PLAY THE VIDEO
-------------------------------------------------
*/
		public function newVideo( i:uint ) : void
		{
			_say(&quot;\t{ file: &quot; + _file[i] + &quot; }&quot;,3 );
			// let's load a movie to play
			_youTube.loadVideoByUrl( _file[i] , 3);

			_nowPlaying = i;
		}
/*
	This next little area is to prep the
	thumbnail gallery section
*/

/*
-------------------------------------------------
	NEXT VIDEO
-------------------------------------------------
*/
	public function prepFile() : void
	{
		// let's get a movie ready to play
		_youTube.cueVideoByUrl( _file[ _nowPlaying ] , 0);

	}
/*
	That is basically everything we need,
	So, I'm going to add the controls now.
*/
/*
-------------------------------------------------
	CONTROLS
-------------------------------------------------
*/
		public function ctrls() : void
		{

			_say( &quot;[ ctrl ]&quot; );

			_ctrl = new youTubeBtn( );
			_ctrl.x = _ctrl.width / 2;
			_ctrl.y = 300;
			_ctrl.name = &quot;ctrl&quot;;

			addChild( _ctrl );

			_ctrl.init( _youTube, this );

			// this isn't part of controlls, I just want to show/hide oops
			_ctrl.shbtn.addEventListener( MouseEvent.CLICK, showhideOOPS );

		} 

/*
	Let's add a gallery to the video player
*/
/*
-------------------------------------------------
	ADD XML
-------------------------------------------------
*/
	private function addXML() : void
	{
		// add the XML from the feed
		var feed:String = &quot;http://gdata.youtube.com/feeds/api/playlists/&quot;;
		// 43697368FC276DB2 &lt;-- mine
		// DF668B5F247C0CE7 &lt;-- another
		feed += &quot;D7FE57402F99A513&quot;; //&lt;--- playlist id
		feed += &quot;?&quot;;
		feed += &quot;&amp;start-index=1&quot;;
		//feed += &quot;&amp;max-results=12&quot;;
		feed += &quot;&amp;v=2&quot;;

		_X = new youTubeXML( this, feed );

	}
/*
-------------------------------------------------
	ADD GALLERY
-------------------------------------------------
*/
	private function addGallery() : void
	{
		// add the gallery thumbnails
		_G = new youTubeGallery( this, _X._itemArr );
		_G.x = 0;
		_G.y = 330;
		addChild( _G );
	}

/*
-------------------------------------------------
	SHOW/HIDE OOPS
-------------------------------------------------
*/
		private function showhideOOPS( e:Event ) : void
		{
			//( _oops.visible ) ? _oops.visible = false : _oops.visible = true;
			( _oops.x == 0 ) ? [ TweenLite.to(_oops, 1, {x:260}) , TweenLite.to(_G, 1, {x:0}) ] : [ TweenLite.to(_oops, 1, {x:0}) ,TweenLite.to(_G, 1, {x:-404}) ];
		}
// END --------------------
	}
}
</pre>
<p>[ download coming soon ]</p>
]]></content:encoded>
			<wfw:commentRss>http://yo.drpunchman.com/2010/03/09/as3-youtube-api/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Happy Birthday Art</title>
		<link>http://yo.drpunchman.com/2010/01/22/happy-birthday-art/</link>
		<comments>http://yo.drpunchman.com/2010/01/22/happy-birthday-art/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 20:31:51 +0000</pubDate>
		<dc:creator>DrPunchman</dc:creator>
				<category><![CDATA[Rant]]></category>
		<category><![CDATA[Art Douglas]]></category>
		<category><![CDATA[Flash Goron]]></category>
		<category><![CDATA[lady-boy]]></category>

		<guid isPermaLink="false">http://yo.drpunchman.com/2010/01/22/happy-birthday-art/</guid>
		<description><![CDATA[]]></description>
			<content:encoded><![CDATA[<div id="attachment_766" class="wp-caption aligncenter" style="width: 235px"><a href="http://yo.drpunchman.com/wp-content/uploads/2010/01/art-bday.jpg"><img class="size-medium wp-image-766" title="art-bday" src="http://yo.drpunchman.com/wp-content/uploads/2010/01/art-bday-225x300.jpg" alt="" width="225" height="300" /></a><p class="wp-caption-text">Happy Birthday ART!</p></div>
]]></content:encoded>
			<wfw:commentRss>http://yo.drpunchman.com/2010/01/22/happy-birthday-art/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

