Multiple Application Directories (Flash Media Server)

It’s a dead simple task to set up multiple application directories in Flash Media Server 2. I’ve been trying to figure out exactly how to do this for a while now (on and off) and the simplicity of it is astounding. I was under the false impression that this would require configuring a number of vhosts on the server- each pointing to a separate directory or partition housing many apps. This is thankfully not the case. All that needs to be done is to change the VHOST.APPSDIR entry in ‘fms.ini’ to a semicolon-separated list of directories/partitions/whatever. That is it. I’ve never seen mention of this in the documentation. Maybe I just missed it?

Some examples of this follow:
VHOST.APPSDIR = C:\appsdirectory1;C:\appsdirectory2
VHOST.APPSDIR = E:\;F:\

First Public Flex Module

I’ve placed my first public Flex module into my portfolio as a feedreader for this website. It’s a very simple module using no ActionScript to speak of and components are being styled directly from within their properties. It’s a good first step with Flex and something that is useful for me, so I view it as a success. The next step for my learning experience will probably be the integration of ActionScript within an app and either styling the components globally, or re-skinning them alltogether.

Coming from the Flash/ActionScript side of things, it’s been difficult getting a grasp on Flex and how everything works on that side. I’ve done a number of small experiments in the past few months but nothing useful till now. It’s beginning to come together for me though- I have the feeling that after the initial hurdle, things will explode for someone already familiar with ActionScript.

Feedreader

[feedreader source]

Zoomify in Photoshop CS3

Doing some quick research at the request of a client and learned that a Zoomify export is actually built into Photoshop CS3 beta! I’ve been using the beta since it’s release yet had never noticed this option till now. While not something I would likely be using- I can imagine this feature would be huge for some organizations looking for a simple way to incorporate a hi-res image zoom tool into their websites without consulting a Flash developer.

ActionScript 3.0 and the Flex SDK

In my free time (right!) over the past few months, I’ve been working on some basic ActionScript 3.0 projects to familiarize myself with the new version. I’ve been using FlashDevelop linked into the Flex SDK to write and compile my code. While I have no gripes with Flex Builder 2, I find it amazing that anyone can just download the Flex SDK for free and start producing Flash with pure ActionScript. I’ve lately been very focused on keeping my code clean and self-contained. With AS2, I’ve always needed to tie everything to an FLA in the Flash IDE, even if working primarily with external classes in FlashDevelop or SEPY. Having a pure AS3 environment is huge. One of my favorite new features is the ability to set document properties through your package definition.

1
2
3
4
5
package {
import flash.display.Sprite;
[SWF(width="400", height="350", backgroundColor="#000000", frameRate="31")]
public class SomeClass extends Sprite {}
}

I haven’t used AS3 for any real world projects yet, but with so many benefits over AS2 already realized from simple exercises, I know the day is fast approaching. I may begin a series of posts on the benefits of using AS3 over AS2 as I encounter these things in my work.

Fullscreen Flash Player ‘Gotcha’

I’m not sure whether this should be classified as a bug or not. I’m currently working on a project which utilizes the new fullscreen capabilities of Flash Player 9. The module in question retrieves images, audio, video, and other objects for display one-by-one in an individual presentation format. One thing we’ve included in the application is the ability to link to external video from YouTube, iFilm, Yahoo Video, or wherever a user’s personal video material may be hosted. This is where the problem occurs. Flash Player security policy dictates that data linked across domains cannot be loaded into the player without explicitly allowing such communication through a crossdomain policy file. Seeing that we allow the inclusion of so many different video services for this application, it isn’t really feasible at this time to try and either load videos through the help of individual service APIs or to find some other way around these security restrictions on a per service basis. We currently handle this by displaying a message telling the user to click through to the video, essentially invoking a getURL() and opening the video in a new window or tab. When using this presentation module in fullscreen mode, invoking a getURL() will actually crash Firefox. It seems to function just fine in other browsers tested. For the meantime, I’ve set the external linking method to first pull the Flash Player out of fullscreen mode and then invoke getURL() which works just fine.

1
2
Stage["displayState"] = "normal";
getURL(videoURL, "_blank");

It seems this would be more of a Firefox bug than one involving the Flash Player itself. I wonder if anyone else has any insight to this particular issue? The workaround I have implemented works fine for now- but it is not ideal from a user perspective as they are automatically pulled out of fullscreen mode back into the browser. Perhaps this may be a good Apollo option?