Flash Player Mac Uninstaller on Adobe Labs

I’ve seen some blog posts about the Mac uninstaller for Flash Player that is currently on Adobe Labs. Yep, it was BIIIIG (almost 40MB). There was a technical explanation for it, but let’s just say its been worked around and the mac uninstaller is now much smaller (1.3MB).

The reason I am blogging about this at all is because I was surprised by some other comments related to it. There were some fears that we might require an uninstaller when we ship the release version of Flash Player 10. I want to make sure people know that this would not be the case.

The reason for having the uninstaller, and asking that users uninstall Flash Player 9 before installing Flash Player 10 beta is that it is pre-release software. We want to make sure that the beta player installs properly.

When I was at Yahoo! engineers always talked about the approach to security as “belt and suspenders.” By having both keeping your pants up, you feel more assured that your pants are going to stay in their full upright and locked position. Our normal installer is the belt, the uninstaller is the suspenders. By the time we finish our testing process, we are comfortable with just the normal belt. :)

For these and other geek fashion tips, I hope you will join me for the next installment, “How Adobe Pixel Bender is like your favorite calculator wrist watch (if your watch had a multi-core Intel CPU in it)” ;)

Peer to Peer (P2P) in Flash Player 10 beta

There has been a lot of great excitement around RTMFP (Real Time Media Flow Protocol), especially because of the peer to peer (P2P) communication that is enabled in Flash Player 10 beta. This is a natural time to speculate about what cool applications you will build with new technology, so I’d like to give you some more information for you to work with.

Since I have been frequently been asked about details on this, a frequently asked questions format somehow seemed appropriate ;) . For those that want to start working with RTMFP, make sure to read to the end, there is a goody for you!

Does Flash Player 10 beta support Peer to Peer (P2P) communication?
Flash Player 10 beta has new methods on the NetConnection and NetStream objects that allow communication through peer connections that are managed by a future Adobe server technology. The server will maintain a list of potential peers that can be connected to. If the NetConnection to the server is lost or closed, any peer connection that was initiated through the same NetConnection will also be closed.

How will I make a P2P connection through Flash Player 10 beta?
Connections from a SWF through a future Adobe server release will be assigned a temporary unique ID that is infeasible to guess or forge. Other SWFs connected to the same server can subscribe to the streams and events from that ID once the broadcasting SWF agrees to the connection.

On the server level, these IDs can be mapped to application-specific information such as presence. For a chat application, the ID can be linked to the nickname the user gave when connecting to the application. While the end-user may select the person that they want to chat with, Flash Player will use the ID to establish the connection with that user.

What can I send through the P2P connection?
In a similar way that you would stream local microphone and webcam media up to a server, you will also be able to stream it directly to another Flash Player client that has connected as a peer.

Through NetStream.send you can also send data which is useful for shared experiences in real-time applications. Any data format can be sent through this method though there are size limitations to the packet which may make certain data types less useful.

How does the peer connection work?
RTMFP UDP packets are sent directly from one Flash Player to another. The server translates the peer IDs to network addresses, and also assists in setting up the connection if one or both ends is behind a Network Address Translation (NAT) device. If UDP is blocked by a firewall or if RTMFP is blocked through a configuration of mms.cfg, the peer connection will not go through.

Can I choose between UDP and TCP?

No, RTMFP is a UDP-based protocol while RTMP is a TCP-based protocol. You will automatically use UDP by calling the methods that work over RTMFP.

Will RTMFP enable massive file-sharing applications through Flash Player 10 beta?
No. Large-scale file-sharing network applications rely on the ability to read from and write to the hard drive constantly to only load parts of files into memory when needed. In Flash Player 10 beta you can load files from the desktop to the Flash Player runtime, but the file would need to be loaded manually by the end-user and remain in memory for the entire time the file would be needed. The drain on system resources would make this style of application impractical.

Can I get started with RTMFP now?
While the support for RTMFP is built in to Flash Player 10 beta, there is no publicly available server technology to manage the connection process. If you would like to be considered for access to private beta programs around RTMFP, please send an email to fmsprerelease@adobe.com

RTMFP in Flash Player 10 beta

There have been some comments on other blogs about the new RTMFP protocol that is part of the Flash Player 10 beta and potential for how it will be used. Please keep in mind that while we have announced the features, we haven’t announced all of the details yet.

The new RTMFP protocol in Flash Player 10 provides an alternative to RTMP allowing customers to develop real-time communication applications with an improved user experience. Applications like chat and games are great examples of what you are likely to see make use of this technology. This new protocol has been designed for communication solutions, not massive content delivery.

We also chose UDP because it’s an efficient protocol for low-latency streaming video conversations, voice conversations or other similar solutions. UDP combined with the high-fidelity of SPEEX audio, will allow our customers to build great voice and audio solutions targeting Flash Player 10. To enable RTMFP and the UDP transport, authorization from a future server-based technology such as Adobe Flash Media Server will be required.

We are very excited about this new communication technology, the protection around it and being able to improve the delivery experience for both communication and media delivery to Flash Player.

Flash Player 10 beta ("Astro") goes public

Check out Adobe Labs to download Flash Player 10 beta, take the new demos for a spin, and watch videos about the new features.

The key features for Flash Player 10 beta include:

  • 3D Effects – transform any display object in 3D with easy to use ActionScript APIs while retaining full interactivity.
  • Custom Filters and Effects – In addition to the native filters in Flash Player you can also make your own using Adobe Pixel Bender. These filters, blend modes and fills can be scripted and animated using ActionScript.
  • New Text Engine – Bi-directional text, vertical layout, styeable device fonts are all part of the capabilities of the new text engine. In addition, this generic engine will power a new set of text components with really mazing typographic and layout functionality.
  • Visual Performance – through two new wmode settings you will be able to take advantage of the video card to speed up rendering and blitting.
  • Vector – A new ECMAScript 4 data type that is very much like an array but only accepts one type. By knowing what type will be stored in the array access performanc is dramatically faster.
  • Runtime FileReference access – With Flash Player 10 beta you can open a file dialog box to ask a user to select a file and load it into the runtime. You can also save content from the runtime to the desktop.

There is a lot more in this release, and I look forward to posting more about it soon!