<?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>Feasible Impossibilities &#187; Robert M. Hall, II</title>
	<atom:link href="http://www.impossibilities.com/v4/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.impossibilities.com/v4</link>
	<description>Robert M. Hall, II - Interactive Software Developer, Adobe Flash Platform Specialist, Adobe Community Expert, Adobe Solution Partner and Adobe User Group Manager</description>
	<lastBuildDate>Mon, 12 Apr 2010 19:47:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Adobe Flash Professional CS5 &#8211; It&#8217;s Solid</title>
		<link>http://www.impossibilities.com/v4/2010/04/12/adobe-flash-professional-cs5-its-solid/</link>
		<comments>http://www.impossibilities.com/v4/2010/04/12/adobe-flash-professional-cs5-its-solid/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 19:47:42 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=652</guid>
		<description><![CDATA[The entire Adobe Creative Suite 5 family of applications was officially announced today. I am proud to say that I did my part to make sure that Flash Professional CS5 is a solid release. Congratulations to all the teams at Adobe, especially the Flash IDE, Flash Player, Flex Framework and Flash Builder teams. I can&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>The entire Adobe Creative Suite 5 family of applications was <a href="http://cs5launch.adobe.com/">officially announced today</a>. I am proud to say that <a href="http://www.impossibilities.com/v4/wp-content/uploads/FlashProCS5_about_rhall1.jpg" rel="shadowbox">I did my part to make sure that Flash Professional CS5 is a solid release</a>. Congratulations to all the teams at Adobe, especially the Flash IDE, Flash Player, Flex Framework and Flash Builder teams. I can&#8217;t wait for everyone out there to get a chance to start using Flash Professional CS5 and Flash Player 10.1.<br />
<br/><br/><a href="http://www.impossibilities.com/v4/wp-content/uploads/FlashProCS5_about_rhall1.jpg" rel="shadowbox"><img src="http://www.impossibilities.com/v4/wp-content/uploads/FlashProCS5_about_rhall1-300x269.jpg" alt="FlashProCS5 about rhall1 300x269 Adobe Flash Professional CS5   Its Solid" title="FlashProCS5_about_rhall" width="300" height="269" class="alignleft size-medium wp-image-655" /></a></p>
<p><a href="http://www.impossibilities.com/v4/wp-content/uploads/cs5_boxshots.jpg" rel="shadowbox"><img src="http://www.impossibilities.com/v4/wp-content/uploads//cs5_boxshots-300x188.jpg" alt="cs5 boxshots 300x188 Adobe Flash Professional CS5   Its Solid" title="cs5_boxshots" width="300" height="188" class="alignleft size-medium wp-image-681" /></a></p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=652">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=652)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2010/04/12/adobe-flash-professional-cs5-its-solid/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Help Improve Flash 10.1 and AIR 2.0 &#8211; Get Involved</title>
		<link>http://www.impossibilities.com/v4/2010/02/08/help-improve-flash-10-1-and-air-2-0-get-involved/</link>
		<comments>http://www.impossibilities.com/v4/2010/02/08/help-improve-flash-10-1-and-air-2-0-get-involved/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 16:33:58 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=643</guid>
		<description><![CDATA[A quick preface to this entries core message about getting involved to help improve the quality of the next releases of the Adobe Flash Player 10.1 and AIR 2.0:
Adobe&#8217;s Flash Player has been getting a lot of press lately. Mainly in regards to HTML5, the Apple iPad (and its closed garden), performance on the Mac [...]]]></description>
			<content:encoded><![CDATA[<p>A quick preface to this entries core message about getting involved to help improve the quality of the next releases of the Adobe Flash Player 10.1 and AIR 2.0:</p>
<p>Adobe&#8217;s Flash Player has been getting a lot of press lately. Mainly in regards to HTML5, the Apple iPad (and its closed garden), performance on the Mac OS X platform, the changing face of mobile and other related discussions. The crux being Flash&#8217;s relevance and importance now and in the future. Posts and comments around the web have covered the entire spectrum, with everything from loquacious pontificating, to lugubriously laconic, to outrageously uninformed. They have all been quite polarizing in one direction or another. The biggest take away for me after absorbing everything for a week or two, has been the fact that the right people are listening and hear us and are also speaking up or acting. There have been several posts that I felt were especially well said and or align well with my own personal thoughts, so I wanted to highlight a few of them:</p>
<ul>
<li>Kevin Lynch, Adobe CTO: <em><a href="http://blogs.adobe.com/conversations/2010/02/open_access_to_content_and_app.html ">Open Access to Content and Applications</a></em></li>
<li><a href="http://blogs.adobe.com/conversations/2010/02/open_access_to_content_and_app.html#comment-2137153 ">Follow up comments from Kevin</a> on that posting.</li>
<li>John Nack, Adobe Photoshop Product Manager: <a href="http://blogs.adobe.com/jnack/2010/01/sympathy_for_the_devil.html">Sympathy for the Devil</a> and <a href="http://blogs.adobe.com/jnack/2010/02/adobe_isnt_in_the_flash_business.html">Adobe Isn&#8217;t in the Flash Business</a></li>
<li><a href="http://blogs.adobe.com/jnack/2010/02/adobe_isnt_in_the_flash_business.html"></a>Grant Skinner: <em><a href="http://www.gskinner.com/blog/archives/2010/02/my_thoughts_on.html">My Thoughts on the Future of Flash</a></em></li>
<li><em><a href="http://www.gskinner.com/blog/archives/2010/02/my_thoughts_on.html"></a><span style="font-style: normal;">Jeremy Allaire, CEO of Brightcove: <em><a href="http://techcrunch.com/2010/02/05/the-future-of-web-content-html5-flash-mobile-apps/">The Future of Web Content &#8211; HTML5, Flash and Mobile Apps</a></em></span></em></li>
<li><em><span style="font-style: normal;"><em><a href="http://techcrunch.com/2010/02/05/the-future-of-web-content-html5-flash-mobile-apps/"></a><span style="font-style: normal;">Mike Chambers, Principal Developer Relations Adobe: </span>S<a href="http://www.mikechambers.com/blog/2010/01/28/some-personal-thoughts-on-apple-and-the-trend-towards-closed-platforms/">ome personal thoughts on Apple and the trend towards closed platforms</a><span style="font-style: normal;"> <a style="text-decoration: none;" href="http://techcrunch.com/2010/02/05/the-future-of-web-content-html5-flash-mobile-apps/"> </a></span></em></span></em></li>
</ul>
<p>There are quite a number of other great posts around, and even more that I felt were just way off base or totally wrong &#8211; but for me again the biggest take away is that people are listening and acknowledging things that can be improved and putting their money where their mouth is and committing to certain actions and more transparency. Kevin&#8217;s promise to have the Flash Player teams publish some performance metrics for the various platforms, the transparency and insight that <a href="http://blogs.adobe.com/emmy/archives/2010/02/flash_bug_repor.html">Emmy Huang Flash Player Product Manager blogged about</a> and some plans to improve bug reporting process&#8217;s around the Flash Player &#8211; these are really great things that exemplify the level of commitment and care that Adobe places on its products and the community of developers and designers that use them.</p>
<p>So how can you get involved to improve things and shape the future and stability of Flash Player 10.1 and AIR 2.0? Get involved and install the latest betas and test them!</p>
<p>Download and install <a href="http://labs.adobe.com/technologies/flashplayer10/">Flash Player 10.1 Beta 2</a> and <a href="http://labs.adobe.com/technologies/air2/">AIR 2.0 Beta 2</a></p>
<p>Then test against your existing content and applications, surf the web and check out existing content and most important of all: Report any bugs or problems you find at <a href="http://bugs.adobe.com/">http://bugs.adobe.com/</a> &#8211; This is the critical step as engineering teams use bug reports to reproduce errors, and improve the overall quality and stability of the releases. You can also browse through existing bugs and ECR&#8217;s (requests for enhancements/new features) and vote for ones you determine to be important.</p>
<p>Flash Player 10.1 and AIR 2.0 are both at public beta 2 and available through <a href="http://labs.adobe.com/ ">http://labs.adobe.com/ </a>with beta 3 releases a few weeks away and final candidates expected within 60 days. Now is the time to get involved and test and report any issues bugs you find.</p>
<p>There are public discussion forums you may also leverage: <a href="http://forums.adobe.com/community/labs/flashplayer10/">Flash Player 10.1</a> and <a href="http://forums.adobe.com/community/labs/air2">Adobe AIR 2.0</a></p>
<p><a href="http://onflex.org/">Ted Patrick</a> has a great post summarizing this effort, and another way you can help is to spread the word by tweeting directly about this: Improve Flash 10.1 &amp; AIR 2.0 via Beta 2 http://bit.ly/cty7Nm READ &amp; RT #Flash #AIR #QUALITY</p>
<p>Finally, its also worth noting that you can sign up to be considered for Adobe&#8217;s Prerelease teams to get further involved in beta testing their products via this link: <a href="http://labs.adobe.com/wiki/index.php/Prerelease">http://labs.adobe.com/wiki/index.php/Prerelease</a></p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=643">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=643)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2010/02/08/help-improve-flash-10-1-and-air-2-0-get-involved/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Publish Flash ActionScript 3 Apps to the Apple iPhone!</title>
		<link>http://www.impossibilities.com/v4/2009/10/05/publish_your_flash_actionscript_3_apps_to_the_apple_iphone/</link>
		<comments>http://www.impossibilities.com/v4/2009/10/05/publish_your_flash_actionscript_3_apps_to_the_apple_iphone/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 18:54:32 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=626</guid>
		<description><![CDATA[Awesome news just in via the Adobe MAX Keynote today:

Applications for iPhone via Flash CS5 Professional:
http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/
Developing for the Apple iPhone using Flash:
http://www.adobe.com/devnet/logged_in/abansod_iphone.html
Public Beta of Flash CS5 Professional coming this year:
http://labs.adobe.com/technologies/flashcs5/

Great article on what exactly this means and some more details by Mike Chambers here: http://www.mikechambers.com/blog/2009/10/05/building-applications-for-the-iphone-with-flash/
You can learn more about this announcement in the FAQ below [...]]]></description>
			<content:encoded><![CDATA[<p>Awesome news just in via the <a href="http://max.adobe.com/">Adobe MAX Keynote</a> today:</p>
<ul>
<li>Applications for iPhone via Flash CS5 Professional:<br />
<a href="http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/">http://labs.adobe.com/technologies/flashcs5/appsfor_iphone/</a></li>
<li>Developing for the Apple iPhone using Flash:<br />
<a href="http://www.adobe.com/devnet/logged_in/abansod_iphone.html">http://www.adobe.com/devnet/logged_in/abansod_iphone.html</a></li>
<li>Public Beta of Flash CS5 Professional coming this year:<br />
<a href="http://labs.adobe.com/technologies/flashcs5/">http://labs.adobe.com/technologies/flashcs5/</a></li>
</ul>
<p>Great article on what exactly this means and some more details by Mike Chambers here: <a href="http://www.mikechambers.com/blog/2009/10/05/building-applications-for-the-iphone-with-flash/">http://www.mikechambers.com/blog/2009/10/05/building-applications-for-the-iphone-with-flash/</a></p>
<p>You can learn more about this announcement in the FAQ below as well as in the following places</p>
<ul>
<li>Adobe News Room (<a href="http://www.adobe.com/aboutadobe/pressroom">http://www.adobe.com/aboutadobe/pressroom</a>/)</li>
<li>Information about apps for iPhone on Adobe Labs (<a href="http://www.adobe.com/go/iphone">http://www.adobe.com/go/iphone</a>)</li>
<li>Information about Flash Professional CS5 on Adobe Labs (<a href="http://www.adobe.com/go/flashprobeta">http://www.adobe.com/go/flashprobeta</a>)</li>
</ul>
<p><strong>More about Flash Professional CS5</strong></p>
<p><em>What did Adobe announce at MAX regarding Flash Professional?</em><br />
Adobe previewed an early version of the next major version of Flash, Adobe Flash Professional CS5. Adobe also announced that a public beta of Flash Professional CS5 will be available for download from Adobe Labs later this year.  That beta will include support for the ability to compile ActionScript 3® projects in Adobe Flash Professional to run as applications for iPhone.  Interested designers and developers can go to Adobe Labs to sign up and to be notified when the beta is available.</p>
<p><em>What are the new features of Flash Professional CS5?</em><br />
There are many new and exciting features in Flash Professional CS5.  These include<br />
•	New text capabilities via the Text Layout Framework (TLF). Get unprecedented control and creativity with text in Flash projects.  Advanced styling and layout, including right to left text, columns, threaded text blocks let you work with text in Flash like never before.<br />
•	XML based FLA files let you manage and modify project assets using source control systems, and enable teams to easily collaborate on files.<br />
•	Code Snippets panel provides pre-built code that can be injected into projects for greater interactivity and also reduces the ActionScript 3 learning curve. The panel includes code for timeline navigation (ie: click to go to the next scene) actions (ie: drag and drop), animation (ie: move with keyboard arrows), audio and video, event handlers (ie: mouse events) and loading and unloading of assets.<br />
•	Flash Builder integration.  Use Flash Builder to write ActionScript code within Flash projects.<br />
•	Improved ActionScript editor, including custom class code-hinting and completion</p>
<p><em>When will the Flash Professional CS5 beta be available for download?</em><br />
The beta will be available for download from Adobe Labs before the end of 2009.</p>
<p><em>How much will Flash Professional CS5 or Creative Suite cost?</em><br />
We are not announcing any pricing at this time.</p>
<p><em>Where can customers go to be notified when the beta is available?</em><br />
You can sign up to be notified: https://www.adobe.com/cfusion/mmform/index.cfm?name=fpcs5_notify</p>
<p><strong>More information about applications for iPhone</strong></p>
<p><em>Q: When will Adobe Flash Platform tooling support building applications for iPhone?</em><br />
A public beta of Flash Professional CS5 including support for building applications for iPhone is planned for later this year.  Sign up to be notified when the beta is available.: https://www.adobe.com/cfusion/mmform/index.cfm?name=fpcs5_notify</p>
<p><em>Q: How does the Flash Platform tooling update help developers?</em><br />
The tooling update allows developers to use Flash technologies to develop content for iPhone and iPod touch, devices that were previously closed to them. Developers can write new code or reuse existing web content to build applications for iPhone. Because the source code and assets are reusable across the Flash Platform runtimes,—Adobe AIR and Flash Player—it also gives developers a way to more easily target other mobile and desktop environments.</p>
<p><em>Q: How is this different from Adobe Flash Player 10 coming to iPhone?  Will iPhone users be able to view web content built with Flash technology in the iPhone browser?</em><br />
The new support for iPhone applications in the Flash Platform tooling will not allow iPhone users to browse web content built with Flash technology on iPhone, but it may allow developers to repackage existing web content as applications for iPhone if they choose to do so.</p>
<p>Flash Player uses a just-in-time compiler and virtual machine within a browser plug-in to play back content on websites. Those technologies are not allowed on the iPhone at this time, so a Flash Player for iPhone is not being made available today.</p>
<p>Flash Professional CS5 will enable developers to build applications for iPhone that are installed as native applications. Users will be able to access the apps after downloading them from Apple’s App Store and installing them on iPhone or iPod touch.</p>
<p><em>Q: Can applications for iPhone built with Flash Platform tooling be delivered through Apple’s App Store?</em><br />
Yes. Developers can deliver applications built with Flash Platform tooling just like any other iPhone application. This will require the developer to be a member of the iPhone Developer Program and follow the program guidelines.</p>
<p><em>Q: Do developers need to participate in Apple’s iPhone Developer Program in order to develop or deploy applications for iPhone using the Flash Platform tools?</em><br />
Yes. A developer certificate from Apple is required in order to test and deploy applications to iPhone. Apple provides information on its developer programs at http://developer.apple.com/iphone/.</p>
<p><em>Q: Are applications for iPhone built with Flash Platform tools interpreted at runtime?</em><br />
No. IPhone applications built with Flash Platform tools are compiled into standard, native iPhone executables, just like any other iPhone application.</p>
<p><em>Q: Can applications load SWF files or other code at runtime, such as a module from a website?</em><br />
No. iPhone applications built with Flash Platform tools are compiled into standard, native iPhone executable packages and there is no runtime interpreter that could be used to run ActionScript bytecode within the application.</p>
<p><em>Q: Which version of the iPhone SDK/operating system is supported by the applications?</em><br />
Applications can be built targeting iPhone OS 3.0 and later.</p>
<p><em>Q: Will applications built with Flash Platform tools work on iPod touch? iPhone 1.0? iPhone 3G? iPhone 3GS?</em><br />
Applications should work on all iPhone and iPod touch devices.  However, as the hardware specifications of the devices are widely divergent, content performance may vary between devices and device generations.</p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=626">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=626)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/10/05/publish_your_flash_actionscript_3_apps_to_the_apple_iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash Camp Philadelphia Event Site is Live!</title>
		<link>http://www.impossibilities.com/v4/2009/09/11/flash-camp-philadelphia-event-site-is-live/</link>
		<comments>http://www.impossibilities.com/v4/2009/09/11/flash-camp-philadelphia-event-site-is-live/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 20:06:00 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=623</guid>
		<description><![CDATA[
The event site for Flash Camp Philadelphia, November 7, 2009 is now live &#8211; check it out:
http://flashcamp.pfpaug.org/
Keep an eye on the site and on our twitter account: @flashcampphilly for more news and updates!
Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=623)]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.pfpaug.org/core/images/flash_camp_philly_500.jpg" border="0" style="pading:10px; background: white;" title="Flash Camp Philadelphia Event Site is Live!" alt="flash camp philly 500 Flash Camp Philadelphia Event Site is Live!" /><br />
<br/>The event site for Flash Camp Philadelphia, November 7, 2009 is now live &#8211; check it out:</p>
<p><a href="http://flashcamp.pfpaug.org/">http://flashcamp.pfpaug.org/</a></p>
<p>Keep an eye on the site and on our twitter account: <a href="http://twitter.com/flashcampphilly">@flashcampphilly</a> for more news and updates!</p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=623">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=623)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/09/11/flash-camp-philadelphia-event-site-is-live/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash Camp Philadelphia &#8211; It&#8217;s Coming: November 7th, 2009</title>
		<link>http://www.impossibilities.com/v4/2009/09/04/flash-camp-philadelphia-its-coming-november-7th-2009/</link>
		<comments>http://www.impossibilities.com/v4/2009/09/04/flash-camp-philadelphia-its-coming-november-7th-2009/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 15:12:48 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=615</guid>
		<description><![CDATA[
That&#8217;s right Flash Camp Philadelphia, November 7, 2009 &#8211; It&#8217;s coming!
More info and event site to launch next week.
Stay tuned &#8211; it&#8217;s gonna rock!
Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=615)]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.pfpaug.org/core/images/flash_camp_philly_500.jpg" border="0" style="pading:10px; background: white;" title="Flash Camp Philadelphia   Its Coming: November 7th, 2009" alt="flash camp philly 500 Flash Camp Philadelphia   Its Coming: November 7th, 2009" /><br />
<br/>That&#8217;s right Flash Camp Philadelphia, November 7, 2009 &#8211; It&#8217;s coming!</p>
<p>More info and event site to launch next week.</p>
<p>Stay tuned &#8211; it&#8217;s gonna rock!</p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=615">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=615)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/09/04/flash-camp-philadelphia-its-coming-november-7th-2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Macworld UK Awards a Client Project I Worked On Best iPhone/iPod Touch Application of the Year 2009</title>
		<link>http://www.impossibilities.com/v4/2009/06/19/macworld-uk-awards-a-client-project-i-worked-on-best-iphoneipod-touch-application-of-the-year-2009/</link>
		<comments>http://www.impossibilities.com/v4/2009/06/19/macworld-uk-awards-a-client-project-i-worked-on-best-iphoneipod-touch-application-of-the-year-2009/#comments</comments>
		<pubDate>Fri, 19 Jun 2009 20:27:11 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=577</guid>
		<description><![CDATA[It was quite a surprise, and serendipitous to say the least, that I was sitting in the middle of a local Philadelphia Cocoaheads group meeting last night when I received an unexpected email from one of my favorite clients Wolfgangs Vault. The email indicated that we had just won Macworld UK&#8217;s award for Best iPhone/iPod [...]]]></description>
			<content:encoded><![CDATA[<p><img style="padding-right: 10px; padding-bottom: 10px;" title="cvault_award" src="http://www.impossibilities.com/v4/wp-content/uploads/cvault_award.jpg" alt="cvault award Macworld UK Awards a Client Project I Worked On Best iPhone/iPod Touch Application of the Year 2009" width="288" height="231" align="left" /><a href="http://www.macworld.co.uk/awards/winners.html"><img style="padding-right: 10px; padding-bottom: 10px;" title="mac-world" src="http://www.impossibilities.com/v4/wp-content/uploads//mac-world.png" alt="mac world Macworld UK Awards a Client Project I Worked On Best iPhone/iPod Touch Application of the Year 2009" width="121" height="121" align="right" /></a>It was quite a surprise, and serendipitous to say the least, that I was sitting in the middle of a local <a href="http://phillycocoa.org/">Philadelphia Cocoaheads group meeting</a> last night when I received an unexpected email from one of my favorite clients <a href="http://www.wolfgangsvault.com/">Wolfgangs Vault</a>. The email indicated that we had just won <a href="http://www.macworld.co.uk/awards/winners.html">Macworld UK&#8217;s award for Best iPhone/iPod Touch Application of the Year 2009</a> for our application <a href="http://www.wolfgangsvault.com/sc/concert-vault-iphone-app.html">Concert Vault</a>. It was serendipitous not only because we were in the Cocoaheads meeting discussing Mac and iPhone development at the time the email came through, but the fact that the manager of the group my very talented friend <a href="http://mrox.net/">Andy Mroczkowski</a> was also the key Objective-C/Cocoa/Xcode developer on the project and did all the heavy lifting and coding, and Andy had literally just sat down after introducing the first speaker of the evening. I was delighted and a little distracted as I tried twittering and emailing Andy from the front row of the meeting where I was seated, to Andy sitting in the back. My apologies to <a href="http://www.usp.edu/academics/collegesDepts/chemistry/Faculty/Zauhar.aspx">Professor Randy Zauhar Phd</a>, who gave an  excellent presentation on <a href="http://en.wikipedia.org/wiki/OpenCL">leveraging OpenCL</a> in Objective-C/Cocoa apps to accelerate the rendering and display of molecular simulations/interaction. I finally settled down and got into his presentation, but was definitely jazzed about hearing the news since neither of us even knew the application had even been nominated, let alone won. The other applications that had been nominated in the category made it even more exciting as we were up against:</p>
<ul>
<li><a href="http://www.atebits.com/software/tweetie/" target="_blank">Tweetie</a> &#8211; Atebits</li>
<li><a href="http://www.google.com/mobile/apple/earth.html" target="_blank">Google Earth</a> &#8211; Google</li>
<li><a href="http://www.omnigroup.com/applications/OmniFocus/iphone/" target="_blank">OmniFocus</a> &#8211; OmniGroup</li>
<li><a href="http://www.truphone.com/" target="_blank">Truphone for iPhone</a> &#8211; Truphone</li>
</ul>
<p>All great applications from very cool companies and talented developers &#8211; so just finding out we had been nominated in the same category was pretty cool, but finding out we had won was totally unexpected. Thanks Macworld! I also have to give total props to all the super talented and friendly developers and staff at <a href="http://www.wolfgangsvault.com/">Wolfgangs Vault</a> &#8211; it was their vision in seeing the value of creating an iPhone app, as well as their amazing efforts and incredible content that made putting the Concert Vault app together possible. Thanks to Matt, Scott, Wade, Bill, Eric, Jeremy, and all the others who work behind the scenes at <a href="http://www.wolfgangsvault.com/">Wolfgangs Vault</a>, <a href="http://www.daytrotter.com/">Daytrotter</a> and <a href="http://www.crawdaddy.com/">Crawdaddy</a> &#8211; awesome job guys! Thanks for the opportunity!</p>
<p>We did have some good reviews of the app earlier in the year, one snippet from Rolling Stone magazine named Concert Vault one of the &#8220;Best Music Apps&#8221; which was really cool to find out. I was especially excited to hear we had won the Macworld UK award as this had been the first iPhone project that I worked on as I am primarily a Flash Platform developer. I am still teaching myself Objective C/Cocoa/Xcode, so I played a far lesser role than Andy did. I contributed some aspects of design, iconography, back end web services support, QA and a bit of project management, but securing Andy to work on the project is what I am most proud of as he is a truly talented developer and really knocked this one out the park. If you own or have seen a <a href="http://www.neatco.com/">Neat scanner with the Mac version of NeatRecipts</a> you have seen some of Andy&#8217;s other software development efforts (along with some other friends of mine at Neat) Andy is also doing a fantastic job running the local Cocoaheads group, where I have been fortunate enough to make a number of additional friends and discover that we have a large and talented group of Apple Mac/iPhone developers in the local area. I was quite aware of all the local Flash and Flex talent in and around Philadelphia thanks to the <a href="http://www.pfpaug.org/">Flash Platform User Group</a> I manage with <a href="http://www.fingersbleeding.com/">my friend J Marziani</a>, but I hadn&#8217;t really been exposed to all the other Mac native application developers in the area. Thanks to Andy and the group, I&#8217;ve found out that the following developers and their popular Mac/iPhone apps are right in our area:</p>
<ul>
<li><a href="http://mikezornek.com/">Mike Zornek</a> and his application <a href="http://clickablebliss.com/billable">Billable</a> (which I actually use for all my client invoices)</li>
<li><a href="http://labs.laan.com/blog/">Jason and Chris Laan</a> most recently responsible for the great new <a href="http://tweetdeck.com/iphone/">iPhone version of Tweetdeck</a></li>
<li><a href="http://twitter.com/mullaj">Jason Allum</a>, <a href="http://davemartorana.com/">Dave Martorana</a> and the rest of the guys at <a href="http://labs.indyhall.org/">Indy Hall labs</a> who are responsible for apps like: <a href="http://ripitapp.com/">RipIt!</a>, <a href="http://twistoridesktop.com/">Twistori</a>, <a href="http://multiplexapp.com/">MultiPlex</a></li>
<li><a href="http://industrialsomething.org/">Far McKon</a> &#8211; fellow co worker of Andy&#8217;s at Neat Receipts (lots of great guys at Neat including Vanja Buvac, <a href="http://makephilly.org/">Harris Romanoff</a> and others)</li>
<li><a href="http://louis.gerbarg.org/">Louis Gerbarg</a> who wrote the original PPC backend for the venerable <a href="http://llvm.cs.uiuc.edu/">LLVM compiler</a> and numerous other projects directly for Apple</li>
<li><a href="http://www.theflyingjalapenolives.com/">Corey Floyd</a> who along with his team at Advanced Medical Data Solutions are responsible for the iPhone app <a href="http://www.amdshealth.com/Site/Compounds.html">Compounds</a></li>
<li><a href="http://www.alertmybanjos.com/">Jason Tremblay</a>, <a href="http://chrisconley.me/">Chris Conley</a> and <a href="http://forge38.com/">Randy Schmidt</a> of <a href="http://www.isepta.org/">iSepta</a> fame</li>
<li>Of course Philadelphia can also claim <a href="http://daringfireball.net/">John Gruber of daringfireball.net</a> fame as one of our own (John when are you gonna come to a meeting?)</li>
</ul>
<p><a href="http://ripitapp.com/"></a></p>
<p>These are just folks off the top of my head that are related to Mac development in the area, there are way more talented people and companies in the tech industry covering a wide range of disciplines all over the area (I should start making another big list for a future post). I want to make sure and give a shout-out to <a href="http://www.indyhall.org/">Alex Hillman and Geoff DiMasi of Indy Hall</a> and all the folks who call Indy Hall home, as they have been very generous and supportive in allowing both the <a href="http://phillycocoa.org/">Cocoaheads group</a> and our <a href="http://www.pfpaug.org/">Flash Platform User Group</a> to meet at <a href="http://www.indyhall.org/">Indy Hall</a>, including run classes and sponsor our events &#8211; thanks guys!</p>
<p>I&#8217;d like to wrap this post up by noting that I keep seeing more and more talented Flash developers taking on and delivering some really amazing Objective-C/Cocoa applications both for the desktop and iPhone/iPod touch devices. Apple has done a really great job with the app store and not only do developers clearly see a straightforward path to monetizing their efforts but so do managers, owners, investors, etc. As much as I am enjoying learning Objective-C/Cocoa, and can see all the potential reasons why Apple wouldn&#8217;t even consider allowing a Flash player of some sort on the iPhone. I am still a Flash developer at heart, and I am really rooting for Apple and Adobe to come to an agreement and get a Flash player or some solution for allowing Flash content to be deployed to iPhones/iPod Touch devices. I just got my 32GB iPhone 3GS today and it is super snappy fast with its 600Mhz ARM-A8 processor. Considering that Adobe and others have made announcements about the <a href="http://www.openscreenproject.org/">Open Screen project</a> agreements with Intel and other hardware manufacturers <a href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200904/040109AdobeTIOMAP.html">to get Flash Player 10 working on ARM based devices</a> that utilize <a href="http://www.arm.com/products/CPUs/">ARMv6, ARMv7, and ARM11 chips</a> and the <a href="http://www.arm.com/products/CPUs/ARM_Cortex-A8.html"> Cortex-A (ARM Cortex-A8)</a> found in the iPhone 3GS  (some of those running at only 400Mhz) &#8211; and to accelerate performance through custom <a href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200906/060209AdobeandNvidia.html">ASICs and GPU chips from the likes of Nvidia</a>, as well as deliver Flash to <a href="http://www.adobe.com/aboutadobe/pressroom/pressreleases/200904/042009FlashDigitalHome.html">set top boxes and other consumer devices</a>, not to mention <a href="http://dalerankine.com/index.php/2009/06/mobile-sessions-at-adobe-max-2009/">some</a> <a href="http://twitter.com/adobeted/status/2196448890">special</a> <a href="http://www.adobe-flashlite.com/?p=913">sessions</a> at <a href="http://www.flashmobileblog.com/2009/06/16/max-sessions-for-2009-published/">Adobe MAX 2009</a> later this year. I have to believe and have faith that at this point, it is literally down to Apple and Adobe coming to some mutual agreements as opposed to any true technical hurdles. So guys, here&#8217;s to working it out, and making even more opportunities for success for all of us developers and consumers trying to raise the bar.</p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=577">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=577)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/06/19/macworld-uk-awards-a-client-project-i-worked-on-best-iphoneipod-touch-application-of-the-year-2009/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Excited for Flash On Tap in Boston</title>
		<link>http://www.impossibilities.com/v4/2009/05/20/excited-for-flash-on-tap-in-boston/</link>
		<comments>http://www.impossibilities.com/v4/2009/05/20/excited-for-flash-on-tap-in-boston/#comments</comments>
		<pubDate>Wed, 20 May 2009 21:54:30 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>
		<category><![CDATA[flash on tap]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=550</guid>
		<description><![CDATA[ Save for the exception of Adobe MAX,which I haven&#8217;t missed since 2004 and looks to be great again in 2009, I have not been hitting nearly as many conferences for a couple years now. Plenty of local events in the PA, NJ, NY area, but more often than not, I&#8217;ve chosen to stay close [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flashontap.com/"><img class="alignleft" style="padding-right: 10px; padding-bottom: 15px; border: none;" title="Flash On Tap" src="http://www.impossibilities.com/v4/wp-content/themes/master/images/badges/fot09_200x200.gif" alt="fot09 200x200 Excited for Flash On Tap in Boston" width="180" height="180" align="left" /></a> Save for the exception of <a href="https://max.adobe.com/">Adobe MAX,</a>which I haven&#8217;t missed since 2004 and looks to be great again in 2009, I have not been hitting nearly as many conferences for a couple years now. Plenty of local events in the PA, NJ, NY area, but more often than not, I&#8217;ve chosen to stay close to home and spend time with my family instead, mainly because my children will only be little once. I know others who have children the same age as mine (1 year old daughter and 3 year old son) and manage to hit all the conferences all over the world &#8211; I don&#8217;t know how you do it, but more power to you.<br/><br/><br />
Considering that I haven&#8217;t been getting out as much, I am especially excited about attending <a href="http://www.flashontap.com/">Flash On Tap</a> in Boston, MA next week. I love Boston as a city, I first went for a visit to MacWorld back in 1993, and had a blast. Every time I&#8217;ve been back since, I&#8217;ve had a great time. Flash On Tap looks like its going to be a really fun conference and the beer tasting aspect and interesting location at the <a href="http://www.bostonparkplaza.com/castle.shtml">Boston Park Plaza Castle</a> not to mention the <a href="http://www.flashontap.com/#/speakers/">great lineup of speakers </a>and friends of mine who will be attending, all add up to a great time. I don&#8217;t think its too late <a href="http://www.flashontap.com/#/tickets/">to pick up tickets</a> if you haven&#8217;t already and are maybe on the fence about going. Very excited to see how things turn out. Now I am off to get my train tickets and try to wrap up some projects (including putting together an entire backyard playground swing-set for the kids) before mid next week.<a href="http://www.bostonparkplaza.com/castle.shtml"><br />
<br/></a>If you do show up &#8211; keep an eye out for the <a href="http://www.begreenman.com/Purchase.html">GREENMAN!</a></p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=550">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=550)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/05/20/excited-for-flash-on-tap-in-boston/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Modifications to WP-Syntax for better ActionScript Code Highlighting Functionality</title>
		<link>http://www.impossibilities.com/v4/2009/03/10/modifications-to-wp-syntax-for-better-actionscript-code-highlighting-functionality/</link>
		<comments>http://www.impossibilities.com/v4/2009/03/10/modifications-to-wp-syntax-for-better-actionscript-code-highlighting-functionality/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 18:57:20 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=516</guid>
		<description><![CDATA[I finally got around to implementing a decent Syntax highlighter for code on my site. I looked at a number of different projects, and none of them had exactly all the features I wanted, so I went with WP-Syntax by Ryan McGeary available here: http://ryan.mcgeary.org/wp-syntax/ which in turn is based on GeSHi (Generic Syntax Highlighter) available [...]]]></description>
			<content:encoded><![CDATA[<p>I finally got around to implementing a decent Syntax highlighter for code on my site. I looked at a number of different projects, and none of them had exactly all the features I wanted, so I went with WP-Syntax by Ryan McGeary available here: <a href="http://ryan.mcgeary.org/wp-syntax/">http://ryan.mcgeary.org/wp-syntax/</a> which in turn is based on GeSHi (Generic Syntax Highlighter) available here: <a href="http://qbnz.com/highlighter/">http://qbnz.com/highlighter/</a></p>
<p>I liked how Ryan handled the line numbering on the left, but it was missing a nice way to quickly view the code in plain text, copy the code to your clipboard, or save it directly as a download. Several of the other solutions had features like that in the top header of the code, and I liked that, so I quickly hacked in support for that. The show in plain text icon simply leverages the built in thickbox.js built into Wordpress and some JavaScript to get that done I quickly shoehorned that in. The other two icons for copy to clipboard and download and save were done through Flash. I leveraged the System.setClipboard() function to quickly push the code onto the users clipboard, as well as externalInterface to pass back a success notification to the browser and end user. </p>
<p>For the file download and save code, I was going to use AS3 and the filereference.download feature, and javascript to parse the code out of the page, and then download it directly to the users system with a standard OS dialog &#8211; but it was late and I didn&#8217;t feel like spending the time to parse the innerHTML with JS before passing it in to Flash &#8211; so I cheated and just pass it all in as a urlencoded Flashvar, and then do a roundtrip to my server with the code as POST data, and then leverage the filereference.download feature of Flash 8 AS 2.0 to accomplish what looks like the identical behavior. I&#8217;ll probably go back and clean this up and redo it the right way with AS3 so I don&#8217;t have to make that server trip, but I&#8217;ll save that for another day. The current version is smart enough to know when ActionScript is the language and automatically set the default filename extension to .as &#8211; and it also broadcasts a little download complete to the browser via externalInterface when things are complete, so its 99% of what I wanted and also nearly 100% compatible with most users installs of Flash. The tiny nature of the size of the SWF doesn&#8217;t lend itself to even using the Express Install feature of Flash 6+ to upgrade to 9, so think this was a good compromise, although I already have a workaround for that as well, with a self-resizing DIV and SWF combo.</p>
<p>I would also like to clean things up a bit more including making some more XHTML friendly changes to the html output and then submit my changes to Ryan for inclusion in a future version, as it would probably be too much ongoing work to make and then maintain a plugin that patches his plugin. Anyway, below is a quick sample of the output with a handy little contrain/resizing function I use often. Including some basic CSS adjustments to give alternating background colors on the lines (it looks decent in Safari at default text settings, but I have to put in some conditional CSS tweaks for other browsers to get the alternating line colors to line up better) &#8211; at least I now have a solution I like for posting code snippets. If anyone wants to get the source for this and hack away at it yourself, let me know and maybe I&#8217;ll bundle things up as they stand now and someone else can refine things a bit further, its really only some changes to the main wp-synax.php file, a dependency on SWFObject 2.1, and the custom little Flash widget I put together.</p>
<p><code></p>

<div class="wp_syntax"><div id="hidden_code" style="display: none;"><code><pre>// AS3 example function to constrain an object's width/height proportionally with a given objects new targeted dimensions with optional rounding
function reSize (originalSize:Object, targetConstraints:Object, round:Boolean):Object {
    var scaleFactor:Number = Math.min( (targetConstraints.width / originalSize.width), (targetConstraints.height / originalSize.height) );
    var newSize:Object = new Object  ;
    newSize.width = round ? Math.round(scaleFactor * originalSize.width) : (scaleFactor * originalSize.width);
    newSize.height = round ? Math.round(scaleFactor * originalSize.height) : (scaleFactor * originalSize.height);
    return newSize;
}

var obj = new Object;
obj.width = 800;
obj.height = 600;

var newObj = new Object;
newObj.width = 640;
newObj.height = 500;

var objTarg:Object = reSize(obj, newObj, true);

trace (objTarg.width+"x"+objTarg.height);</pre></code></div><div id="code_div" style="position: relative; width: 100%; background: #cccccc;"><a onmouseover="setTooltip('View plain source code');" onmouseout="setTooltip(' ');"  href="#TB_inline?height=400&width=600&inlineId=hidden_code" alt="View Plain Source Code" title="View Plain Source Code" class="thickbox"><img src="http://www.impossibilities.com/v4/wp-content/plugins/wp-syntax/code.png" border="0" align="left" /></a>&nbsp;<div id="clipboardSWF"></div><script type="text/javascript">function $(id) { return document.getElementById(id); } function setTooltip(arg) { var flashID = $("viewCodeSWF"); flashID.setTooltip(arg); };
    	function copyComplete() { alert("Surce Code Copied to Clipboard!"); } function downComplete(arg) { alert("File: '"+arg+"' Download Complete!");} var flashvars = {};flashvars.code="%2F%2F+AS3+example+function+to+constrain+an+object%27s+width%2Fheight+proportionally+with+a+given+objects+new+targeted+dimensions+with+optional+rounding%0D%0Afunction+reSize+%28originalSize%3AObject%2C+targetConstraints%3AObject%2C+round%3ABoolean%29%3AObject+%7B%0D%0A++++var+scaleFactor%3ANumber+%3D+Math.min%28+%28targetConstraints.width+%2F+originalSize.width%29%2C+%28targetConstraints.height+%2F+originalSize.height%29+%29%3B%0D%0A++++var+newSize%3AObject+%3D+new+Object++%3B%0D%0A++++newSize.width+%3D+round+%3F+Math.round%28scaleFactor+%2A+originalSize.width%29+%3A+%28scaleFactor+%2A+originalSize.width%29%3B%0D%0A++++newSize.height+%3D+round+%3F+Math.round%28scaleFactor+%2A+originalSize.height%29+%3A+%28scaleFactor+%2A+originalSize.height%29%3B%0D%0A++++return+newSize%3B%0D%0A%7D%0D%0A%0D%0Avar+obj+%3D+new+Object%3B%0D%0Aobj.width+%3D+800%3B%0D%0Aobj.height+%3D+600%3B%0D%0A%0D%0Avar+newObj+%3D+new+Object%3B%0D%0AnewObj.width+%3D+640%3B%0D%0AnewObj.height+%3D+500%3B%0D%0A%0D%0Avar+objTarg%3AObject+%3D+reSize%28obj%2C+newObj%2C+true%29%3B%0D%0A%0D%0Atrace+%28objTarg.width%2B%22x%22%2BobjTarg.height%29%3B";flashvars.lang="actionscript";var params = {}; params.allowScriptAccess = "ALWAYS"; params.bgcolor = "#cccccc";var attributes = {}; attributes.id = "viewCodeSWF"; attributes.name = "view_codeSWF";swfobject.embedSWF("http://www.impossibilities.com/v4/wp-content/plugins/wp-syntax/clipboard.swf", "clipboardSWF", "300", "16", "9.0.115", "http://www.impossibilities.com/v4/wp-content/plugins/swfobj/expressInstall.swf", flashvars, params, attributes);</script></div><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">// AS3 example function to constrain an object's width/height proportionally with a given objects new targeted dimensions with optional rounding</span>
<span style="color: #000000; font-weight: bold;">function</span> reSize <span style="color: #66cc66;">&#40;</span>originalSize:<span style="color: #0066CC;">Object</span>, targetConstraints:<span style="color: #0066CC;">Object</span>, <span style="color: #0066CC;">round</span>:<span style="color: #0066CC;">Boolean</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">Object</span> <span style="color: #66cc66;">&#123;</span>
    <span style="color: #000000; font-weight: bold;">var</span> scaleFactor:<span style="color: #0066CC;">Number</span> = <span style="color: #0066CC;">Math</span>.<span style="color: #0066CC;">min</span><span style="color: #66cc66;">&#40;</span> <span style="color: #66cc66;">&#40;</span>targetConstraints.<span style="color: #0066CC;">width</span> <span style="color: #66cc66;">/</span> originalSize.<span style="color: #0066CC;">width</span><span style="color: #66cc66;">&#41;</span>, <span style="color: #66cc66;">&#40;</span>targetConstraints.<span style="color: #0066CC;">height</span> <span style="color: #66cc66;">/</span> originalSize.<span style="color: #0066CC;">height</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#41;</span>;
    <span style="color: #000000; font-weight: bold;">var</span> newSize:<span style="color: #0066CC;">Object</span> = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #0066CC;">Object</span>  ;
    newSize.<span style="color: #0066CC;">width</span> = <span style="color: #0066CC;">round</span> ? <span style="color: #0066CC;">Math</span>.<span style="color: #0066CC;">round</span><span style="color: #66cc66;">&#40;</span>scaleFactor <span style="color: #66cc66;">*</span> originalSize.<span style="color: #0066CC;">width</span><span style="color: #66cc66;">&#41;</span> : <span style="color: #66cc66;">&#40;</span>scaleFactor <span style="color: #66cc66;">*</span> originalSize.<span style="color: #0066CC;">width</span><span style="color: #66cc66;">&#41;</span>;
    newSize.<span style="color: #0066CC;">height</span> = <span style="color: #0066CC;">round</span> ? <span style="color: #0066CC;">Math</span>.<span style="color: #0066CC;">round</span><span style="color: #66cc66;">&#40;</span>scaleFactor <span style="color: #66cc66;">*</span> originalSize.<span style="color: #0066CC;">height</span><span style="color: #66cc66;">&#41;</span> : <span style="color: #66cc66;">&#40;</span>scaleFactor <span style="color: #66cc66;">*</span> originalSize.<span style="color: #0066CC;">height</span><span style="color: #66cc66;">&#41;</span>;
    <span style="color: #b1b100;">return</span> newSize;
<span style="color: #66cc66;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">var</span> obj = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #0066CC;">Object</span>;
obj.<span style="color: #0066CC;">width</span> = <span style="color: #cc66cc;">800</span>;
obj.<span style="color: #0066CC;">height</span> = <span style="color: #cc66cc;">600</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">var</span> newObj = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #0066CC;">Object</span>;
newObj.<span style="color: #0066CC;">width</span> = <span style="color: #cc66cc;">640</span>;
newObj.<span style="color: #0066CC;">height</span> = <span style="color: #cc66cc;">500</span>;
&nbsp;
<span style="color: #000000; font-weight: bold;">var</span> objTarg:<span style="color: #0066CC;">Object</span> = reSize<span style="color: #66cc66;">&#40;</span>obj, newObj, <span style="color: #000000; font-weight: bold;">true</span><span style="color: #66cc66;">&#41;</span>;
&nbsp;
<span style="color: #0066CC;">trace</span> <span style="color: #66cc66;">&#40;</span>objTarg.<span style="color: #0066CC;">width</span>+<span style="color: #ff0000;">&quot;x&quot;</span>+objTarg.<span style="color: #0066CC;">height</span><span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p></code></p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=516">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=516)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/03/10/modifications-to-wp-syntax-for-better-actionscript-code-highlighting-functionality/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Flash MouseWheel Implementations for Mac OS X</title>
		<link>http://www.impossibilities.com/v4/2009/03/06/flash-mousewheel-implementations-for-mac-os-x/</link>
		<comments>http://www.impossibilities.com/v4/2009/03/06/flash-mousewheel-implementations-for-mac-os-x/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 03:00:08 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=510</guid>
		<description><![CDATA[I ran across a recent entry about MouseWheel events on Mac OS X and Flash by Christian Cantrell and realized there were at least 4 cool implementations that I was aware of. Thought I would list them out here, including a modification I made to one that I have been using and has been around [...]]]></description>
			<content:encoded><![CDATA[<p>I ran across a recent entry about <a href="http://weblogs.macromedia.com/cantrell/archives/2009/03/make_the_mouse.html">MouseWheel events on Mac OS X and Flash by Christian Cantrell</a> and realized there were at least 4 cool implementations that I was aware of. Thought I would list them out here, including a modification I made to one that I have been using and has been around for at least a year or longer now. I really like the anonymous JS function injection approaches that several of them leverage. So here they are:</p>
<p><strong>Takanobu Izukawa of the Spark project:</strong><br />
<a href="http://www.libspark.org/wiki/SWFWheel/en">http://www.libspark.org/wiki/SWFWheel/en</a><br />
<a href="http://www.libspark.org/wiki/SWFSize/en">http://www.libspark.org/wiki/SWFSize/en</a></p>
<p><strong>Gabriel Bucknall &#8211; PixelBreaker &#8211; AS3.0 MouseWheel on Mac OS X</strong><br />
<a href="http://blog.pixelbreaker.com/flash/as30-mousewheel-on-mac-os-x/">http://blog.pixelbreaker.com/flash/as30-mousewheel-on-mac-os-x/</a></p>
<p><strong>Ali Rantakari &#8211; Mac OS X Mouse Wheel Support for ActionScript 3 Flash Applications (v.2+)</strong><br />
<a href="http://hasseg.org/blog/?p=138">http://hasseg.org/blog/?p=138</a></p>
<p><strong>Matt Giger &#8211; Simple solution for MOUSE_WHEEL events on Mac</strong><br />
<a href="http://blog.earthbrowser.com/2009/01/simple-solution-for-mousewheel-events.html">http://blog.earthbrowser.com/2009/01/simple-solution-for-mousewheel-events.html</a></p>
<p>And here is a link to download a modified version of the JavaScript portion of Gabriel &#8220;PixelBreaker&#8221;  Bucknall&#8217;s solution that I worked on to fix a few issues and add some functionality <a href="http://www.impossibilities.com/v4/publications/downloads/">grab it here</a>. I like Gabriels version as he put together an AS2 and AS3 version, it works perfectly with SWFobject 2.1, and with my fixes, multiple items on a page. I had started working on another version that also used externalInterface to leverage the anonymous function injection approach, but given that all three other variations on this issue already provide that functionality, I didn&#8217;t want to re-invent the wheel.</p>
<p>Also, note that all these approaches rely on leveraging externalInterface to pass info back forth between the browser/JavaScript and Flash. If AllowScriptAccess is set to NEVER in your embed, none of these projects will work. For what its worth there is a bug thats been logged on Adobes JIRA Bug system here: <a href="http://bugs.adobe.com/jira/browse/FP-216">http://bugs.adobe.com/jira/browse/FP-216</a> &#8211; that is looking for extra votes &#8211; it is related to the current inability to reliably detect what AllowScriptAccess and other HTML properties of Flash have been set to. The best solution and request is to make these items available as System.capabilities.xxxx properties available at runtime. That would be great &#8211; so make sure you check out the link and vote it up for the next release of the Flash player!</p>
<p><strong>UPDATE 03.10.09 &#8211; 12:51AM:</strong> I initially uploaded an old version accidentally &#8211; doh! I&#8217;ve updated the file, which fixes some issues with multiple instances of Flash on a page. Specifically where Flash instances not registered with SWFMacMouseWheel were still preventing the default page/document scroll if you happened to be mousedover them and they were receiving input. I also included a reference to Richard &#8220;Rillkill&#8221; Rodney for his tweaks for Safari for PC in the JS and AS3 code &#8211; which I failed to note requires changes in the AS to support Safari for PC. I also made a quick change to the AS2 version and zipped them both up and added them to the downloads page. If you don&#8217;t need Safari for PC support then you can stick with the original AS files from Gabriel/Pixelbreaker. Enjoy!</p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=510">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=510)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2009/03/06/flash-mousewheel-implementations-for-mac-os-x/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A Problem and Solution for FLV Metadata Injectors and the Maximum Duration of FLV Videos</title>
		<link>http://www.impossibilities.com/v4/2008/08/29/a-problem-and-solution-for-flv-metadata-injectors-and-the-maximum-duration-of-flv-videos/</link>
		<comments>http://www.impossibilities.com/v4/2008/08/29/a-problem-and-solution-for-flv-metadata-injectors-and-the-maximum-duration-of-flv-videos/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 17:48:35 +0000</pubDate>
		<dc:creator>Robert M. Hall, II</dc:creator>
				<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false">http://www.impossibilities.com/v4/?p=466</guid>
		<description><![CDATA[I&#8217;ve been working a great deal on Flash video related projects the past several years, and just this week I ran across and solved a puzzling issue for a client where the duration value being injected into a very large .flv file kept coming up far short of its real world value. I talked it [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working a great deal on Flash video related projects the past several years, and just this week I ran across and solved a puzzling issue for a client where the duration value being injected into a very large .flv file kept coming up far short of its real world value. I talked it through on <a href="http://www. flashcomguru.com/">Stefan Richters</a> great mailinglist <a href="http://www.flashcomguru.com/flashmedialist/">FLASHMEDIA</a> and thanks to Asa Whillock at Adobe on the FMS team, came to a conclusion, so I&#8217;m consolidating it all here for the benefit of others.<br />
<span id="more-466"></span></p>
<p>The video in question was over 8 hours in length, 8 hours 26 minutes and 26 seconds to be exact. It was encoded using the On2 VP6 CODEC and clocked in at 1.4GB in size. Not the typical average length and size for an FLV by any means, but I thought it certainly should be supported as it plays fine when streamed, or progressively downloaded, but the duration value was wrong. The other metadata values were correct, just duration. </p>
<p>Unfortunately this file was to be hosted on <a href="http://www.bitgravity.com/">bitgravity&#8217;s network</a> using their <a href="http://www.bitgravity.com/technology/advanced_progressive/">advanced-progressive delivery</a> &#8211; a customized high performance, scalable version of the pseudo-streaming technique made popular by Stefan Richter and others <a href="http://www.flashcomguru.com/index.cfm/2005/11/2/Streaming-flv-video-via-PHP-take-two">as described here</a>. So this compounded the problem as the bitgravity player requires the duration to be correct in order to calculate the proper position of the scrub/seek bar and to keep track of the offset of the beginning of the video when jumping/seeking which causes new requests for the video to be sent out, where a server side process looks at the video and its embedded keyframe metadata as well as the duration, recalculates the proper header, and begins sending data from the approximate requested keyframe position onward. So having an incorrect duration really fouled up playback in this specific instance of the bitgravity player.</p>
<p>Each tool I tried using to inject/view the metadata, including: <a href="http://inlet-media.de/flvtool2">flvtool2</a>, <a href="http://mirror.facebook.com/facebook/flvtool++/">flvtool++</a> and <a href="http://code.google.com/p/jflvtool/wiki/GettingStarted">jflvtool</a> all inserted incorrect values &#8211; and the results varied from tool to tool. I was going to try <a href="http://www.buraks.com/flvmdi/">Burak Kalaycis FLVMDI metadata injector</a> tool, but as luck would have it, Burak is also on Stefans mailing list, and he chimed in and mentioned that FLVMDI has some other limitations on the file size of videos that it can process (currently limited to 700MB), and that I would probably hit that issue first. So I didn&#8217;t run it through FLVMDI &#8211; but Burak did also confirm that his tool also suffers from the same problem, where the duration value would be incorrect, and if he gets a chance to fix it, he would update us on that.</p>
<p>The key issue does indeed relate to the length or duration of the .FLV itself and the FLV container format and specs for how the duration metadata value is stored. For videos that are under approximately 4.5 hours, everything is fine. However, once a video exceeds a little over 4 hours and 39 minutes, this is when the duration values appear incorrect with these tools, and all of them report back a value of around 16777.990 seconds in duration, a little more than half of the 8 hours 26 minutes of the video I was working with, which should have reported 30386 seconds.</p>
<p>I assumed that the problem might have something to do with the extra long duration, so thats when I began doing some research on the maximum length of FLV&#8217;s. I determined thanks to some help from Asa Whillock that the problem lies in how the duration value is stored in the .FLV container and the publicly available specs that were available at the time to third party authors that developed these applications. Originally the spec (prior to FMS 1.0) only designated a 3 byte integer type (UI24) to store the duration in milliseconds, or just enough to store a value corresponding to (256*256*256) 16.7 million or 16,777,990 milliseconds or 16777.990 seconds or 4 hours, 39 minutes, 37 seconds. So any video with a duration greater than that that can&#8217;t be represented with the single 3 byte sequence as the original FLV spec listed. Asa pointed out that in the recent spec they added an extended 7 byte UI8 tag named &#8220;TimeStampExtended&#8221;. This tag is to immediately follow the original 3 byte UI24 &#8220;TimeStamp&#8221; tag, and then both values are used to store the time. In this arrangement the original &#8220;TimeStamp&#8221; tag acts as the lower 24bits of the duration in milliseconds, and the &#8220;TimeStampExtended&#8221; acts as the upper 8 bits of the duration in milliseconds. This results in a 4 byte representation when combined, (256*256*256*256) so a maximum of 4.2 billion or 4,294,967,296 milliseconds or 4294967.296 seconds or 1193 hours, 2 minutes and 47 seconds or nearly 50 days straight worth of video. This would certainly allow just about any videos duration to be stored properly in the metadata.</p>
<p>So it looks like the solution to the the problem is to make sure the duration is stored using not only the &#8220;TimeStamp&#8221; tag but also the &#8220;TimeStampExtended&#8221; tag in order to store the full value of the duration for any video that exceeds 4 hours, 39 minutes and 37 seconds, otherwise the duration will be truncated to only the first 3 byte representation. To me this looks like a fairly easy fix (although the devil is always in the details). Burak is already aware of the issue, and I have gone ahead and emailed  the info to Chris Norman of Facebook who wrote the c++ flvtool++ implementation, as well as Norman Timmler over in Germany who wrote the flvtool2 in Ruby. I still need to write the author of the java based jflvtool. <a href="http://www.funciton.com/">Fernando Florez of Funciton Communications</a> mentioned a colleague of his has a Python based metadata injector that also suffers from this issue, but they are working on a patch and will try to release that as open source at some point. So I have hope we will have a third party tool capable of handling videos of this length in the short term. </p>
<p>If it helps anyone else working on similar tools, the exact reference to the &#8220;TimeStampExtended&#8221; tag is on page 9 of <a href="http://www.adobe.com/devnet/flv/pdf/video_file_format_spec_v9.pdf">Adobes Video File Format Specification Version 9</a></p>
<p>I haven&#8217;t yet had a chance to see if any commercial products like Sorenson Squeeze, On2 Flix, and the Flash CS3 Video Encoder correctly store the duration for videos over 4:39:37 in length &#8211; but will try to validate that and update this article once I&#8217;ve had a chance. I&#8217;m making an assumption the Adobe&#8217;s encoder does support it properly.</p>
<p>Thanks to Asa Whillock of Adobe for input and validation on this, as well as fellow Adobe Community Experts <a href="http://flashvideo.progettosinergia.com/">Fabio Sonnati</a> and <a href="http://www.flashcomguru.com/">Stefan Richter</a> and his invaluable <a href="http://www.flashcomguru.com/flashmedialist/">FLASHMEDIA</a> mailing list and to <a href="http://www.asvguy.com/">Burak Kalayci</a> and <a href="http://www.funciton.com/">Fernando Florez</a> for their input and thoughts. Thanks guys!</p>
<p><strong>UPDATE: 09/02/08 -</strong> I found another nice FLV metadata injector: YAMDI &#8211; <a href="http://yamdi.sourceforge.net/">http://yamdi.sourceforge.net/</a> but it also appears to suffer from the same bug. </p>
<p>Its been several days and I still have yet to hear back from Bitgravity about their FLVMDU tool that their CTO Barrett Lyon posted about in the comments. I emailed him directly right after the comment was posted, as well as through support as he noted and got a ticket #1678, but have yet to receive a response from Barrett or their support staff. Chalking it up to the holiday weekend.</p>
<p><strong>UPDATE: 09/03/08 -</strong>I spent some extra time tonight trying to locate a copy of the Bitgravity FLVMDU tool and with a little careful url guessing, was successful and found this <a href="http://bgdemo.bitgravity.com/BitGravity-flvmdu/">link to the tool</a> &#8211; it also includes the source under a GNU license which is nice. This version is dated 06-18-2008 as version 1.0.0. Unfortunately after running it through the same series of tests on a video with a duration greater than 4 hours 39 minutes and 37 seconds, it also fails to write the proper duration on such a long video. So it appears that bitgravity needs to also update their utilities to support the &#8220;TimeStampExtended&#8221; tag. There was a note to contact a &#8220;pclarke&#8221; at bitgravity in regards to bugs &#8211; so I&#8217;ve dropped them a note and pointed them at this article. Hopefully they will be able to fix things as of right now every FLV metadata injector tool I&#8217;ve tested suffers the same problem.</p>
<p><strong>UPDATE: 09/03/08 12:37AM</strong> &#8211; I found one more nice flv metadata injector and dumper called <a href="http://code.google.com/p/flvmeta/">flvmeta available here http://code.google.com/p/flvmeta/</a>. The source, and pre-made binaries for windows and Mac OS X are available, but it too appears to suffer from the bug I&#8217;ve been exploring since it doesn&#8217;t appear to support the &#8220;TimeStampExtended&#8221; tag either. Looks like everyone completely missed this in the spec, or just didn&#8217;t implement it for some reason.</p>
<p><strong>UPDATE: 09/03/08 12:24PM</strong> &#8211; I heard back from Perry Clarke at Bitgravity in response to my email to him about the bug/lack of support for &#8220;TimeStampExtended&#8221; in their FLVMDU tool. Perry noted, &#8220;I haven&#8217;t reproduced the issue you report though I can believe it&#8217;s a problem.  I&#8217;ll look into it when I have time.&#8221; So if you rely on FLVMDU when working with bitgravity, you&#8217;ll probably need to pester Perry or their support team to implement proper support in FLVMDU if your video is longer than 4 hours 39 minutes 37 seconds, especially if you are using their advanced progressive http delivery for videos &#8211; as that service requires the keyframe/metadata hinting and proper metadata duration tag otherwise it wont work properly. If they don&#8217;t update the tool, you&#8217;ll need to deliver your video in smaller chunks (less than 4 hours 39 minutes 37 seconds). I&#8217;d recommend smaller chunks anyway given the memory usage.</p>
<p><strong>UPDATE: 09/08/08 7:40PM</strong> &#8211; Last week I heard back from Dan Weatherford of Facebook and the primary author of flvtool++ He was very responsive in working with me to get in the proper support for the &#8220;TimeStampExtended&#8221; tag for proper durations on long videos. We made a number of test files from a variety of all the popular FLV exporters and transcoders and Dan was able to implement the full spec in the latest version of flvtool++ 1.1.2 available here: <a href="http://mirror.facebook.com/facebook/flvtool++/">http://mirror.facebook.com/facebook/flvtool++/</a>  The funny thing was that we found was that not a single tool, none of the flv metadata injectors out there, nor any of the FLV encoders we tested put in the proper duration in &#8220;TimeStampeExtended&#8221; format. Not ffmpeg, not Squeeze 5, not On2 Flix, not even Adobe Flash CS3 Video Encoder (standalone or Quicktime Exporter) and even a few upcoming apps currently in beta that I have access too &#8211; none of them inserted the proper duration in &#8220;TimeStampExtended&#8221; format for videos over 4 hours 39 minutes and 37 seconds. I thought this was especially odd for the Adobe apps &#8211; so it just looks like everyone totally overlooked this. Thanks so much to Dan Weatherford for his time in implementing proper support into flvtool++. Its currently the only tool I know of that properly supports &#8220;TimeStampExtended&#8221; </p>
<div class="glossolalia" style="margin: 3px; margin-right: 5px; padding: 0px; width: 100%; height: 30px; text-align: right;"><a href="http://www.impossibilities.com/v4/wp-content/plugins/glossolalia/glossolalia_mp3.php?id=466">Download an MP3 Podcast of this Entry (glossolalia_mp3.php?id=466)</a><br /></div>]]></content:encoded>
			<wfw:commentRss>http://www.impossibilities.com/v4/2008/08/29/a-problem-and-solution-for-flv-metadata-injectors-and-the-maximum-duration-of-flv-videos/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
	</channel>
</rss>
