Stage Video in OSMF

Stage Video support, newly available with Flash Player 10.2, is now available in the latest OSMF (version 1.6, Sprint 1)  library. We’re offering some background on the “what,” “why,” and “how” of Stage Video in OSMF, with the hope of getting valuable feedback on the current implementation from our open source community.

Guiding Principles

Because of the great performance improvements that Stage Video provides, OSMF will now automatically use Stage Video whenever it is available. As a player developer using OSMF, you won’t need to worry about any Stage Video-related workflows – they are handled seamlessly.

If you have a player that uses features which are currently unsupported by Stage Video, you can still use OSMF 1.6 and exercise the (simple) option to disable Stage Video support. Your player can still be upgraded to OSMF 1.6 to take advantage of the latest bug fixes and improvements, while leaving Stage Video support aside.

Also, a website hosting an OSMF player isn’t required  to ask its users to upgrade their Flash Player version to 10.2. A site owner might want to ask his users to upgrade, especially if serving HD content, but OSMF doesn’t enforce this in any way.

The Stage Video Workflows

To add Stage Video support to a video player without using OSMF, you would need to handle workflows such as the following:

  • Monitoring when Stage Video becomes available or unavailable.
  • Making sure that videos are positioned correctly when switching from Video to Stage Video.
  • Keeping track of the instances that are currently in use when working with multiple Stage Videos.

You would also need to create a suite of automated unit tests and test these workflows on different operating systems and Flash Player-enabled devices.

By using OSMF, all these aspects are now handled for you. (And, at the same time you become part of a growing open source community that continuously contributes to the quality of this framework.)

One-Line Disabling of Stage Video Support

To turn off Stage Video support in an OSMF player, simply add the following snippet to your video player code before you create any media element:

OSMFSettings.enableStageVideo = false;

Flash Player Versions and OSMF Compilation Targets

Currently, OSMF is available in two variants:

  • OSMF for Flash Player 10.0 – This is the variant that provides the core OSMF features and the largest possible installed Flash Player base.
  • OSMF for Flash Player 10.1 – This variant contains support for additional 10.1 features such as Multicast, HTTP Streaming, playback of protected content, and Stream Reconnect.

Until Flash Player 10.2, if you didn’t use any of the 10.1 features, you didn’t need to worry about the OSMF 10.1 APIs at all. There are, in fact, many OSMF customers still using the 10.0 variant.

However, with the release of Flash Player 10.2, even developers who aren’t using any 10.1 features probably will want to make use of Stage Video, if possible. Therefore, instead of adding one or more additional OSMF compilation targets at this point, we decided to keep the current two variants and add Stage Video support to them both. Whichever OSMF variant you choose, you get Stage Video support by default.

Feedback Wanted

We’d love to hear about your experience with using the Stage Video support in OSMF.

In particular, we’d like to get feedback on the following:

  • Do you need additional access to Stage Video APIs?
  • If yes, what use cases would you try to implement, and how would you need to be notified of the Stage Video state changes?