Your Flash Content is Now Searchable!!! SEO for SWF - Yea!

Today Adobe announced that they have released special versions of the Flash Player to both Yahoo and Google. This is an amazing update in SEO accessibility for Flash and Flex. These special versions of the flash player allow their spiders to crawl Flash content just as they would HTML. These special Flash players actually will use your SWF and move through the different states of your clips and content! The spiders actually will also be able to gather Meta data from the SWF as well. You do not have to do anything to your SWF files to ensure that they will be crawled.

In the image above you can see that I searched Google for “pixelfumes filetype:swf“. It returned:

[FLASH]
71px Start Demo 71px import com.pixelfumes.reflect.*; var r1 …
File Format: Shockwave Flash
import com.pixelfumes.reflect.*; var r1:Reflect = new Reflect({mc:box_mc, alpha:85, ratio:255, distance:1, updateTime:0, reflectionDropoff:1}); …
www.adobe.com/devnet/flash/articles/reflect_class_as3/fig03.swf - Similar pages - Note this

In this example from my Adobe Developer Connection Article, I have a static text field on the stage displaying some code that was used. Apparently, Google was able to index the SWF’s text (static in this example).

Ryan Stewart has a great video on the subject (from which I gleaned the majority of my info). Basically, since the SWF format has been opened, Google and Yahoo now have a completely exposed DOM for SWF content just as they have had the same for HTML content. This is huge!

Two REALLY big things that you should know come from the Google-related release:

1. Googlebot does not execute some types of JavaScript. So if your web page loads a Flash file via JavaScript, Google may not be aware of that Flash file, in which case it will not be indexed.

2. We currently do not attach content from external resources that are loaded by your Flash files. If your Flash file loads an HTML file, an XML file, another SWF file, etc., Google will separately index that resource, but it will not yet be considered to be part of the content in your Flash file.

Those are two things that I personally do all of the time - this will be interesting…

Below is Ryan’s video:

You can learn more about all of this from Google itself by reading their post on Improved Flash Indexing.

Ryan also has a FriendFeed room link available as well here so that you can follow the questions and discussions that are going on.

Flash Player (10b?) and Firefox 3 Button Bug


Yesterday I was testing some Flash content after installing Firefox 3. I noticed that some of my movie clips which had events assigned to them were not acting like buttons. I also noticed that if I went above the normal hit area of the button that I could catch a pixel or two of the button. I thought that I had screwed something up in my code or layer structure somewhere along the line.

Later in the day a friend asked me if I had been experiencing any problems with Firefox 3 and Flash. “YES!” I said. Basically I have confirmed a bug which exists, at least on a Mac, involving Firefox 3 and Flash Player 10b. I looked up the bug in Bugzilla and there are some semi-related items (from old builds). I have documented this in a screen record which you can view here:

Get the Flash Player to see this player.

For the record here are my system specs:
Mac Pro with Leopard (10.5.3)
Flash Player 10b
Firefox 3

  • This was confirmed on a MacBook Pro with the same.
  • We checked a MacBook with Leopard and Flash Player 9 and the problem did not exist.
  • It did not exist on my machine under FF2 and FP10.
  • PC with XP, FF3 and FP10 the bug was not present.

If anyone has additional insight into this that would be great! Looks like it is mainly a Flash Player 10b issue though red flags were raised based on the previous bug related to Flash and Firefox 3.

New Flash 10 Card Flip Tutorial Online

I just finished writing an article for The Tech Labs.  The article steps you through the creation of a class that simulates the flip of a business card.  Lots of you have downloaded and commented on my previous CardFlip class written in AS2 so go check out the AS3/Flash 10 version!  The class will give you a bit of insight on the usage of the new rotationY property as well a basic usage of the PerspectiveProjection class.  You will of course need to have the beta version of Flash Player 10 installed to see the code in action.  You can view the results of the class here (Flash Player 10 required):

Flipping a Bitmap - Click on the card to flip


Flipping an SWF - Edit the text and click the Flip button to flip the card

You can view the article/tutorial on The Tech Labs site.

LAYERS TV Loves Some Pixelfumes Snow

I was stoked to find out that my Snow Class was used on the latest episode of LAYERS TV.  LAYERS TV is the video podcast counterpart to LAYERS magazine, a great publication for all things Adobe.  I found it interesting that the tutorial follows very much the same workflow I used when I originally presented this at the Pittsburgh Flash Users Group.  This tutorial uses AfterEffects for some great visual text and then uses the Snow class on top of that to achieve a great effect with a small file size.  I took a snippet of the video that shows the technique and workflow and posted it below:

Get the Flash Player to see this player.

You can subscribe to the LAYERS TV podcast here.  You can also subscribe to the magazine online.  If  you are interested in giving the Snow class itself a go then you can download that here in AS2 or AS3 versions.  Thanks for the shout out Rafael!

See you at FITC Chicago

Are you going to FITC Chicago? I am! I never get the chance to attend Flash Conferences - most of the time they are too far to travel for me… This time is different! Myself and several PittMFUGers (Wayne, Joe and Val) are going to make the trip out the Chicago for FITC Chicago. Maybe we will see you there! We hope to get a good vibe on what makes you conference goers happy so that we can better plan our conference in Pittsburgh (FlashPitt 08).

GPU Processing In Flash Player 10 Can Make Your Content Slower

I just finished reading an excellent article over at Kaourantin.net. Tinic wrote a brilliant article detailing what GPU processing in Flash Player 10 will mean to us. He obviously can explain it a lot better than I can as he is an engineer on the Flash Player team at Adobe.

Flash traditionally has had three modes in which it could be displayed in the web browser: transparent, opaque and normal. Flash Player 10 introduces two new modes, direct and gpu.

Once you read the article you will understand that Flash developers will have a lot more responsibility in their hands. Willy-nilly publishing in gpu mode could potentially result in an extremely bad user experience. Two of my favorite statements that Tinic makes are:

Just because the Flash Player is using the video card for rendering does not mean it will be faster. In the majority of cases your content will become slower.

and

Please do not blindly enable either new mode (gpu or direct) in your content. Creating a GPU based context in the browser is very expensive and will drain memory and CPU resources to the point where the browser will become unresponsive. It is usually best practice to limit yourself to one SWF per HTML page using these modes. The target should be content taking over most of the page and doing full frame changes like video. Never ever, ever enable this for banners. Plain Flex applications should not use these modes either if they are not doing full screen refreshes.

The whole banner thing worries me already. I remember what it was like trying to learn Flash back in the day… All we need are folks publishing everything in gpu mode and taking down browsers everywhere. Enough people, clueless as they may be, don’t like Flash because it “slows the internet down”, “crashes my browser”, “always says skip intro”, etc. And those things burn my biscuits - we all know good Flash doesn’t do any of those things.

So back to responsibility… Does the Flash community as a whole have what it takes to handle the new features and changes responsibly? What will this mean for deploying content? Currently (well, for the most part) you can publish once and odds are the large majority of users will have the same experience. As you read his article you will find that we are in for a bit of a change. Please don’t get me wrong - I think this is a good change, a needed one, one I will whole heartedly embrace.

Your two cents appreciated. In the meantime, check out Lee’s video on publishing content for Flash Player 10 right now!

Adobe AIR 1.0 TextArea Component Bug

Dave from twentysix passed this interesting bit of information to me upon reading my post Adobe AIR 1.0 hates the ComboBox Component. It seems that you will run upon a strange bug in the TextArea component when selecting text. For example… Create a new FLA and set the Publish Settings for AIR 1.0. Drag a TextArea component out to the stage. Now, test your movie. Write some text in the TextArea, highlight a portion of it and click below in the white space. If you do this you will occasionally see the text above reorder itself. Note, this is not clicking and dragging - just clicking. You can view the results below:


Now the interesting part… Take the same FLA, change the Publish Settings to Flash 9 and retest. The bug is gone. It seems that there might be some fishiness when it comes to using components from Flash CS3 in your AIR applications. If anyone else has additional information let me know.

Flash CS3/ActionScript 3 ReviewNet Test


Recently I completed writing the test questions for ReviewNet’s Flash CS3/ActionScript 3 test. This was an exciting project as I had never had the opportunity to do anything like this before.

Occasionally, companies will test individuals based on what they have on their resume. For example, if you are looking to apply for a job and have Flash CS3/ActionScript 3 on your resume, you could be asked to take a test of this nature. ReviewNet would set you up with a scheduled test and you would answer all of the questions using their online interface.

I found writing the test much like interviewing a technical candidate at work. A lot of the questions are close to things that I would ask candidates if they came in for an interview. So, taking this test could actually be beneficial even if you are not being asked to take it as part of an interview.

If you every end up taking the test, you can write to me and let me know how easy/hard I made it for you. The test if targeted at Flash developers (not animators) who have 1-3 years of experience using Flash in general and have experience using ActionScript 3 and Flash CS3. The questions are heavily ActionScript related.

You can learn more about ReviewNet by checking out their website.

WebKit Now Supports Reflections

Ahhh Reflections…  Ok, so I am a sucker for a nicely reflected picture, logo or video.  What can I say, it is a great effect.  I thought that this post over at Surfin’ Safari was really intersting.  Apparently the new build of WebKit supports reflections natively.  For example, you could embed an image as follows and a reflection will render in your WebKit browser:

<img src=”bubbles.jpg” style=”border:5px solid white;-webkit-box-reflect:below 5px -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0.5, transparent), to(white));”>

What I thought was really interesting was the apparent ability for the reflection to update:

Reflections will update automatically as the source changes. If you hover over links, you’ll see the hover effect happen in the reflection. If you reflect the <video> element, you will see the video playing in the reflection.

Giving an element a reflection has the effect of creating a stacking context (so it joins opacity, masks and transforms). The reflection is non-interactive, so from the point of view of hit testing, it’s like it isn’t there. The reflection will have no effect on layout (other than being part of a container’s overflow), and can be thought of as similar to box-shadow in this respect.

Hopefully this will be something we see in upcoming releases of both Safari and Adobe AIR since they are users of WebKit.  Of course, in the meantime you can do this the hard way in  JavaScript, ActionScript 2 and ActionScript 3.

Adobe AIR 1.0 Flash ComboBox Updates

Mike Chambers got a hold of me today in reference to my post,  Adobe AIR 1.0 hates the ComboBox Component, and said:

We tracked this down to an issue in the components / AIR, and have fixed it in internal AIR builds.

In the meantime, Im trying to find out if there is a workaround for the issue which you can use until we update AIR.

Thanks for all of the help with this, and sorry about the hassle…

I will keep you AIR developers updated on any additional information I get. Thanks for looking into this so quickly Adobe!