Woopra… wowJust started checking out Woopra... seems like a very nice real-time web tracking application.

What a great app!

Woopra is a real-time web tracking application that’s currently in beta.
I’ve only been playing with it for a few minutes (since I received my confirmation) and am already loving it.
Its basically Google Analytics except with the incredible addition of being live. On top of all of this, it has a great design and is extremely user friendly.

Woopra allows you to sit and watch people log on and off of your site. Track them in real-time as they switch pages and interact with your site. What’s even crazier is you can even initiate a conversation with any visitor. For all you know, I’m watching you right now. Rockwell was right in being paranoid.

Like I said, I’m just getting into it, but so far I’m leaning towards this being my web analysis app of choice.

Posted in General | 1 Comment
FLVPlayback directly in FlexA quick tutorial on how to incorporate Flash's FLVPlayback component directly in Flex.

I remember trying this a while back with Flex Builder 2 after reading Stefan Richter’s article and never being able to get it working properly. You couldn’t use the FLVPlayback swc directly, you had to compile out of Flash first with a wrapper MovieClip and you still had issues with the skin scaling properly.

I decided to try it again a couple of weeks ago with Flex Builder 3 and having complete success. You can use the FLVPlayback swc directly in Flex Builder now. I’m not sure if Flex Builder 3 or an update to the FLVPlayback component made a difference or if I’ve just gotten better at Flex. Either way, I wanted to document it for everyone.

Its actually rather simple and requires just a few steps:

  1. Create a new Flex project.
  2. Copy the FLVPlaybackAS3.swc from your Flash CS3 directory (under Configuration/Components/Video) and add it to your libs directory in your Flex project.
  3. In your main application mxml file, create a UIComponent and give it an id of “container”. This id can be anything you want, just remember it for below.
  4. Add a Script tag and listen for the creationComplete event on the application. Within the Script tag, add the following:
    			import fl.video.VideoScaleMode;
    			import fl.video.FLVPlayback;
    
    			private function creationCompleteHandler():void
    			{
    				var playback:FLVPlayback = new FLVPlayback();
    				playback.width = 320;
    				playback.height = 240;
    
    				container.addChild( playback );
    
    				playback.play( "assets/video/video.flv" );
    				playback.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO;
    				playback.skin = "assets/skin/SkinOverAllNoCaption.swf";
    				playback.skinAutoHide = true;
    			}
    			

    Make sure you change the references to the video and skin to the correct directories and files in your project.

That’s it!
Yep… it really is easy now. This is great. Especially since there still isn’t a good video component in Flex.
You can use the FLVPlayback swc directly, you don’t need to create a wrapper in Flash first, and no skinning issues when resizing. I’ve also tested and fullscreen works perfectly too.

As a note, you can also use the source code for the FLVPlayback directly as well. You just have to make a few tweaks to the code directly to handle references to Flash’s live preview for the component. Because of the tweaks, I would highly suggest copying the files into your project and editing them there rather than editing the originals in your Flash application directory.

Follow the steps above, but replace step 2 with the following.

  1. Copy the fl package from your Flash CS3 directory (under Configuration/Component Source/ActionScript 3.0/FLVPlayback) and add it to your src directory in your Flex project.
  2. Create a new class in the fl.video directory called Icon. The class is fine with an empty constructor, its just used to stop a compile error.
  3. Open fl.video.FLVPlayback and add an if statement around lines 874 – 876:
    			if( boundingBox_mc )
    			{
    				boundingBox_mc.visible = false;
    				removeChild(boundingBox_mc);
    				boundingBox_mc = null;
    			}
    			
  4. For good measure, add a void return to the set skinScaleMaximum method. This will stop a compiler warning.

There you have it. You are now able to compile and use the FLVPlayback component from Flex Builder directly with either the swc or the component source.

Posted in Flex | 12 Comments
AS3ScribdLib Update 0.90 – Complete API SupportThis update of my AS3 Scribd library completes the full API support including docs.upload() and user.signup().

AS3ScribdLib has been updated to version 0.90.
With this release, the API is completely supported.

Changelog:
* Fixed docs.upload() functionality.
* Fixed user.signup() functionality.
* Fixed request signing to follow API signature guidelines.
* Fixed success and error responses.

Links:
* Main Page
* Download
* Source
* Docs

Dependencies:
* as3corelib
* as3flexunitlib (Only necessary for running unit tests for the library)

Posted in Flash | 4 Comments
AS3ScribdLib Update 0.85An update for my AS3 Scribd library that fixes docs.uploadFromURL() and adds documentation.

AS3ScribdLib has been updated to version 0.85.

Changelog:
* Fixed docs.uploadFromUrl().
* Added documentation.
* Added a download link (includes docs, src, and swc).

Links:
* Main Page
* Download
* Source
* Docs

Dependencies:
* as3corelib
* as3flexunitlib (Only necessary for running unit tests for the library)

TODO:
* docs.upload()
* user.signup()

Posted in Flash | Leave a comment
Language Reference UpdatesLanguage References updated for the release of Flex 3 and AIR.

I’ve updated my Language References post with the latest and greatest since Flex 3 and AIR were officially released.

I’ve also added a subheading for Flash library language references.
If you’ve created a library with public facing docs let me know.

I’ll continue to try and update the post.

Posted in Flash | Leave a comment
AS3ScribdLib ReleasedThe official release of AS3ScribdLib... an AS3 library for handling document upload, document management and user registration for Scribd.

I just finished AS3ScribdLib, the AS3 API for Scribd.

The source code can be found on Google Code: http://code.google.com/p/as3scribdlib

The project has the following dependencies:

* http://code.google.com/p/as3corelib
* http://code.google.com/p/as3flexunitlib (Only necessary for running unit tests for the library)

The project has the following known issues:

* docs.upload() and docs.uploadFromUrl() not functioning properly
* user.signup() not functioning properly

After committing to creating the API I quickly realized that it is not the API for iPaper, but the actual API for handling document upload and management and user registration for the overall Scribd service.
Once I get upload and signup functioning 100%, I’ll move onto iPaper to see what API might be available for it.

Posted in Flash | 1 Comment
iPaper… the new FlashPaper?A discussion on the end of FlashPaper and the rise of iPaper. Could iPaper be FlashPaper's successor.

A little over a month ago I wrote about how FlashPaper seemed like it was taking its last dying breath. After reading the comments and doing some searching on my own,
Share currently seems to be the only continuation of FlashPaper in any form by Adobe. This was a little disappointing since Share is definitely not FlashPaper. Share (much like its name states) is basically a document sharing product that offers an embeddable preview of the document that you can embed on your site. The keyword there is “preview”. The preview is very basic and doesn’t give you any controls besides changing the page. The only way to actually look at the document in all of its glory, with some of the old FlashPaper controls, is to click on the preview which links the user back to Share’s website where the actual document is hosted. Unfortunately this is very limiting and annoying to people who are used to being able to embed the entire FlashPaper application in their own page.

A month and a half later and along comes a new tool to possibly fill the void left by FlashPaper.

Scribd, another document sharing website competing with Share, has released their own version of FlashPaper called iPaper. At first glance, iPaper seems to be everything I was hoping FlashPaper 3 would be. It offers all of the tools that FlashPaper 2 offered, including embedding the entire application, plus some:

  • iPaper can convert PDFs, Word docs, Powerpoint docs, OpenOffice docs, and more to Flash.
  • You can integrate Google ads into your documents.
  • Security… which I still need to look into.
  • Very light… only 96 KB.
  • Sharing features built in.

But the thing that caught my eye the most (that I still need to investigate further) is that Scribd offers a full API.

From their site: “Use the Scribd API to harness the full power of Scribd’s scalable conversion system, storage system, ad network, search engine, and iPaper viewer on your website at no cost to you.”
Looks like you will be able to control all of iPaper’s controls through an API much like FlashPaper allowed.
This is very exciting and I can’t wait to dig deeper into it and see if there is a need for a component at all anymore. One thing I do see the need for though is an AS3 library to communicate with Scribd’s API.

So I started AS3ScribdLib.
Nothing has been added yet, but keep your eye out and hopefully it will be coming soon.

Posted in Flash | 7 Comments
navigateToURL() Static Window ConstantsWhy is there no class with static constant properties for navigateToURL()'s window parameter?

Not that its a big deal at all, but since almost every constant string value in AS3 is provided in a class as a static constant property, why is there no class that contains the constant window values for navigateToURL()?

Shouldn’t there be a class that provides the following?:


public static const SELF:String = "_self";
public static const BLANK:String = "_blank";
public static const PARENT:String = "_parent";
public static const TOP:String = "_top";

Like I said, its not a big deal, since its simple enough to do. Just seems like something left out from the AS3 classes.

Posted in Flash | 3 Comments
FlashPaper in 2008: Dead or Alive?Has Adobe officially killed off FlashPaper?

As my first post of 2008, I thought I would ask this question and see what people thought.

Since Adobe took over Macromedia, FlashPaper seems to have been put on the backburner or quite possibly extinguished all together. Adobe already has the pdf format and now seems focused on a new xml-based representation of pdf, the Mars Project. With CS3, Adobe did not include FlashPaper with any of the suites and has pulled FlashPaper from Contribute.
You can of course still buy FlashPaper 2 from the Adobe store, but it is still v2 and does not work with Vista or Intel Macs. I have heard a few rumors that FlashPaper might be included as an export option in Acrobat, but so far thats just that… a rumor.

So what do you think… will FlashPaper be revived in 2008 or has it gasped its last dying breath?

Posted in Flash | 33 Comments
Papervision3D: Lava RockWorking with Papervision3D and 3ds Max, I demo a model of a rock with an animated lava texture applied to it.

Lava
I have to say Papervision3D really is great.

I’ve had my eye on it for a while but just never seemed to find the time to start playing around with it.
I actually come from a 3D background (which you can see if you go way back in my blog) but slowly found myself creeping into the Flash world and haven’t had a chance to look back. The opportunity to combine these two interests is hard to resist, but up until Papervision wasn’t very viable.

With the advent of Papervision3D 2 and Andy Zupko’s effects addition, 3D in Flash is not only viable but seems to really be taking off.

When I heard there was going to be a Papervision class in NYC, I couldn’t pass it up. Since the class, I’ve been digging in and messing around and once Andy added his effects classes to SVN I jumped and started working on the lava rock at the top of the page.

Its basically a sphere primitive with a video texture applied to it.
I created a procedural texture in 3ds Max and applied it to a sphere primitive until I was happy with this:

lava

Once I had the look I was happy with, I animated the texture. From there, I rendered out the texture as a flat series of images. I then created a Photoshop action that took the flat texture and created a seamless spherical texture. I then took the series of spherical images and created an flv. Once there, I applied that texture to the primitive sphere in Papervision.

To top it all off, I used some of Andy’s effect classes and created steam that seems to come from the actual cracks in the lava rock.

It took a little while to get it all setup and learn the ins and outs of Papervision, but now I’m hooked and can’t wait to keep messing around with it.

Posted in Flash | 8 Comments
  • Pages

  • Categories

  • Archives