Visit Citebite Deep link provided by Citebite
Close this shade

Flash Video

From Wikipedia, the free encyclopedia

Jump to: navigation, search
Flash Video
File extension: .flv, .mp4, .m4v, .m4a, .3gp, .mov
MIME type: video/x-flv, video/mp4, video/x-m4v, audio/mp4a-latm, video/3gpp, video/quicktime
Developed by: Adobe Systems (originally developed by Macromedia)
Type of format: media container

Flash Video is the name of a file format used to deliver video over the Internet using Adobe Flash Player (formerly known as Macromedia Flash Player) version 6, 7, 8, or 9. Till version 9 update 2 of the Flash Player, Flash Video referred to a proprietary file format, having the extension FLV. On August 20, 2007, Adobe announced on its blog that with Update 3 of the Flash Player (currently in beta), Flash Video will also support the MPEG-4 international standard.[1]

Flash Video content may also be embedded within SWF files. Notable users of the Flash Video format include YouTube, Google Video,, Yahoo! Video and MySpace. The BBC have recently begun using .flv based media on their news portal.

Flash Video is viewable on most operating systems, via the widely available Adobe Flash Player and web browser plugin, or one of several third-party programs such as MPlayer, VLC media player, or any player which uses DirectShow filters (such as Media Player Classic, Windows Media Player, and Windows Media Center) when the ffdshow filter is installed.


[edit] Flash Player

Main article: Adobe Flash Player

The Adobe Flash Player is a multimedia and application player developed and distributed by Adobe Systems. It plays SWF files which can be created by the Adobe Flash authoring tool, Adobe Flex, or a number of other Adobe Systems and third party tools. It has support for a programming language called ActionScript, which can be used to display Flash Video from an SWF file. Because the Flash Player runs as a browser plug-in, it is possible to embed Flash Video in web pages and view the video within a web browser. The primary downside of Flash's FLV player is that it is very inefficient compared to a directly embedded video file, dropping frames when running on slow clients that run directly embedded video perfectly.

A free alternative, Gnash, is developed as part of the GNU Project.

[edit] Format details

Commonly, Flash Video files contain video bit streams which are a variant of the H.263 video standard, under the name of Sorenson Spark. Flash Player 8 and newer revisions support the playback of On2 TrueMotion VP6 video bit streams. On2 VP6 can provide a higher visual quality than Sorenson Spark, especially when using lower bit rates. On the other hand it is computationally more complex and therefore will not run as well on certain older system configurations. Recent beta versions of Flash Player 9 include support for H.264 video standard (also known as MPEG-4 part 10, or AVC) which is even more computationaly demanding, but offers by far the best quality/bitrate ratio, definitely being "the best" video codec today.

An optional alpha channel which represents per pixel transparency is supported by including a second simultaneous video stream which encodes the alpha channel only, dropping any chromatic information. The implementation makes the assumption that the YUV data of the main On2 VP6 video stream is always converted to RGB by the client before compositing occurs as the resulting RGB values are alpha premultiplied and clamped accordingly. This option is only available for On2 VP6 encoded video streams.

The Flash Video file format supports two versions of a so called 'screenshare' codec which is an encoding format designed for screencasts. Both these formats are bitmap tile based, can be lossy by reducing color depths and are compressed using zlib. The second version is only playable in Flash Player 8 and newer.

Support for encoding Flash Video files is provided by an encoding tool included with Adobe's Macromedia Flash Professional 8 product, On2's Flix encoding tools, Sorenson Squeeze, FFmpeg and other third party tools.

Audio in Flash Video files is usually encoded as MP3. However, Flash Video files recorded from the user's microphone use the proprietary Nellymoser codec. There is currently no open source product available that can decode the nellymoser codec. FLV files also support uncompressed audio or ADPCM format audio. Recent beta versions of Flash Player 9 support AAC (HE-AAC/AAC SBR, AAC Main Profile, and AAC-LC).

On August 20, 2007, Adobe announced on its blog that with Update 3 of the Flash Player (currently in beta), Flash Video will also support the MPEG-4 international standard. [1] Specifically, Flash Player will have support for video compressed in H.264 (MPEG-4 Part 10), audio compressed using AAC (MPEG-4 Part 3), the MP4, M4V, M4A, 3GP and MOV multimedia container formats (MPEG-4 Part 14), 3GPP Timed Text specification (MPEG-4 Part 17) which is a standardized subtitle format and partial parsing support for the 'ilst' atom which is the ID3 equivalent iTunes uses to store metadata. Adobe also announced that they will be gradually moving away from the proprietary FLV format to the standard MP4 format owing to functional limits with the FLV structure when streaming H.264. The final release of the Flash Player supporting MPEG-4 is expected to be available in Fall 2007.[2]

[edit] FLV Player

Main article: FLV player

Most media players based on the FFmpeg libraries should be able to play back Flash Video format video[3]. Listed below are some examples of media players supporting the Flash Video format:

[edit] Delivery options

Flash Video files can be delivered in several different ways:

  • As a standalone .FLV file. Although Flash Video files are normally delivered using a Flash player for control, the .FLV file itself is fully-functional on its own and can be played or converted to other formats from local storage such as a hard disk or a CD.
  • Embedded in a SWF file using the Flash authoring tool (supported in Flash Player 6 and later). The entire file must be transferred before playback can begin. Changing the video requires rebuilding the SWF file.
  • Progressive download via HTTP (supported in Flash Player 7 and later). This method uses Action Script to include an externally hosted Flash Video file client-side for playback. Progressive download has several advantages, including buffering, use of generic HTTP servers, and the ability to reuse a single SWF player for multiple Flash Video sources. Flash Player 8 includes support for random access within video files using the partial download functionality of HTTP, sometimes this is referred to as streaming. However, unlike streaming using RTMP, HTTP "streaming" does not support real-time broadcasting. Streaming via HTTP requires a custom player and the injection of specific Flash Video metadata containing the exact starting position in bytes and timecode of each keyframe. Using this specific information, a custom Flash Video player can request any part of the Flash Video file starting at a specified keyframe. For example, Google Video and Youtube supports progressive download and can seek to any part of the video before buffering is complete. The server-side part of this "HTTP pseudo-streaming" method is fairly simple to implement, for example in PHP, as an Apache HTTPD module, or a lighttpd module.
  • Streamed via RTMP to the Flash Player using the Flash Media Server (formerly called Flash Communication Server), VCS, ElectroServer, or the open source Red5 server. As of August 2007, there are three stream recorders available for this protocol, re-encoding screencast software excluded.

Also, the Wowza Media Server (wowzamedia) do RTMP Real time streaming, a competitor of FMS.

[edit] References

[edit] External links

Personal tools