Category: General

mx.video.NCManager.nextConnect quirk

For those who aren’t aware, mx.video.NCManager is a class that is used by Flash’s FLVPlayback component. It’s a “chunky monkey” class in that it does everything under the sun including things that have nothing to do with it’s title, but at it’s core it manages connections to videos. With this management, it abstracts the love/hate relationship of connecting to an FMS server for streaming videos, which requires trying various protocols and ports.

You see, connecting to FMS is different than making a simple HTTP request. Since it is typically not a port 80 request and it is persistent, various factors can cause it to fail. The most often reason being a firewall. NCManager automagically handles this by cycling through all the port (443, 1935, 80) and protocol (rtmp, rtmpt, rtmps) combos attempting to create a successful and efficient connection.

The quirk that I speak of exists in the NCManager’s nextConnect method. The class cycles through the list of possible protocl/port connections in a defined sequence. However, it doesn’t take into account that if for some reason your default url used a protocol/port combo that is further in the sequence say rtmp over port 443 and it failed. In this case, it would try the 443 connection twice and never try 1935 (1935 preceds 443 in the sequence). This is because it doesn’t acknowledge that the first attempt was out of order and then reshuffle the potential connections before iterating through them. One might make the assumption that if you are passing it a url consisting of a port/protocol url further in the sequence that you are specifically saying the combos above it are not possible. However, that is an assumption. Even with that assumption, if you have a failure you are making a second call that wastes resources.

As I mentioned, I labeled this as a quirk since the method works, but it works incorrectly in rare instances.

Project: CNN Image Gallery

A few weeks ago, CNN launched their spiffy new site which I was fortunate enough to have my hands dirtied from. I’ll save my comments for the redesign for another post, but wanted to point out the image gallery I worked on.

Details about the gallery

  • generic and allows setting any gallery feed on embed
  • allows deeplinking to specific images on embed
  • allows navigating to specific images from javascript
  • allows changing gallery feed via javascript
  • tracks image clicks
  • tracks gallery loads
  • allows emailing of gallery
  • Overall the experience with the gallery is pretty smooth. However, because it is competing with a bunch of other processes on the page, you can visually see the lag it is experiencing (via captions hide/reveal animation).

    For those with a bit of Flash community knowledge the new image gallery has a pretty familiar look. One might even venture to think that the module is indeed what it appears to be, SlideShow Pro. However, you would be wrong. Despite it’s drastically similar resemblance, it is a ground up custom write. Should it have been? Thats a good question. My first response when I saw the design firm’s mocks were, go get SlideShow Pro. I even pointed them to Todd and told him about it (since he was still at Turner). It was obvious they had used it as a model, so why not just customize it, right?

    Well in the case of CNN, they wanted control. Control over the UI, control over the effects, control over the data, control over the internals, control over events, and basically the control to modify everything and anything to do with the module. I granted their wish and did a ground up write, which took little time. It was a clean implementation that did only what they asked and was fine tuned to their needs. It was the details that you don’t see that made the custom write the correct decision, and in the end I agree with their choice.

    With all that said, I think it is a compliment to Todd that they followed his design. Though it made me feel odd with the project being so close his work, it points out the validity of his component. If CNN mirrors SlideShowPro, then that should tell you the component rocks. I wasn’t able to use it here, but I highly recommend it.

    My Playstation Megasode mentioned in NY Times

    The Playstation Megasode that I worked on with Playstation and presented at FITC 2007 and the Atlanta Adobe Users Group, was mentioned in the NY Times.

    “The Ben 10 prototype, the first game to use the PlayStation 3’s built-in browser, was such a hit that the network expects to commercialize the technology, which it calls a “megaseries,” for some yet-unnamed assets by year-end. “We look at this as an amazing new content window for distribution,” said Ross Cox, senior director for entertainment products at Cartoon Network New Media.”

    Though the article calls it a game, it’s better to think of it as an experience. You can play a pure game, watch a show, or “play” a show. There is a reinforcement loop that exists between your actions in the game and the show.Thanks Leif for point the article out.

    Retrospective: FITC 2007 Toronto

    I’m a little late posting my thoughts on FITC2007, but it’s probably better to post late than to never post at all. That said, the conference was only my second Flash related conference, the first being MAX 2003. I tend to be more drawn to scholastic style, theory based lectures, so FITC seemed to bridge a gap there. It let me pursue my usual interests as well as attend a conference devoted to the community that my work revolves around. I give it a thumbs up.The kicker for me was that I was presenting, after coming off a brutal schedule, that left no time to prepare how I wanted to. I ended up crashing for a little bit the first day when I got in, attending a few presentations the next day, then practicing the night before and the day of my presentation. You see, to be brutally honest, in the past public speaking was a major fear of mine. Everyone is bewildered by this given my personality, but it’s true. Practicing can sometimes be a way of becoming comfortable and confident, and in this case it helped. When I presented, I felt extremely comfortable and was able to get everything across how I wanted. The presentation was really well received, even to the point that someone mentioned it changed their perspective on media. That was my aim, and even if it’s not solving homelessness, I do think the message is important. I want to change entertainment so that it’s more accommodating, engaging, and less intrusive to our lives. To that note, the reason I’ve made myself present over the years is based on constantly trying to push beyond my bounds and the bounds around me. You have to do that if you want to be more than you are or change the things around you. It comes a lot easier now, but I’m always honored and humbled when given the chance to let others hear what I have to say. Without that I can only effect myself. Thanks Shawn, Naomi, and their crew for giving me that privilege.Given that I was pretty wrapped up in preparing, I didn’t get to attend everything I wanted. However I did manage to catch John Grden’s, North Kingdom’s, and Maeda’s presentations. All of them were quite brilliant in their own way. Though with my scholastic affinities, Maeda’s stuck with me the most. He did a wonderful job of stepping back and looking at how digital elements effect our lives and how those same elements can reflect life. His commentaries were quite poetic and profound.Overall, I had a good time at the conference. My highlights were giving my friend’s Stacey and Mathew a hard time, chilling with my friend Lawrence, getting reactions from my presentation, and just reflecting on things with my boy Eric. Conferences really provide a medium for those types of interactions, and it’s what I value from them the most. Needless to say, I’m happy I decided to go.

    PS3 Flash Player Performance and Inputs

    January 23, Sony released the 1.5 firmware update for the PS3. After the release, the Flash player in it’s browser dramatically changed.

    PERFORMANCE

    In tests with the original player the performance was not consistent across resolutions. At 480p, it averaged around 30fps, where at 1080i it dropped to around 2fps. With the update, the player now runs consistently at around 50-60fps. It is a noticeable change, because video and sound both had cracking before, where now it is smooth playback.

    INPUTS

    In addition, the key inputs have been updated. Before, directional buttons only produced down events. Now they produce both up and down events. In the old version, there was a Key event for the X button which mapped to ENTER which seemed to be inconsistent in being triggered. It has been removed. Instead of using the Key event for X, you use MouseDown and MouseUp.

    DEVELOPING AN INPUT STRATEGY

    What is interesting is the PS3 controller is used for what traditionally would be split into two input devices. It has a joystick which acts as a mouse, but the directionals act as keys. The oddball is X, because it acts as a Mouse event. That being said, you have to ask your self how you want to navigate, either by mouse or key. The reason being is that if you try to create a dual input interface (one that works with both mouse and keys), you get conflicts. In typical Key driven interfaces on a PC you can use directionals or tabbing to move around the interface, but to execute a focused item you click ENTER. With the PS3 you can use directionals to get around the interface, but your execute is a mouse click. A conflict would arise when you can click items or use X to execute a focused item. At that point, how can you distinguish between the two. This is especially the case, if you leave your mouse in a place, your UI shifts and now your mouse is over a button. Are you clicking the button or are you trying to use it as a hot key? I would say this is mainly an issue for interfaces and not for games. Personal opinion would be go with Key based strategy as that is what the platform lends itself too.Overall, the improvement to the PS3’s Flash player is encouraging. With it and the Wii, new opportunities are starting to look hopeful for Flash developers. Personally, I’m excited. Especially considering, I’m headed out to Hollywood next week to present the prototype application, I have been working on with Sony and friends. If anyone is interested, I plan on modifying my presentation at FITC to include the prototype.