Adobe Flash Media Server Integration

Why Integrate With FMS?

Out of the box, NetXposure does a solid job of presenting video assets to its users. With a configured video transcoder, NetXposure will provide keyframes and an FLV proxy with integrated player. So why mess with a good thing?

Adobe Flash Media Server (FMS) provides a number of distinct advantages:

  • Dynamic Streaming — Most users are familiar with the standard “progressive” download players. Think YouTube. You select a video and it starts downloading whether you watch it or not. And worse, if you skip forward, the video pauses for awhile while the player buffer enough bits to start playing again. “Dynamic streaming” on the other hand saves bandwidth because it only provides the bits that are actually playing while allowing user a better experience because they can seek at any point in the video, nearly instantaneously.
  • Bandwidth Detection — instead of having your users choose from a variety of video file sizes — and in many cases the user simply won’t know what’s best — FMS can provide automatic bandwidth detection within the player so that the correct video is streamed. In fact, the video stream can adjust the bandwidth throughput if the connection speed changes mid-stream, or if the user selects a higher or lower quality — on the fly!
  • Performance — FMS can offload the video streaming work to a secondary server unburdening the DAM from high user concurrency streaming. In fact, FMS can be deployed in a load-balanced configuration for horizontal scaling.
  • Better Quality — the default proxy video in NetXposure is provided in the FLV format. However, FMS supports FLV, F4V, and H264. So you can improve the video quality for a better user experience.
  • Security — FMS supports a variety of security mechanisms, including RTMP over SSL and the highly efficient RTMPE protocol.

The Way This Works

Adobe FMS is typically installed on a server separate from NetXposure (though this is a recommendation, not a requirement). Additionally, NetXposure requires that a separate video transcoding engine be available and configured, including Equilibrium MediaRich, Telestream FlipFactory, or FFMpeg.

Asset file are ingested into the NetXposure DAM, which then tasks the video engine with transcoding the asset file into various required media files, including keyframe thumbnails, and all the various video sizes, bitrates, and formats/codecs that are required — typically, this includes FLV and h.264 output files. These files are copied and served from the FMS server — typically over a network mount using NFS, SMB and others.

FMS Diagram

Various clients access assets through the DAM, and can access the streaming player there; the streams are then provided by the FMS server through the DAM video players — one for Flash Player enabled desktops, Flash Lite enabled mobile devices, and direct h.264 links for iPhones and iPads. For the Flash-based clients, the data can be streamed over RTMP/E. For any direct h.264  files, the connection can be secured with SSL over HTTPS.

FMS Network Topology


Flash Media Server AutoTask

The FMS integration also requires that you employ the AutoTask function of the Netxposure Workflow Module. This system will create the commonly required media files — including the Smil files — and copy them to the FMS server automatically. You can use the pre-built AutoTask by configuring the video you want to stream through FMS and, for example, pass all MP4, MOV, M4V, and MPG files to this AutoTask

This AutoTask produces the following output for each Asset file in

put:

  • 20 keyframe images (thumbnails and previews).
  • 2 flv files with sizes 176×144 and 320×240 for Flash Lite enabled mobile devices.
  • 4 different h.264 mp4 movie files with sizes 176×144 (QCIF), 322×288 (CIF), 720×486 (D1) and 1280×720 (HD).
  • 1 h.264 mpeg file that is playable in iPhone.
  • A SMIL file generated to be used by FMS with different h.264 mpeg movies obtained. The SMIL file is saved as an “Asset View” for the video asset.

Usage

When an Asset has an available FMS stream, the user interface will present a “play” icon overlaid on the thumbnail and previews:

FMS enabled stream

Clicking the “play” icon, will launch the FMS streaming player:

FMS streaming player

This player provides controls for:
  • Dynamic seeking
  • Automatic and manual quality requests
  • Fullscreen mode
  • Volume
  • Secure streaming (if configured on the server)