<?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>Geek.blog &#187; AS3</title>
	<atom:link href="http://blog.728media.com/tag/as3/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.728media.com</link>
	<description>Advanced Flash and Actionscript 3 by Andrew Christensen</description>
	<lastBuildDate>Wed, 12 Aug 2009 04:30:01 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Droplet: Quick Drop.io Desktop AIR App</title>
		<link>http://blog.728media.com/2009/03/14/droplet-quick-dropio-desktop-air-app/</link>
		<comments>http://blog.728media.com/2009/03/14/droplet-quick-dropio-desktop-air-app/#comments</comments>
		<pubDate>Sat, 14 Mar 2009 19:12:08 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Adobe AIR]]></category>
		<category><![CDATA[air]]></category>
		<category><![CDATA[AIR desktop]]></category>
		<category><![CDATA[AS3]]></category>
		<category><![CDATA[drop.io]]></category>
		<category><![CDATA[droplet]]></category>
		<category><![CDATA[flash]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=237</guid>
		<description><![CDATA[
I&#8217;m proud to announce the beta release of my first Drop.io desktop AIR application called Droplet. I built the application using my own Drop.io AS3 library. The application is very simple and offers the fastest way to upload a single file to Drop.io. Just open the application, choose your file, and Droplet uploads your file to [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-238" title="blogpost" src="http://blog.728media.com/wp-content/uploads/2009/03/blogpost.png" alt="blogpost" width="650" height="280" /></p>
<p>I&#8217;m proud to announce the <strong>beta</strong> release of my first <a href="http://drop.io">Drop.io</a> desktop AIR application called <em>Droplet</em>. <span id="more-237"></span>I built the application using <a href="http://code.google.com/p/dropio-as3-library/">my own Drop.io AS3 library</a>. The application is very simple and offers the fastest way to upload a single file to Drop.io. Just open the application, choose your file, and <em>Droplet</em> uploads your file to a generate drop. Once uploaded, you have the option to upload another file (to a brand new drop) or view the drop you just created with your file!</p>
<p>If <em>Droplet</em> gains enough support, I would love to see further renditions of the application to allow more support for other Drop.io features. Until then, be sure to leave your thoughts in a comment below!</p>
<p><div id="flashcontent5686" style="width:215px; height:180px;"><strong>Please upgrade your Flash Player</strong> This is the content that would be shown if the user does not have Flash Player 9.0.115 or higher installed.</div><script type="text/javascript">
<!-- // <![CDATA[
var so = new SWFObject("http://blog.728media.com/wp-content/plugins/air-badge/AIRInstallBadge.swf", "Badge", "215", "180", "9.0.115", "#FFFFFF");
so.useExpressInstall("http://blog.728media.com/wp-content/plugins/air-badge/expressinstall.swf");
so.addVariable("airversion", "1.0");
so.addVariable("appname", "Droplet");
so.addVariable("appurl", "http://www.728media.com/air/droplet.air");
so.addVariable("appid", "Droplet");
so.addVariable("pubid", "");
so.addVariable("appversion", "1.5");
so.addVariable("imageurl", "http://www.728media.com/air/dropletInstall.jpg");
so.addVariable("appinstallarg", "installed from web");
so.addVariable("applauncharg", "launched from web");
so.addVariable("helpurl", "help.html");
so.addVariable("hidehelp", "true");
so.addVariable("skiptransition", "false");
so.addVariable("titlecolor", "#00AAFF");
so.addVariable("buttonlabelcolor", "#00AAFF");
so.addVariable("appnamecolor", "#00AAFF");
so.addVariable("str_err_airswf", "<u>Running locally?</u><br/><br/>The AIR proxy swf won't load properly when this is run from the local file system.");
so.write("flashcontent5686");
// ]]&gt; -->
</script>
</p>
<p> </p>
<p><strong>System Requirements:</strong></p>
<ul>
<li><a href="http://www.adobe.com/products/air/">Adobe AIR Runtime</a> 1.5 or higher
<ul>
<li>Will run on Windows, Mac, or Linux</li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2009/03/14/droplet-quick-dropio-desktop-air-app/feed/</wfw:commentRss>
		<slash:comments>33</slash:comments>
		</item>
		<item>
		<title>How to Load External Images in Actionscript 3.0</title>
		<link>http://blog.728media.com/2009/03/11/how-to-load-external-images-in-actionscript-30/</link>
		<comments>http://blog.728media.com/2009/03/11/how-to-load-external-images-in-actionscript-30/#comments</comments>
		<pubDate>Thu, 12 Mar 2009 03:37:12 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[actionscript 3.0]]></category>
		<category><![CDATA[external images]]></category>
		<category><![CDATA[flash]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=222</guid>
		<description><![CDATA[
Using the flash.display.Loader class in AS3, you can load in external image files to display in flash. The loader class supports loading in JPG, SWF, PNG, or GIF file types. The Loader class sounds more like a loading manager that watches load progress, rather than a display object. Fact is, the Loader is treated as [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-225" title="loadingimage" src="http://blog.728media.com/wp-content/uploads/2009/03/loadingimage.jpg" alt="loadingimage" width="650" height="280" /></p>
<p>Using the <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/Loader.html">flash.display.Loader</a> class in AS3, you can load in external image files to display in flash. The loader class supports loading in JPG, SWF, PNG, or GIF file types. The Loader class sounds more like a loading manager that watches load progress, rather than a display object. Fact is, the Loader is treated as a <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/DisplayObject.html">DisplayObject</a>, so when it&#8217;s ready you just add it to the stage. Pretty simple, so let&#8217;s get started!</p>
<p><span id="more-222"></span></p>
<p>First, you will need to create an instance of the loader class and add a couple event listeners to it. One to watch load progress, and one to watch for when the loading is complete.</p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> myLoader<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=progressevent%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:progressevent.html"><span style="color: #004993;">ProgressEvent</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">PROGRESS</span><span style="color: #000066; font-weight: bold;">,</span> onLoaderProgress<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=event%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:event.html"><span style="color: #004993;">Event</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">COMPLETE</span><span style="color: #000066; font-weight: bold;">,</span> onLoaderComplete<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></div></td></tr></tbody></table></div>
<p>You&#8217;ll notice that I&#8217;m not adding the event listener to the loader instance (myLoader), but instead adding them to a property of myLoader called <strong><a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/Loader.html#contentLoaderInfo">contentLoaderInfo</a>. </strong>The Loader class has a special property that controls all the loading events. This property is an instance of the <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/LoaderInfo.html">LoaderInfo</a> class, so we will listen to it for events, rather than our Loader instance.</p>
<p>Next, we will call the <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/display/Loader.html#load()">Loader.load()</a> method to initiate the loading sequence. You will need to create a new variable that will be an instance of the <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/URLRequest.html">URLRequest</a> class. This new variable will be passed to the load() method.</p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> myLoader<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=progressevent%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:progressevent.html"><span style="color: #004993;">ProgressEvent</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">PROGRESS</span><span style="color: #000066; font-weight: bold;">,</span> onProgressStatus<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=event%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:event.html"><span style="color: #004993;">Event</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">COMPLETE</span><span style="color: #000066; font-weight: bold;">,</span> onLoaderReady<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<br />
<span style="color: #6699cc; font-weight: bold;">var</span> fileRequest<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=urlrequest%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:urlrequest.html"><span style="color: #004993;">URLRequest</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=urlrequest%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:urlrequest.html"><span style="color: #004993;">URLRequest</span></a><span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;myImage.jpg&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">load</span><span style="color: #000000;">&#40;</span>fileRequest<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></div></td></tr></tbody></table></div>
<p>Ok, so that&#8217;s pretty much it. All that is left is to create our callback methods for each of our eventListeners. Our final code should look like this:</p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> myLoader<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=loader%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:loader.html"><span style="color: #004993;">Loader</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=progressevent%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:progressevent.html"><span style="color: #004993;">ProgressEvent</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">PROGRESS</span><span style="color: #000066; font-weight: bold;">,</span> onProgressStatus<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">contentLoaderInfo</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><a href="http://www.google.com/search?q=event%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:event.html"><span style="color: #004993;">Event</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">COMPLETE</span><span style="color: #000066; font-weight: bold;">,</span> onLoaderReady<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<br />
<span style="color: #6699cc; font-weight: bold;">var</span> fileRequest<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=urlrequest%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:urlrequest.html"><span style="color: #004993;">URLRequest</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=urlrequest%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:urlrequest.html"><span style="color: #004993;">URLRequest</span></a><span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;myImage.jpg&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
myLoader<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">load</span><span style="color: #000000;">&#40;</span>fileRequest<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<br />
<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> onProgressStatus<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=progressevent%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:progressevent.html"><span style="color: #004993;">ProgressEvent</span></a><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>   <br />
  &nbsp; &nbsp; <span style="color: #009900; font-style: italic;">// this is where progress will be monitored     </span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #004993;">trace</span><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">bytesLoaded</span><span style="color: #000066; font-weight: bold;">,</span> e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">bytesTotal</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> <br />
<span style="color: #000000;">&#125;</span><br />
<br />
<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> onLoaderReady<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=event%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:event.html"><span style="color: #004993;">Event</span></a><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>     <br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900; font-style: italic;">// the image is now loaded, so let's add it to the display tree!     </span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #004993;">addChild</span><span style="color: #000000;">&#40;</span>myLoader<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<span style="color: #000000;">&#125;</span></div></td></tr></tbody></table></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2009/03/11/how-to-load-external-images-in-actionscript-30/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Actionscript 3 Webcam Configure</title>
		<link>http://blog.728media.com/2009/02/24/actionscript-3-webcam-configure/</link>
		<comments>http://blog.728media.com/2009/02/24/actionscript-3-webcam-configure/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 04:34:52 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flash player]]></category>
		<category><![CDATA[flash webcam]]></category>
		<category><![CDATA[webcam]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=200</guid>
		<description><![CDATA[
Setting up a webcam in Flash has always been pretty simple. I feel there are two cases in flash that you would use the webcam in a project: Streaming video for video chat or using it as a tool to take a photo. These two cases have completely different purposes and thus you want your [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-217" title="webcamconfig" src="http://blog.728media.com/wp-content/uploads/2009/02/webcamconfig.jpg" alt="webcamconfig" width="650" height="280" /></p>
<p>Setting up a webcam in Flash has always been pretty simple. I feel there are two cases in flash that you would use the webcam in a project: Streaming video for video chat or using it as a tool to take a photo. These two cases have completely different purposes and thus you want your camera setup properly for each.</p>
<p><span id="more-200"></span></p>
<p><strong>Setup Your Camera</strong><br />
<span style="font-weight: normal;">First, let&#8217;s setup your camera and a video instance for playback. This code will setup a default camera and default video instance. Both will be setup for 320&#215;240 playback.</span></p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> camera<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a> = <a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">getCamera</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> video<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> <br />
video<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">attachCamera</span><span style="color: #000000;">&#40;</span>camera<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<span style="color: #004993;">addChild</span><span style="color: #000000;">&#40;</span>video<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></div></td></tr></tbody></table></div>
<p> </p>
<p><strong>Setup Camera for Streaming Video Chat<br />
</strong>Setting up your camera for streaming video chat involves a little more work and planning than just using it to take a photo within the player. Streaming video will require you to sacrifice video quality for speed, especially if you need to sync the video with audio. There are two methods of the Camera class that we will use to balance video quality and frame rate with bandwidth: <a href="http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/media/Camera.html#setQuality()">Camera.setQuality()</a> and <a href="http://help.adobe.com/en_US/AS3LCR/Flash_10.0/flash/media/Camera.html#setMode()">Camera.setMode()</a>. setQuality() is used to specify bandwidth and overall image quality of the Camera&#8217;s output video.  Adobe&#8217;s Help Documentation has this to say:</p>
<blockquote>
<ul>
<li>To indicate that bandwidth use takes precedence, pass a value for bandwidth and 0 for quality . Flash Player transmits video at the highest quality possible within the specified bandwidth. If necessary, Flash Player reduces picture quality to avoid exceeding the specified bandwidth. In general, as motion increases, quality decreases.</li>
<li>To indicate that quality takes precedence, pass 0 for bandwidth and a numeric value for quality . Flash Player uses as much bandwidth as required to maintain the specified quality. If necessary, Flash Player reduces the frame rate to maintain picture quality. In general, as motion increases, bandwidth use also increases.</li>
<li>To specify that both bandwidth and quality are equally important, pass numeric values for both parameters. Flash Player transmits video that achieves the specified quality and that doesn&#8217;t exceed the specified bandwidth. If necessary, Flash Player reduces the frame rate to maintain picture quality without exceeding the specified bandwidth.</li>
</ul>
</blockquote>
<p>Lets setup our code to have medium compressed quality and a frame rate of 15.</p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">bandwidth</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a> = <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// Specifies the maximum amount of bandwidth that the current outgoing video feed can use, in bytes per second. To specify that Flash Player video can use as much bandwidth as needed to maintain the value of quality , pass 0 for bandwidth . The default value is 16384.</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">quality</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a> = <span style="color: #000000; font-weight:bold;">50</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// this value is 0-100 with 1 being the lowest quality. Pass 0 if you want the quality to vary to keep better framerates</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> camera<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a> = <a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">getCamera</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
camera<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">setQuality</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">bandwidth</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">quality</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
camera<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">setMode</span><span style="color: #000000;">&#40;</span>320<span style="color: #000066; font-weight: bold;">,</span>240<span style="color: #000066; font-weight: bold;">,</span>15<span style="color: #000066; font-weight: bold;">,</span><span style="color: #0033ff; font-weight: bold;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// setMode(videoWidth, videoHeight, video fps, favor area)</span><br />
<br />
<span style="color: #009900; font-style: italic;">// Now attach the webcam stream to a video object.</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> video<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
video<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">attachCamera</span><span style="color: #000000;">&#40;</span>camera<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<span style="color: #004993;">addChild</span><span style="color: #000000;">&#40;</span>video<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></div></td></tr></tbody></table></div>
<p>Depending on your project, you can change bandwidth, quality, and frame-rate settings to find the best combination. I would suggest setting the video capture size smaller, then stretching it up. This will allow for a higher frame rate since you are sending smaller video that is stretched. The video is a littler blurry, but if you plan on having lots of movement, having a higher frame-rate will be more important.</p>
<p> </p>
<p><strong>Setup Camera to take a photo<br />
</strong>This type of configuration isn&#8217;t a whole lot different the the code example above. The main difference is that we aren&#8217;t passing constant amounts of data to a streaming server each second. Instead, we just need to get the camera&#8217;s data once. So, we can up the quality and frame rate to our hearts content (granted the user&#8217;s hardware allows for the settings).</p>
<p>Here is the above example, but with maxed out configuration for high photo quality.</p>
<p> </p>
<div class="codecolorer-container actionscript3 vibrant" style="overflow:auto;white-space:nowrap;border: 1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td><div class="actionscript3 codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">bandwidth</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a> = <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// Specifies the maximum amount of bandwidth that the current outgoing video feed can use, in bytes per second. To specify that Flash Player video can use as much bandwidth as needed to maintain the value of quality , pass 0 for bandwidth . The default value is 16384.</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">quality</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a> = <span style="color: #000000; font-weight:bold;">100</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// this value is 0-100 with 1 being the lowest quality. Pass 0 if you want the quality to vary to keep better framerates</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> camera<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a> = <a href="http://www.google.com/search?q=camera%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:camera.html"><span style="color: #004993;">Camera</span></a><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">getCamera</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
camera<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">setQuality</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">bandwidth</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">quality</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
camera<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">setMode</span><span style="color: #000000;">&#40;</span>320<span style="color: #000066; font-weight: bold;">,</span>240<span style="color: #000066; font-weight: bold;">,</span>30<span style="color: #000066; font-weight: bold;">,</span><span style="color: #0033ff; font-weight: bold;">false</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> <span style="color: #009900; font-style: italic;">// setMode(videoWidth, videoHeight, video fps, favor area)</span><br />
<span style="color: #6699cc; font-weight: bold;">var</span> video<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a> = <span style="color: #0033ff; font-weight: bold;">new</span> <a href="http://www.google.com/search?q=video%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:video.html"><span style="color: #004993;">Video</span></a><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
video<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">attachCamera</span><span style="color: #000000;">&#40;</span>camera<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span><br />
<span style="color: #004993;">addChild</span><span style="color: #000000;">&#40;</span>video<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></div></td></tr></tbody></table></div>
<p>Feel free to comment with any questions. Check out <a href="http://blog.728media.com/2008/11/13/flash-media-server-quirks-and-tips/">my other post</a> for more AS3 Camera quirks and tips.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2009/02/24/actionscript-3-webcam-configure/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Tweensy Goes Public!</title>
		<link>http://blog.728media.com/2009/01/06/tweensy-goes-public/</link>
		<comments>http://blog.728media.com/2009/01/06/tweensy-goes-public/#comments</comments>
		<pubDate>Tue, 06 Jan 2009 07:04:14 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[lost in actionscript]]></category>
		<category><![CDATA[shane mccartney]]></category>
		<category><![CDATA[tweener]]></category>
		<category><![CDATA[tweening library]]></category>
		<category><![CDATA[tweensy]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=184</guid>
		<description><![CDATA[Tweensy Goes Public! Read on to find out what you have been missing and so rightfully deserve.]]></description>
			<content:encoded><![CDATA[<p> </p>
<p><img class="alignnone size-full wp-image-188" title="tweensy_love" src="http://blog.728media.com/wp-content/uploads/2009/01/tweensy_love.jpg" alt="tweensy_love" width="350" height="222" /></p>
<p>As you may have read in my <a href="http://blog.728media.com/2008/12/23/tweensy-adds-much-needed-effects-support/">last post</a>, I was lucky enough to get my hands on a beta version of &#8220;<a href="http://www.lostinactionscript.com/blog/index.php/2009/01/05/tweensy-goes-public/">Tweensy</a>&#8220;. Tweensy is an actionscript 3 tweening library from Shane over at <a href="http://www.lostinactionscript.com">Lost In Actionscript</a>. Within the short time that I have been able to use the library I have been amazed at the speed and simplicity of it&#8217;s use. As of today, Tweensy has officially gone public!</p>
<p>There are two main libraries available plus an FX expansion package: <em>Tweensy Original</em> and <em>Tweensy Zero.</em> In Shane&#8217;s <a href="http://www.lostinactionscript.com/blog/index.php/2009/01/05/tweensy-goes-public/">latest post</a> he describes why Tweensy is better than any other as3 tweening engine. To sum it up, he uses Object Pooling and utilizes DoubleLinked lists rather than a Dictionary or Array. I could try and go into more detail, but Shane does a better job at explaining.</p>
<p>Ease of use is the main seller for me. Yes performance is great to have when you are working on high profile, bleeding edge projects. However I am often working on more basic projects that need to be completed on a tight deadline. Currently I use Tweener. It is so simple to setup and use. There are a couple of extra steps that you will need to take with Tweensy to accomplish the same ol&#8217; tween as Tweener. <em>Tweensy Zero</em> should make it more worth my while though on the smaller projects. The entire library is compressed down to 2.9kb! I&#8217;m not sure to what extend this version is limited, but it will be great to help spiffy up some boring banners!</p>
<p>Of course what I&#8217;m most excited about is the effects package that Shane has created that pairs with Tweensy well. It currently is somewhat limited to creating emitters and glowing blurry objects (as you can tell in <a href="http://blog.728media.com/2008/12/23/tweensy-adds-much-needed-effects-support/">my first demo</a> and many of <a href="http://www.lostinactionscript.com/blog/index.php/2008/08/31/as3-tween-engine-tweensy-preview/">Shane&#8217;s</a>), but he has also used it to create a cool <a href="http://www.flashdynamix.com/examples/Tweensy/0.2/bumpMapFX.html">BumpMap</a> and <a href="http://www.flashdynamix.com/examples/Tweensy/0.2/bulgeFX.html">Bulge</a> demos. Also, Shane claims it&#8217;s easy to create better tweens that <a href="http://code.google.com/p/tweensy/wiki/MotionGuides">animate on complicated motion guides</a> with Tweensy.</p>
<p>Now I&#8217;m off to download the <a href="http://code.google.com/p/tweensy/">latest source from Google Code</a>! Be sure to snag your copy and post your demos!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2009/01/06/tweensy-goes-public/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tweensy adds much needed effects support</title>
		<link>http://blog.728media.com/2008/12/23/tweensy-adds-much-needed-effects-support/</link>
		<comments>http://blog.728media.com/2008/12/23/tweensy-adds-much-needed-effects-support/#comments</comments>
		<pubDate>Tue, 23 Dec 2008 16:38:12 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Labs]]></category>
		<category><![CDATA[tweening]]></category>
		<category><![CDATA[tweensy]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=181</guid>
		<description><![CDATA[
I was lucky enough to recently acquire a beta version of the Tweensy library from Shane McCartney over at Lost In Actionscript. I&#8217;ve taken my first crack at using the engine and I have to say I&#8217;m very excited to see what is still in store for this promising library. Currently I use Tweener for [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-182" title="tweensyaudio" src="http://blog.728media.com/wp-content/uploads/2008/12/tweensyaudio.jpg" alt="tweensyaudio" width="637" height="281" /></p>
<p>I was lucky enough to recently acquire a beta version of the <a href="http://www.lostinactionscript.com/blog/index.php/2008/08/31/as3-tween-engine-tweensy-preview/">Tweensy </a>library from<a href="http://www.lostinactionscript.com/"> Shane McCartney</a> over at Lost In Actionscript. I&#8217;ve taken my first crack at using the engine and I have to say I&#8217;m very excited to see what is still in store for this promising library. Currently I use <a href="http://code.google.com/p/tweener/">Tweener </a>for all my projects. It is quick, painless and very simple to use. It doesn&#8217;t support filters and uses mainly static methods. Tweensy on the other hand has support for many different types of effects that all developers yearn for (BitmapLayer is my favorite). Tweensy is broken down in easier to manage pieces that help keep the file size down. Be sure to check back often for more demos as I expand my knowledge of this great new piece of work. Oh, and I almost forgot to mention&#8230;Tweensy has support to &#8220;yo yo&#8221; a tween!</p>
<p><a href="http://labs.728media.com/tweensy/audio">View The Demo</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/12/23/tweensy-adds-much-needed-effects-support/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Drop.io AS3 Library Update</title>
		<link>http://blog.728media.com/2008/12/15/dropio-as3-library-update/</link>
		<comments>http://blog.728media.com/2008/12/15/dropio-as3-library-update/#comments</comments>
		<pubDate>Tue, 16 Dec 2008 01:46:31 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Labs]]></category>
		<category><![CDATA[as3 lib]]></category>
		<category><![CDATA[drop.io]]></category>
		<category><![CDATA[library]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=179</guid>
		<description><![CDATA[UPDATE: I have posted what there is for files on Google Code. The code currently is considered as-is with no support.
So as I mentioned in this post, I have been working on an AS3 library for interfacing with the new Drop.io API. Since my announcement, I&#8217;ve been getting some great support from both developers and [...]]]></description>
			<content:encoded><![CDATA[<p><strong>UPDATE: <a href="http://code.google.com/p/dropio-as3-library/">I have posted what there is for files on Google Code</a>. The code currently is considered as-is with no support.</strong></p>
<p>So as I mentioned in <a href="http://blog.728media.com/2008/12/01/dropio-as3-library/">this post</a>, I have been working on an AS3 library for interfacing with the new <a href="http://api.drop.io">Drop.io API</a>. Since my announcement, I&#8217;ve been getting some great support from both developers and the <a href="http://drop.io">Drop.io</a> team. It has been a while and I wanted to let you know I&#8217;m still working on the library. I&#8217;ve got some free time coming up soon, so I hope to use that time to get something ready for a beta stage.</p>
<p>Keep checking back for more updates! My goal is to have it complete by the end of the year.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/12/15/dropio-as3-library-update/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>AS3 Camera Class Quirks and Tips</title>
		<link>http://blog.728media.com/2008/11/13/flash-media-server-quirks-and-tips/</link>
		<comments>http://blog.728media.com/2008/11/13/flash-media-server-quirks-and-tips/#comments</comments>
		<pubDate>Thu, 13 Nov 2008 21:22:19 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[camera]]></category>
		<category><![CDATA[flash media server]]></category>
		<category><![CDATA[fms]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/11/13/flash-media-server-quirks-and-tips/</guid>
		<description><![CDATA[Shane from Lost In Actionscript has a great writeup on some tips and tricks for working with the Camera class in AS3. One that I never thought about was:
Tip #2
When recording to a Flash Media Server make sure the camera has activity via the Activity Status Event before publishing the stream. Otherwise you may get [...]]]></description>
			<content:encoded><![CDATA[<p>Shane from Lost In Actionscript has a great writeup on some tips and tricks for working with the Camera class in AS3. One that I never thought about was:</p>
<blockquote><p><strong><em>Tip #2</em></strong></p>
<p><em>When recording to a Flash Media Server make sure the camera has activity via the Activity Status Event before publishing the stream. Otherwise you may get a static or black frame at the beginning of the recorded stream.</em></p></blockquote>
<p><a href="http://www.lostinactionscript.com/blog/index.php/2008/06/16/camera-class-quirks-with-fms/">Camera Class Quirks with FMS » Lost In Actionscript &#8211; Shane McCartney</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/11/13/flash-media-server-quirks-and-tips/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Papervision and Geocoding</title>
		<link>http://blog.728media.com/2008/11/04/papervision-and-geocoding/</link>
		<comments>http://blog.728media.com/2008/11/04/papervision-and-geocoding/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 22:50:22 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[geocode]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[Papervision]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=144</guid>
		<description><![CDATA[
The June 2008 edition of Adobe EDGE has a great article on geocoding. Geocoding is getting popular with the release of Yahoo Maps, Mapquest, and Google Maps APIs. Suddenly any user can apply for one of those keys and start mapping locations on their site or even using those APIs to get geo location data [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.728media.com/wp-content/uploads/2008/11/globe.jpg"><img class="alignnone size-full wp-image-145" title="globe" src="http://blog.728media.com/wp-content/uploads/2008/11/globe.jpg" alt="" width="492" height="229" /></a></p>
<p>The June 2008 edition of <a href="http://www.adobe.com/newsletters/edge/">Adobe EDGE</a> has a great article on <a href="http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fen.wikipedia.org%2Fwiki%2FGeocoding&amp;ei=wM8QSerRO6b8wwGXu5GYCw&amp;usg=AFQjCNG703HciSfy0JKZjDIvTrQYuezIZg&amp;sig2=h6O6du6mONrFBmax25rK0w">geocoding</a>. Geocoding is getting popular with the release of <a href="http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fwww.mapquest.com%2Fopenapi&amp;ei=5c8QSY6hDZrswwGqkPSrCw&amp;usg=AFQjCNF25HRpHwry_xxbXYoXxi5pHLXC8g&amp;sig2=9WJla-3FMzob6QNCiHWUnQ"></a><a href="http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fdeveloper.yahoo.com%2Fmaps%2F&amp;ei=9c8QSbGnIIqOwQHN29SuCw&amp;usg=AFQjCNH6kikID8e15DJgfyTawm0O8GxQ1w&amp;sig2=JQRKEvHt9_THsvkbcauUpQ">Yahoo Maps,</a> <a href="http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fwww.mapquest.com%2Fopenapi&amp;ei=5c8QSY6hDZrswwGqkPSrCw&amp;usg=AFQjCNF25HRpHwry_xxbXYoXxi5pHLXC8g&amp;sig2=9WJla-3FMzob6QNCiHWUnQ">Mapquest</a>, and <a href="http://www.google.com/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;url=http%3A%2F%2Fcode.google.com%2Fapis%2Fmaps%2F&amp;ei=CtAQSZbbJY2owQGwsNCmCw&amp;usg=AFQjCNFlheLSwRtcQSUWQHN0Doxq7hyI4A&amp;sig2=-1TgyOVwrDdk9hZvgRY_Dw">Google Maps</a> APIs. Suddenly any user can apply for one of those keys and start mapping locations on their site or even using those APIs to get geo location data to then use within their own mapping engine. That is where this example comes in. Adobe has written up a great article on getting started with using the Yahoo Maps API to get the longitude and latitude of a location, then converting that to 3D coordinates to place on a globe built in Papervision. The example is simple, but feels good and responsive.</p>
<p><a href="http://www.adobe.com/newsletters/edge/june2008/articles/article2/index.html?trackingid=DEKYF.">Read the article<br />
</a><a href="http://www.adobe.com/newsletters/edge/june2008/articles/article2/download/GeoGlobe.html">View the Demo</a></p>
<p><span id="more-144"></span></p>
<p>A couple more Flash Geocoding Examples and Demos</p>
<p><a href="http://next.yahoo.net/download/newsglobe">Yahoo News Globe</a><br />
<a href="http://code.google.com/p/spinnyglobe/">Spinny Globe<br />
</a><a href="http://senocular.com/flash/source.php?id=1.201">Senocular 3D Globe (Flash Player 10)<br />
</a><a href="http://freeearth.poly9.com/">FreeEarth (Javascript)</a><a href="http://senocular.com/flash/source.php?id=1.201"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/11/04/papervision-and-geocoding/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WiiFlash + Papervision = Coolness</title>
		<link>http://blog.728media.com/2008/11/04/wiiflash-papervision-coolness/</link>
		<comments>http://blog.728media.com/2008/11/04/wiiflash-papervision-coolness/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 18:31:57 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Papervision]]></category>
		<category><![CDATA[phidgets]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/11/04/wiiflash-papervision-coolness/</guid>
		<description><![CDATA[Jeff Winder has taken the WiiFlash library and an WiiMote to rotate a papervision cube using the accelerometers of the Wiimote. To top it off, he has a Phidgets Servomotor that spins also to matech the papervision cube.
seedylifestyle: WiiFlash with Papervision3D and Phidgets Servomotor.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.blogger.com/profile/04959577455062671185">Jeff Winder</a> has taken the <a href="http://code.google.com/p/wiiflash/">WiiFlash</a> library and an WiiMote to rotate a papervision cube using the accelerometers of the Wiimote. To top it off, he has a <a href="http://www.phidgets.com/">Phidgets</a> Servomotor that spins also to matech the papervision cube.</p>
<p><a href="http://seedylifestyle.blogspot.com/2008/05/wiiflash-with-papervision3d-and.html">seedylifestyle: WiiFlash with Papervision3D and Phidgets Servomotor</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/11/04/wiiflash-papervision-coolness/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tips on how to write efficient AS3 » Lost In Actionscript</title>
		<link>http://blog.728media.com/2008/10/10/tips-on-how-to-write-efficient-as3-%c2%bb-lost-in-actionscript/</link>
		<comments>http://blog.728media.com/2008/10/10/tips-on-how-to-write-efficient-as3-%c2%bb-lost-in-actionscript/#comments</comments>
		<pubDate>Fri, 10 Oct 2008 20:59:47 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/10/10/tips-on-how-to-write-efficient-as3-%c2%bb-lost-in-actionscript/</guid>
		<description><![CDATA[Most of these are new to me, great writeup!
Tips on how to write efficient AS3 » Lost In Actionscript &#8211; Shane McCartney
]]></description>
			<content:encoded><![CDATA[<p>Most of these are new to me, great writeup!</p>
<p><a href="http://www.lostinactionscript.com/blog/index.php/2008/09/28/tips-on-how-to-write-efficient-as3/">Tips on how to write efficient AS3 » Lost In Actionscript &#8211; Shane McCartney</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/10/10/tips-on-how-to-write-efficient-as3-%c2%bb-lost-in-actionscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Connecting to a Flash Media Server using RTMP</title>
		<link>http://blog.728media.com/2008/08/03/connecting-to-a-flash-media-server-using-rtmp/</link>
		<comments>http://blog.728media.com/2008/08/03/connecting-to-a-flash-media-server-using-rtmp/#comments</comments>
		<pubDate>Mon, 04 Aug 2008 04:06:49 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flash media server]]></category>
		<category><![CDATA[flash video]]></category>
		<category><![CDATA[flash video streaming]]></category>
		<category><![CDATA[NetConnection]]></category>
		<category><![CDATA[NetStream]]></category>
		<category><![CDATA[rtmp]]></category>
		<category><![CDATA[stream]]></category>
		<category><![CDATA[streaming]]></category>
		<category><![CDATA[Video]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=70</guid>
		<description><![CDATA[
RTMP is the protocol used by Adobe&#8217;s Flash Media Server to stream content into flash. Most of the help documentation doesn&#8217;t touch much on this method of connection and is limited to sources not easily available to users.

This article should be used by those with an understanding of video playback using actionscript 3. If that isn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.728media.com/wp-content/uploads/2008/08/fms.bmp"><img class="alignnone size-full wp-image-76" title="fms" src="http://blog.728media.com/wp-content/uploads/2008/08/fms.bmp" alt="" /></a></p>
<p><a href="http://en.wikipedia.org/wiki/Real_Time_Messaging_Protocol">RTMP</a> is the protocol used by <a href="http://www.adobe.com/products/flashmediaserver/">Adobe&#8217;s Flash Media Server</a> to stream content into flash. Most of the help documentation doesn&#8217;t touch much on this method of connection and is limited to sources not easily available to users.<br />
<span id="more-70"></span></p>
<p><strong>This article should be used by those with an understanding of video playback using actionscript 3. If that isn&#8217;t you, please read </strong><a href="http://theflashblog.com/?p=233"><strong>this article</strong></a><strong> before continuing.</strong></p>
<p><strong>1.)</strong> In order to use the RTMP protocol, you will need to install and run a version of Adobe Flash Media Server. Adobe has released a free <a href="http://www.adobe.com/go/tryflashmediaserver">developer version</a> the limits you to 10 connections. That will be MORE than enough to do some basic development. Please make sure you are running or have access to a Flash Media Server before continuing to the next step.</p>
<p style="padding-left: 30px;"><strong>1.) (B)</strong> If you are having trouble installing or setting up an app, please read <a href="http://www.adobe.com/devnet/flashmediaserver/articles/beginner_live_fms3.html">this article.</a></p>
<p><strong>2.)</strong> Now that you have access to a Flash Media Server, we will start with some basic code that should look familiar if you have worked with actionscript and video before. For this step, you will need to know the URI for the server. If you installed Flash Media server on the machine you are running on, you can use &#8220;localhost&#8221; for the URI. We will be using the &#8220;vod&#8221; app that comes pre-installed on the server for this example.</p>
<pre lang="ACTIONSCRIPT">var nc:NetConnection = new NetConnection();
nc.connect("rtmp://YOUR_SERVER_URI/vod/");</pre>
<p>If we were loading an flv file without streaming, you would have passed null to the connect() method instead.</p>
<p><strong>3.)</strong> The only thing left is to load the stream, instead of loading an FLV video from a URL. This is actually much easier than you think. Instead of passing a URLRequest to the NetStream.play() method, you would instead pass the name of the stream you wish to play from within your app (this is the name of the FLV file on the server, but without the .FLV extension). To playback an HD streaming file, you will need to format your stream name slightly different: &#8220;mp4:NAME_OF_STREAM.mp4&#8243;</p>
<ul>
<li><strong>Please note that you can not setup your NetStream until after the NetConnection has successfully connected. You will know this from the NetStatus event: NetConnection.Connect.Success that is dispatched.</strong></li>
</ul>
<pre lang="ACTIONSCRIPT">var ns:NetStream = new NetStream(nc);
ns.play("NAME_OF_STREAM");
// ns.play("mp4:NAME_OF_STREAM.mp4");  // this will stream an HD movie instead.</pre>
<p><strong>4.)</strong> That&#8217;s it! I hope this article has helped. Please comment below with any questions and I would be glad to help answer them.</p>
<p>For a more informative tutorial, check out <a href="http://www.peachpit.com/articles/article.aspx?p=665127&amp;seqNum=7">this one</a> from <a href="http://www.peachpit.com">Peachpit</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/08/03/connecting-to-a-flash-media-server-using-rtmp/feed/</wfw:commentRss>
		<slash:comments>42</slash:comments>
		</item>
		<item>
		<title>Actionscript 3 Layout Organizers</title>
		<link>http://blog.728media.com/2008/07/30/actionscript-3-layout-organizers/</link>
		<comments>http://blog.728media.com/2008/07/30/actionscript-3-layout-organizers/#comments</comments>
		<pubDate>Wed, 30 Jul 2008 15:06:36 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[layout]]></category>
		<category><![CDATA[layout manager]]></category>
		<category><![CDATA[SOME RANDOM DUDE]]></category>
		<category><![CDATA[source code]]></category>

		<guid isPermaLink="false">http://blog.728media.com/?p=65</guid>
		<description><![CDATA[Great layout manager, super simple and easy to setup. Give it a go and let me know what you think.
Actionscript 3 Layout Organizers Examples and Source Code &#124; SOME RANDOM DUDE.
]]></description>
			<content:encoded><![CDATA[<p>Great layout manager, super simple and easy to setup. Give it a go and let me know what you think.</p>
<p><a href="http://www.somerandomdude.net/blog/flash/actionscript-3-layout-organizers-source-code">Actionscript 3 Layout Organizers Examples and Source Code | SOME RANDOM DUDE</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/07/30/actionscript-3-layout-organizers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash Media Server Bandwidth Checking</title>
		<link>http://blog.728media.com/2008/07/16/flash-media-server-bandwidth-checking/</link>
		<comments>http://blog.728media.com/2008/07/16/flash-media-server-bandwidth-checking/#comments</comments>
		<pubDate>Wed, 16 Jul 2008 16:35:20 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[bandwidth]]></category>
		<category><![CDATA[bandwidth checking]]></category>
		<category><![CDATA[flash media server]]></category>
		<category><![CDATA[fms]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/07/16/flash-media-server-bandwidth-checking/</guid>
		<description><![CDATA[Recently I found out that Flash Media Server has it&#8217;s own built-in bandwidth checker. A bandwidth check comes in handy when you want to stream a different quality of video to the user depending on their connection speed instead of forcing them to download a higher quality than they can handle.
I could write up an [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I found out that <a href="http://www.adobe.com/products/flashmediaserver/">Flash Media Server</a> has it&#8217;s own built-in bandwidth checker. A bandwidth check comes in handy when you want to stream a different quality of video to the user depending on their connection speed instead of forcing them to download a higher quality than they can handle.</p>
<p>I could write up an example for how to use this new functionality, but it would turn out just like the <a href="http://livedocs.adobe.com/flashmediaserver/3.0/hpdocs/help.html?content=Book_Part_31_deving_1.html">one Adobe wrote up</a> in the <a href="http://livedocs.adobe.com/flashmediaserver/3.0/hpdocs/help.html?content=Book_Part_31_deving_1.html">FMS</a> documentation.</p>
<p><a href="http://livedocs.adobe.com/flashmediaserver/3.0/hpdocs/help.html?content=Book_Part_31_deving_1.html">Flash Media Server Bandwidth Checking</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/07/16/flash-media-server-bandwidth-checking/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Streaming Server Bandwidth Calculations</title>
		<link>http://blog.728media.com/2008/07/08/streaming-server-bandwidth-calculations/</link>
		<comments>http://blog.728media.com/2008/07/08/streaming-server-bandwidth-calculations/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 15:20:55 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[bandwidth]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flash media server]]></category>
		<category><![CDATA[fms]]></category>
		<category><![CDATA[stream]]></category>
		<category><![CDATA[streaming]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/07/08/streaming-server-bandwidth-calculations/</guid>
		<description><![CDATA[
A very important part of streaming any type of media is the bandwidth. You want to stream the best quality possible, but keep the stream constant. This can be a very tricky thing since all your users will most likely not be at the same connection speeds. Adobe has a great article on the math [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-60" href="http://blog.728media.com/?attachment_id=60"><img class="alignnone size-full wp-image-60" title="bandwidth.gif" src="http://blog.728media.com/wp-content/uploads/2008/07/bandwidth.gif" alt="" width="376" height="308" /></a></p>
<p>A very important part of streaming any type of media is the <a href="http://www.google.com/search?q=define%3A+bandwidth&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=org.mozilla:en-US:official&amp;client=firefox-a">bandwidth</a>. You want to stream the best quality possible, but keep the stream constant. This can be a very tricky thing since all your users will most likely not be at the same connection speeds. <a href="http://www.adobe.com/">Adobe</a> has a <a href="http://www.adobe.com/devnet/flashmediaserver/articles/calculating_bandwidth_02.html">great article</a> on the math behind calculating different kinds of bandwidth for one-to-many (video on demand) setups and many-to-many (video conference) setups.</p>
<p>[ via <a href="http://www.adobe.com/devnet/flashmediaserver/">Adobe FMS Dev Center</a> ]</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/07/08/streaming-server-bandwidth-calculations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fix Flash SWF Caching</title>
		<link>http://blog.728media.com/2008/06/30/fix-flash-swf-caching/</link>
		<comments>http://blog.728media.com/2008/06/30/fix-flash-swf-caching/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 15:26:36 +0000</pubDate>
		<dc:creator>Andrew Christensen</dc:creator>
				<category><![CDATA[AS3]]></category>
		<category><![CDATA[caching]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[flash caching]]></category>
		<category><![CDATA[ie bug]]></category>
		<category><![CDATA[ie caching]]></category>
		<category><![CDATA[ie flash caching]]></category>
		<category><![CDATA[swf]]></category>

		<guid isPermaLink="false">http://blog.728media.com/2008/06/30/fix-flash-swf-caching/</guid>
		<description><![CDATA[Anyone who has worked with a client knows that when the project launches, the work is never over. Often after launch you are prompted with a list of changes the client requests. In another case, you may have missed a large bug that hinders the user&#8217;s experience. In either case, you are left with a [...]]]></description>
			<content:encoded><![CDATA[<p>Anyone who has worked with a client knows that when the project launches, the work is never over. Often after launch you are prompted with a list of changes the client requests. In another case, you may have missed a large bug that hinders the user&#8217;s experience. In either case, you are left with a common problem when you are ready to push your new changes live: Flash Caching. By default a user&#8217;s browser will cache your swf files, rendering the user unable to see the new changes you just pushed. It is almost always a guarantee that that &#8220;user&#8221; is in fact your client on the other end of the phone telling you in a heated tone &#8220;NO, I still do not see the changes&#8221;. I have found the common tactic of tacking on random URL parameters to the swf&#8217;s location doesn&#8217;t always work for those in IE. It seems the browser often ignores the extra parameters when decided to load the new swf file or pull it from cache.</p>
<p>To fix this problem once and for all, I have been using a similar method. Instead of tacking on parameters to the URL, I include version numbers in the actual file name. This will ensure the browser will reload the new file. I embed my &#8220;shell_v1.swf&#8221; in the HTML and pass it a variable called &#8220;app_location&#8221; with a value of &#8220;myApp_v1.swf&#8221;. &#8220;app_location&#8221; is the URL path to to my actual app swf. The shell then loads the app and displays it. The app swf should also be labeled by version to ensure it will be reloaded with new versions. This should be easy for users programming in AS3, since you will most likely have your preloader in a separate swf.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.728media.com/2008/06/30/fix-flash-swf-caching/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
