Daniel Dura

All About the Adobe Flash Platform

The Desktop Takes Center Stage Again

without comments

One thing I am asked about ever so often is the reasoning behind building a desktop runtime when over the last few years people have been moving to the web? Even though there are benefits to building purely web based applications using Flex, Ajax, or other similar technologies, you still are leaving a lot of functionality on the table when making that transition. The question is, what platform can I use to get the best of both the desktop and the browser? I believe AIR is the answer to that question and I think other people are starting to take notice.

BusinessWeek has a great article today that discusses exactly this issue. From the article:

Perhaps most important for developers, the desktop’s advantage is that it is still the first thing users see when they turn on their computer. If your icon is there, it’s more likely that a user will opt to use your product—rather than the myriad other programs on the Web. Says Kay of Finetune: “It’s not in a browser window that might get closed.”

Read the entire article here.

Written by Daniel Dura

September 5th, 2007 at 10:53 am

Posted in AIR,Ajax

When will H.264 be in AIR?

with one comment

There were a lot of announcements today about features that will be in the update to the Flash Player, code-named Moviestar. The most interesting of these features was H.264, but also included are AAC playback and many hardware acceleration optimizations for video rendering in general.

You may be wondering when you will be able to use these features in AIR. As Mike Downey mentioned in his keynote at the onAIR Bus Tour event in DC, we will be releasing a new beta of AIR at MAX which will contain all of these features announced today.

Update: Looks like I jumped the gun on this a little bit. The H.264 feature will not be in AIR until a post MAX release, but will definitely be in AIR 1.0.

Written by Daniel Dura

August 21st, 2007 at 9:25 am

Posted in Adobe,AIR,Flash Video

Flash Player Supports H.264 and AAC

with one comment

This is definitely a game changing announcement that we are making today. The Flash Player will now support the open H.264 video format. We have also added AAC audio support as well. This will be a huge boon for video producers who will be able to leverage existing content and workflows. It will also benefit users with better performing HD quality video playback (as well as full screen playback) using the latest hardware acceleration features added to the player.

If you want to geek out on all of the changes that have been made, check out Tinic Uro’s post on these announcements. One bug fix that was made as part of this update is that the Flash Player will now support any MP3 (and AAC) sampling rate. If you have ever run into the ‘chipmunk’ bug, you know what I am talking about. This has been a bug that I get asked about at just about every public event, which now you won’t have to worry about.

Written by Daniel Dura

August 21st, 2007 at 5:15 am

Posted in Adobe,Flash Video

Flex Ranks High in Mailing List Traffic

without comments

Matt Raible at Raible Designs has posted an interesting chart that ranks open source web framework’s mailing list traffic. Flex ranks second right behind Ruby on Rails. I am not totally sure of the methodology of the data gathering used for these charts, but I wonder how Flex would rank if the forums on Adobe.com were also added to the list. In any case, it shows how quickly the Flex community is growing!

Written by Daniel Dura

July 30th, 2007 at 7:21 pm

Posted in Flex

New AIR Pocketguide from O’Reilly on Amazon

with 2 comments

The new AIR Pocketguide for JavaScript Developers that Mike Chambers, Kevin Hoyt, and I wrote is now available on Amazon. For some reason the cover isn’t shown on Amazon but I have attached it here. This book is in the same format as the Apollo for Adobe Flex Developers Pocket Guide that we released during the beta but focuses on developing AIR applications using JavaScript.

Amazon will not be the only way you can get your hands on the book. We will be making a PDF of the book available and you can also get a free printed copy by attending one of the free onAIR Bus Tour events around the country. Also, the contents of the book are released under a Creative Commons license.

Written by Daniel Dura

June 26th, 2007 at 1:32 pm

Posted in Adobe,AIR,Ajax

TwitterCamp Update

without comments

Today I updated TwitterCamp to use the AIR (formerly Apollo) Beta. You can download the new AIR package from the above link as well as see the updated source code. Hopefully by the time the bus tour starts I will have the code for TwitterCamp available on Google Code. This should allow you to keep up with any updates that are made via the Subversion repository. Let me know about any issues that you have installing or if you have any feature requests.

Written by Daniel Dura

June 18th, 2007 at 12:36 pm

Posted in AIR

Apollo Beta Sneak Peak: Drag and Drop

with 5 comments

Over the past few weeks I have been on the road in Tokyo, London, and now Paris. I am actually writing this post as I travel underneath the English Channel on the train! In Tokyo, Mike Chambers and I presented at the Apollo Camp there. My presentation was a sneak peak of some of the beta functionality that will be released in the Apollo Public Beta. The beta should be out in early summer (hmmm, isn’t it summer already?) Until that day comes, I am going to share some of what I have been presenting while on the road and give you a sneak peak of some of the new functionality that will be in this release.

One of the most exciting features in the Apollo Beta is Drag and Drop support. This is full OS level drag and drop support. You will be able to drag files, images, urls, text, serialized ActionScript objects, and other types to and from your Apollo application and other non Apollo applications and the desktop. You can control the image that is dragged and the modifiers that are allowed (copy, link, move, etc.) The first example I am going to share with you is how to start a drag operation from your Apollo application.

In this example, we are going to initiate a drag whenever a user clicks on a Button. We will use a snapshot of the button as the drag proxy (the image you see during the drag operation.) We will be transferring a URL with the drag which will allow us to drop this on browsers, text editors, and any other application that accepts URL types.

First you prepare the data that you are going to share with the drag and drop operation. To do this, you use an instance of the TransferableData class. This class allows you to add multiple data entries that are transfered with the drag operation by using the addData method. So for example, if I am dragging a URL, I might want to put both a URL format and a text format on the TransferableData object. The receiving application can then decide which data format is most appropriate.

var transfer:TransferableData = new TransferableData();
transfer.addData( “http://www.danieldura.com”, TransferableFormats.URL_FORMAT );
transfer.addData( “Daniel Dura’s Weblog”, TransferableFormats.TEXT_FORMAT );

Next, we want to specify a custom image that will be dragged with the image and will represent our data. For this example, we will just take a snapshot of the button that the user is clicking on and use that as our drag proxy. The drag and drop API takes a BitmapData object for this purpose.

var dragImage:BitmapData = new BitmapData( dragButton.width, dragButton.height, true );
dragImage.draw( dragButton );

Last, we initiate the drag by calling the DragManager.doDrag method. This method takes three arguments: the initiating display object, the TransferableData instance, and the BitmapData instance for the drag image.

DragManager.doDrag( dragButton, transfer, dragImage );

Here is the full example:


import flash.desktop.ClipboardManager;
import flash.desktop.TransferableFormats;
import flash.desktop.TransferableData;
import flash.desktop.DragManager;

private function handle_imageClick():void
var transferFormat:TransferableData = new TransferableData();
transferFormat.addData( "http://www.danieldura.com",
TransferableFormats.URL_FORMAT );

var dragImage:BitmapData = new BitmapData( dragButton.width,
dragButton.height, true );
dragImage.draw( dragButton );

DragManager.doDrag( dragButton, transferFormat, dragImage );


x="10" y="10"/>


So, this is just a very small taste of the funtionality available in the drag and drop API. In my next post, I will show how you can accept drops from other applications.

Written by Daniel Dura

June 8th, 2007 at 1:29 pm

Posted in AIR

Currently on Vacation

without comments

For everyone who has been emailing about my TwitterCamp application or leaving comments that aren’t being moderated, I just wanted to let you know that I am currently on vacation with my wife in beautiful New Zealand and will not be back until May 7th. I will be sure and catch up with my online correspondence when I get back, but for now I am just going to enjoy the amazingly beautiful land around me and try suck in the fresh air!

Written by Daniel Dura

April 28th, 2007 at 2:30 pm

Posted in Uncategorized

Video Demo: Adobe Media Player

with 9 comments

Yesterday we announced the Adobe Media Player, previously codenamed Philo. I have attached below a video of the application in action. This video comes from the Web 2.0 Expo where Kevin Lynch was presenting (this video was taken by Josh Lowensohn of CNet’s Webware.com):

The Adobe Media Player serves the need of two groups: video consumers, and video distributors. For consumers of video it allows them to consume both local and remote video resources in a very rich application. They can aggregate RSS feeds that contain video assets which will be stored locally for offline use. Consumers can also import video that can be found on their local machine. We are also adding a social aspect to the application that will allow users to rate and comment on videos.

Video distributors and producers can publish RSS feeds that contain videos for consumption in the Adobe Media Player. They can include information about custom branding that they would like to appear in their feed to provide a unique user interface. There are also some reporting, advertising, and content protection features that will be available.

A beta of the Adobe Media Player should be available this summer.

Written by Daniel Dura

April 17th, 2007 at 5:11 pm

Posted in Adobe,AIR,Flash Video

TwitterCamp at Web 2.0 Expo 2007

with one comment

TwitterCamp at Web 2.0 ExpoMike Chambers just got back from his session at the Web 2.0 Expo here in San Francisco and told me that he saw the TwitterCamp application in use! Here is a photo. All the credit goes to Ryan Stewart and Brady Forrest for making this happen. If you have any photos or video of TwitterCamp in action at Web 2.0 Expo, or at your own event, I would appreciate the links and will add them to the TwitterCamp page.

Written by Daniel Dura

April 16th, 2007 at 12:16 pm

Posted in AIR,Flex