FLV
Encyclopedia
Flash Video is a container file format used to deliver video
over the Internet
using Adobe Flash Player
versions 6–11. Flash Video content may also be embedded within SWF
files. There are two different video file formats known as Flash Video: FLV and F4V. The audio and video data within FLV files are encoded in the same way as they are within SWF files. The latter F4V file format is based on the ISO base media file format
and is supported starting with Flash Player 9 update 3. Both formats are supported in Adobe Flash Player and currently developed by Adobe Systems. FLV was originally developed by Macromedia
.
Flash Video has been accepted as the default online video format by many sites. Notable users of it include YouTube
, Hulu
, VEVO
, Yahoo! Video
, metacafe
, Reuters.com
, and many other news providers.
The standards documentation for BBC Online states that the BBC now preferentially accepts Flash videos for submission, to the disadvantage of other formats previously in use on its sites such as RealVideo
or WMV.
Flash Video FLV files usually contain material encoded with codec
s following the Sorenson Spark or VP6
video compression format
s. The most recent public releases of Flash Player (collaboration between Adobe Systems
and MainConcept
) also support H.264 video and HE-AAC
audio. All of these compression formats are currently restricted by patent
s.
Flash Video is viewable on most operating systems via the Adobe Flash Player and web browser
plugin or one of several third-party programs. Apple's iOS devices do not support the Flash Player plugin and so require other delivery methods such as provided by the Adobe Flash Media Server
(MPEG-4 Part 12). Flash Player does not check the extension of the file, but rather looks inside the file to detect which format it is. The new file formats are completely different from the older FLV file format. For example, F4V does not support Screen video, Sorenson Spark, VP6 video compression formats and ADPCM, Nellymoser audio compression formats. Authors of Flash Player strongly encourage everyone to embrace the new standard file format F4V (ISO base media file format). There are functional limits with the FLV structure when streaming H.264 or AAC which could not be overcome without a redesign of the file format. This is one reason why Adobe Systems is moving away from the traditional FLV file structure.
SWF files published for Flash Player 6 and later versions are able to exchange audio, video, and data over RTMP
connections with the Adobe Flash Media Server. One way to feed data to Flash Media Server is from files in the FLV file format. Starting with SWF files created for Flash Player 7, Flash Player can play FLV file format directly (MIME type video/x-flv). Starting with SWF files created for Flash Player 9 Update 3, Flash Player can also play the new F4V file format.
Use of the H.264 and AAC compression formats in the FLV file format has some limitations and authors of Flash Player strongly encourage everyone to embrace the new standard F4V file format.
video standard, under the name of Sorenson Spark
(FourCC
FLV1). Sorenson Spark is an older codec for FLV files but it is also a widely available and compatible one, because it was the first video codec supported in Flash Player. It is the required video compression format for Flash Player 6 and 7. Flash Player 8 and newer revisions also support the playback of On2 TrueMotion VP6
video bit streams (FourCC VP6F or FLV4). On2 VP6 is the preferred video compression format for use with Flash Player 8 and higher. On2 VP6 can provide a higher visual quality than Sorenson Spark, especially when using lower bit rate
s. On the other hand it is computationally more complex and therefore will not run as well on certain older system configurations.
The Flash Video FLV file format supports two versions of a so called 'screenshare' (Screen video) codec which is an encoding format designed for screencast
s. Both these formats are bitmap tile based, can be lossy by reducing color depth
s and are compressed using zlib
. The second version is only playable in Flash Player 8 and newer.
Audio in Flash Video files is usually encoded as MP3
. However, audio in Flash Video FLV files recorded from the user's microphone use the proprietary Nellymoser Asao Codec
. (Flash Player 10 released in 2008 also supports the open source
Speex
codec.) FLV files also support uncompressed audio or ADPCM format audio. Recent versions of Flash Player 9 support AAC
(HE-AAC
/AAC
SBR
, AAC Main Profile, and AAC-LC).
Support for encoding Flash Video files is provided by an encoding tool included with Adobe's Flash Professional and Creative Suite products, On2's Flix encoding tools, Sorenson Squeeze
, FFmpeg
and other third party tools.
Supported media types in F4V file format:
These programs run under Windows7/Vista/XP. HandBrake also under Mac OS X and Linux.
Followed that, the file is split into packets which are delineated by 11-byte headers called FLV tags and 4-byte footers. The first byte of the tag denotes the packet type as follows:
Following that, we find 3 bytes denoting length, 3 denoting the timestamp and 4 denoting the stream id. There is a direct conversion between an FLV tag and an RTMP
packet when the file is streamed through a Flash Media Server. Each tag ends with 4 bytes denoting the total length of the packet which is the length found in the header plus 11 bytes for the header. The first packet encountered is usually a metadata packet which contains information such as
When streamed using an Actionscript
built player, the metadata values above are passed as arguments on the onMetaData callback function.
or embeddable version of FLV player.
and acquired 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 3rd party tools. It has support for a scripting 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.
Flash Player 9 Update 3, released on December 3, 2007, also includes support for the new Flash Video file format F4V and H.264 video standard (also known as MPEG-4 part 10, or AVC) which is even more computationally demanding, but offers significantly better quality/bitrate ratio.
Specifically, Flash Player now supports video compressed in H.264 (MPEG-4 Part 10), audio compressed using AAC
(MPEG-4 Part 3), the F4V, MP4 (MPEG-4 Part 14), M4V, M4A, 3GP
and MOV multimedia container formats, 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
. MPEG-4 Part 2
video (e.g. created with DivX or Xvid) is not supported. In an interview with BBC News
, the main programmer of Flash Jonathan Gay
said that the company had wanted to use H.264 when video support was originally added to Flash, but had been deterred by the patent
licensing fees of around $5million (£3.5million) per year.
Mac OS devices can play flash videos in QuickTime
with the help of additional software (such as the open source Perian
component.)
IrfanView
(freeware)'s plugins package supports FLV if the IE
version of Flash Player
is installed; and, unlike some of the above listed players, it is small and has neither advertisements, nor registration (for home use), nor license-legalese.
The iPhone
and Android devices can play flash videos with the help of additional software (such as the Skyfire web browser application.) Versions of Android above 2.1 support flash unlike Apple's iOS.
s and screen video capture software
. The former gives lossless results, while the latter allows recording any video even when anti-leeching measures are used.
Video
Video is the technology of electronically capturing, recording, processing, storing, transmitting, and reconstructing a sequence of still images representing scenes in motion.- History :...
over the Internet
Internet
The Internet is a global system of interconnected computer networks that use the standard Internet protocol suite to serve billions of users worldwide...
using Adobe Flash Player
Adobe Flash Player
The Adobe Flash Player is software for viewing multimedia, Rich Internet Applications and streaming video and audio, on a computer web browser or on supported mobile devices. Flash Player runs SWF files that can be created by the Adobe Flash authoring tool, by Adobe Flex or by a number of other...
versions 6–11. Flash Video content may also be embedded within SWF
SWF
SWF is an Adobe Flash file format used for multimedia, vector graphics and ActionScript. Originating with FutureWave Software, then transferred to Macromedia, and then coming under the control of Adobe, SWF files can contain animations or applets of varying degrees of interactivity and function.,...
files. There are two different video file formats known as Flash Video: FLV and F4V. The audio and video data within FLV files are encoded in the same way as they are within SWF files. The latter F4V file format is based on the ISO base media file format
ISO base media file format
ISO base media file format defines a general structure for time-based multimedia files such as video and audio. It is used as the basis for other media file formats...
and is supported starting with Flash Player 9 update 3. Both formats are supported in Adobe Flash Player and currently developed by Adobe Systems. FLV was originally developed by Macromedia
Macromedia
Macromedia was an American graphics and web development software company headquartered in San Francisco, California that produced such products as Flash and Dreamweaver. Its rival, Adobe Systems, acquired Macromedia on December 3, 2005 and controls the line of Macromedia...
.
Flash Video has been accepted as the default online video format by many sites. Notable users of it include YouTube
YouTube
YouTube is a video-sharing website, created by three former PayPal employees in February 2005, on which users can upload, view and share videos....
, Hulu
Hulu
Hulu is a website and over-the-top subscription service offering ad-supported on-demand streaming video of TV shows, movies, webisodes and other new media, trailers, clips, and behind-the-scenes footage from NBC, Fox, ABC, and Obstacle on October 20th 2011 Nickelodeon and CBS and many other...
, VEVO
Vevo
Vevo is a music video website. It is a joint venture among Sony Music Entertainment, Universal Music Group, and Abu Dhabi Media with EMI licensing its content to the group without taking an ownership stake. The service was launched officially on December 8, 2009...
, Yahoo! Video
Yahoo! Video
Yahoo! Video is a video sharing website on which users could upload and share videos. The service is owned and created by Yahoo!. Yahoo! Video began as an internet-wide video search engine and added the ability to upload and share video clips in June 2006...
, metacafe
Metacafe
Metacafe is a web site that specializes in short-form video entertainment in the categories of movies, video games, sports, music and TV.The company is headquartered in San Francisco, California, with offices in New York, Los Angeles, London and Tel Aviv...
, Reuters.com
Reuters
Reuters is a news agency headquartered in New York City. Until 2008 the Reuters news agency formed part of a British independent company, Reuters Group plc, which was also a provider of financial market data...
, and many other news providers.
The standards documentation for BBC Online states that the BBC now preferentially accepts Flash videos for submission, to the disadvantage of other formats previously in use on its sites such as RealVideo
RealVideo
RealVideo is a suite of proprietary video compression formats developed by RealNetworks – the specific format changes with the version. It was first released in 1997 and is at version 10. RealVideo is supported on many platforms, including Windows, Mac, Linux, Solaris, and several mobile...
or WMV.
Flash Video FLV files usually contain material encoded with codec
Codec
A codec is a device or computer program capable of encoding or decoding a digital data stream or signal. The word codec is a portmanteau of "compressor-decompressor" or, more commonly, "coder-decoder"...
s following the Sorenson Spark or VP6
VP6
On2 TrueMotion VP6 is a proprietary lossy video compression format and video codec. It is an incarnation of the TrueMotion video codec, a series of video codecs developed by On2 Technologies. This codec is commonly used by Adobe Flash, Flash Video, and JavaFX media files.- Overview :The VP6 codec...
video compression format
Video compression format
A video compression format or a video compression specification is a specification for digitally representing a video as a file or a bitstream. Examples of video compression formats are MPEG-2 Part 2, MPEG-4 Part 2, H.264 , Theora, Dirac, RealVideo RV40, and VP8...
s. The most recent public releases of Flash Player (collaboration between Adobe Systems
Adobe Systems
Adobe Systems Incorporated is an American computer software company founded in 1982 and headquartered in San Jose, California, United States...
and MainConcept
MainConcept
MainConcept GmbH is a software company developing video/audio codecs and also applications and plug-ins related to video/audio encoding.-History:...
) also support H.264 video and HE-AAC
HE-AAC
High-Efficiency Advanced Audio Coding is a lossy data compression scheme for digital audio defined as a MPEG-4 Audio profile in ISO/IEC 14496-3. It is an extension of Low Complexity AAC optimized for low-bitrate applications such as streaming audio...
audio. All of these compression formats are currently restricted by patent
Patent
A patent is a form of intellectual property. It consists of a set of exclusive rights granted by a sovereign state to an inventor or their assignee for a limited period of time in exchange for the public disclosure of an invention....
s.
Flash Video is viewable on most operating systems via the Adobe Flash Player and web browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
plugin or one of several third-party programs. Apple's iOS devices do not support the Flash Player plugin and so require other delivery methods such as provided by the Adobe Flash Media Server
Adobe Flash Media Server
Flash Media Server is a proprietary data and media server from Adobe Systems . This server works with the Flash Player runtime to create media driven, multiuser RIAs . The server uses ActionScript 1, an ECMAScript based scripting language, for server-side logic...
History
Support for video in SWF file format was added in Flash Player 6, released in 2002. In 2003, Flash Player 7 added direct support for FLV file format. Because of restrictions in the FLV file format, Adobe Systems has created in 2007 new file formats listed below, based on the ISO base media file formatISO base media file format
ISO base media file format defines a general structure for time-based multimedia files such as video and audio. It is used as the basis for other media file formats...
(MPEG-4 Part 12). Flash Player does not check the extension of the file, but rather looks inside the file to detect which format it is. The new file formats are completely different from the older FLV file format. For example, F4V does not support Screen video, Sorenson Spark, VP6 video compression formats and ADPCM, Nellymoser audio compression formats. Authors of Flash Player strongly encourage everyone to embrace the new standard file format F4V (ISO base media file format). There are functional limits with the FLV structure when streaming H.264 or AAC which could not be overcome without a redesign of the file format. This is one reason why Adobe Systems is moving away from the traditional FLV file structure.
File Extension | Mime Type | Description |
---|---|---|
.flv | video/x-flv |
File Extension | Mime Type | Description |
---|---|---|
.f4v | video/mp4 | Video for Adobe Flash Player |
.f4p | video/mp4 | Protected Video for Adobe Flash Player |
.f4a | audio/mp4 | Audio for Adobe Flash Player |
.f4b | audio/mp4 | Audio Book for Adobe Flash Player |
SWF files published for Flash Player 6 and later versions are able to exchange audio, video, and data over RTMP
Real Time Messaging Protocol
Real Time Messaging Protocol was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server...
connections with the Adobe Flash Media Server. One way to feed data to Flash Media Server is from files in the FLV file format. Starting with SWF files created for Flash Player 7, Flash Player can play FLV file format directly (MIME type video/x-flv). Starting with SWF files created for Flash Player 9 Update 3, Flash Player can also play the new F4V file format.
Flash Player version | Released | File format | Video compression formats | Audio compression formats |
---|---|---|---|---|
6 | 2002 | SWF | Sorenson Spark, Screen video | MP3, ADPCM, Nellymoser |
7 | 2003 | SWF, FLV | Sorenson Spark, Screen video | MP3, ADPCM, Nellymoser |
8 | 2005 | SWF, FLV | On2 VP6, Sorenson Spark, Screen video, Screen video 2 | MP3, ADPCM, Nellymoser |
9 | 2007 | SWF, FLV | On2 VP6, Sorenson Spark, Screen video, Screen video 2, H.264 | MP3, ADPCM, Nellymoser, AAC |
SWF, F4V, ISO base media file format | H.264 | AAC, MP3 | ||
10 | 2008 | SWF, FLV | On2 VP6, Sorenson Spark, Screen video, Screen video 2, H.264 | MP3, ADPCM, Nellymoser, Speex, AAC |
SWF, F4V, ISO base media file format | H.264 | AAC, MP3 |
Use of the H.264 and AAC compression formats in the FLV file format has some limitations and authors of Flash Player strongly encourage everyone to embrace the new standard F4V file format.
Encoding
Commonly, Flash Video FLV files contain video bit streams which are a proprietary variant of the H.263H.263
H.263 is a video compression standard originally designed as a low-bitrate compressed format for videoconferencing. It was developed by the ITU-T Video Coding Experts Group in a project ending in 1995/1996 as one member of the H.26x family of video coding standards in the domain of the ITU-T.H.263...
video standard, under the name of Sorenson Spark
Sorenson codec
Sorenson codec may refer to either of three proprietary video codecs: Sorenson Video, Sorenson Video 3 or Sorenson Spark. Sorenson Video is also known as Sorenson Video Codec, Sorenson Video Quantizer or SVQ...
(FourCC
FourCC
A FourCC is a sequence of four bytes used to uniquely identify data formats.The concept originated in the OSType scheme used in the Macintosh system software and was adopted for the Amiga/Electronic Arts Interchange File Format and derivatives...
FLV1). Sorenson Spark is an older codec for FLV files but it is also a widely available and compatible one, because it was the first video codec supported in Flash Player. It is the required video compression format for Flash Player 6 and 7. Flash Player 8 and newer revisions also support the playback of On2 TrueMotion VP6
VP6
On2 TrueMotion VP6 is a proprietary lossy video compression format and video codec. It is an incarnation of the TrueMotion video codec, a series of video codecs developed by On2 Technologies. This codec is commonly used by Adobe Flash, Flash Video, and JavaFX media files.- Overview :The VP6 codec...
video bit streams (FourCC VP6F or FLV4). On2 VP6 is the preferred video compression format for use with Flash Player 8 and higher. On2 VP6 can provide a higher visual quality than Sorenson Spark, especially when using lower bit rate
Bit rate
In telecommunications and computing, bit rate is the number of bits that are conveyed or processed per unit of time....
s. On the other hand it is computationally more complex and therefore will not run as well on certain older system configurations.
The Flash Video FLV file format supports two versions of a so called 'screenshare' (Screen video) codec which is an encoding format designed for screencast
Screencast
A screencast is a digital recording of computer screen output, also known as a video screen capture, often containing audio narration. The term screencast compares with the related term screenshot; whereas screenshot is a picture of a computer screen, a screencast is essentially a movie of the...
s. Both these formats are bitmap tile based, can be lossy by reducing color depth
Color depth
In computer graphics, color depth or bit depth is the number of bits used to represent the color of a single pixel in a bitmapped image or video frame buffer. This concept is also known as bits per pixel , particularly when specified along with the number of bits used...
s and are compressed using zlib
Zlib
zlib is a software library used for data compression. zlib was written by Jean-Loup Gailly and Mark Adler and is an abstraction of the DEFLATE compression algorithm used in their gzip file compression program. Zlib is also a crucial component of many software platforms including Linux, Mac OS X,...
. The second version is only playable in Flash Player 8 and newer.
Audio in Flash Video files is usually encoded as MP3
MP3
MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...
. However, audio in Flash Video FLV files recorded from the user's microphone use the proprietary Nellymoser Asao Codec
Nellymoser Asao Codec
Asao is a proprietary single-channel codec and compression format optimized for low-bitrate transmission of audio, developed by Nellymoser Inc....
. (Flash Player 10 released in 2008 also supports the open source
Open source
The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
Speex
Speex
Speex is a patent-free audio compression format designed for speech and also a free software speech codec that may be used on VoIP applications and podcasts. It is based on the CELP speech coding algorithm. Speex claims to be free of any patent restrictions and is licensed under the revised BSD...
codec.) FLV files also support uncompressed audio or ADPCM format audio. Recent versions of Flash Player 9 support AAC
Advanced Audio Coding
Advanced Audio Coding is a standardized, lossy compression and encoding scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates....
(HE-AAC
HE-AAC
High-Efficiency Advanced Audio Coding is a lossy data compression scheme for digital audio defined as a MPEG-4 Audio profile in ISO/IEC 14496-3. It is an extension of Low Complexity AAC optimized for low-bitrate applications such as streaming audio...
/AAC
Advanced Audio Coding
Advanced Audio Coding is a standardized, lossy compression and encoding scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates....
SBR
Spectral band replication
Spectral band replication is a technology to enhance audio or speech codecs, especially at low bit rates and is based on harmonic redundancy in the frequency domain....
, AAC Main Profile, and AAC-LC).
Support for encoding Flash Video files is provided by an encoding tool included with Adobe's Flash Professional and Creative Suite products, On2's Flix encoding tools, Sorenson Squeeze
Sorenson Squeeze
Sorenson Squeeze is a compression suite for video. It encodes to multiple formats including QuickTime, Windows Media, Flash Video, Silverlight, WebM & WMV. It uses multiple codecs, including the Sorenson codecs SV3 Pro and Spark, H.264, H.263, VP6, VC1, MPEG2, and many others. Squeeze operates on...
, FFmpeg
FFmpeg
FFmpeg is a free software project that produces libraries and programs for handling multimedia data. The most notable parts of FFmpeg are libavcodec, an audio/video codec library used by several other projects, libavformat, an audio/video container mux and demux library, and the ffmpeg command line...
and other third party tools.
Media type support
Supported media types in FLV file format:- Video: On2 VP6VP6On2 TrueMotion VP6 is a proprietary lossy video compression format and video codec. It is an incarnation of the TrueMotion video codec, a series of video codecs developed by On2 Technologies. This codec is commonly used by Adobe Flash, Flash Video, and JavaFX media files.- Overview :The VP6 codec...
, Sorenson Spark (Sorenson H.263), Screen video, H.264 - Audio: MP3MP3MPEG-1 or MPEG-2 Audio Layer III, more commonly referred to as MP3, is a patented digital audio encoding format using a form of lossy data compression...
, ADPCM, Linear PCM, NellymoserNellymoser Asao CodecAsao is a proprietary single-channel codec and compression format optimized for low-bitrate transmission of audio, developed by Nellymoser Inc....
, SpeexSpeexSpeex is a patent-free audio compression format designed for speech and also a free software speech codec that may be used on VoIP applications and podcasts. It is based on the CELP speech coding algorithm. Speex claims to be free of any patent restrictions and is licensed under the revised BSD...
, AACAdvanced Audio CodingAdvanced Audio Coding is a standardized, lossy compression and encoding scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates....
, G.711G.711G.711 is an ITU-T standard for audio companding. It is primarily used in telephony. The standard was released for usage in 1972. Its formal name is Pulse code modulation of voice frequencies. It is required standard in many technologies, for example in H.320 and H.323 specifications. It can also...
(reserved for internal use)
Supported media types in F4V file format:
- Video: H.264
- Images (still frame of video data): GIF, PNG, JPEG
- Audio: AAC, HE-AAC, MP3
FLV converters
An FLV converter is a type of video conversion software that is used for turning videos from different formats into FLV. Below is a list of popular free video converters which supports conversion to FLV.- SUPERSUPER (software)SUPER is a closed-source freeware front-end for open-source software video players and encoders provided by the FFmpeg, MEncoder, MPlayer, x264, ffmpeg2theora, musepack, Monkey's Audio, True Audio, WavPack, libavcodec, and the Theora/Vorbis RealProducer plugIn projects...
(freeware) - Freemake Video ConverterFreemake Video ConverterFreemake Video Converter is a freeware video converter developed by Ellora Assets Corporation. The program is used to convert between video formats, burn and rip DVDs, burn Blu-ray, create photo slideshow and music visualization, convert online videos, and upload files to YouTube.- Features...
(freeware) - Format Factory (freeware)
- HandBrakeHandBrakeHandBrake is a general-purpose, open-source, cross-platform, multithreaded video transcoder software application. HandBrake was originally developed by titer in 2003 as a general-purpose video transcoder to make ripping a film from a DVD to a data storage device easier...
Video Converter (GPL-licensed free software) - Free StudioFree StudioFree Studio is a freeware set of multimedia programs developed by DVDVideoSoft Ltd., which unites multiple applications into one program. The programs are available in one integrated package as well as separate downloads.-Overview:...
(freeware)
These programs run under Windows7/Vista/XP. HandBrake also under Mac OS X and Linux.
FLV File Structure
FLV files start with a standard header which is shown below:Field | Data Type | Example | Description |
---|---|---|---|
Signature | byte[3] | “FLV” | Always “FLV” |
Version | uint8 | 0x01 | Currently 1 for known FLV files |
Flags | uint8 bitmask | 0x05 | Bitmask: 5 is audio+video |
Header Size | uint32_be | 0x00 0x00 0x00 0x09 | Always 9 for known FLV files |
Followed that, the file is split into packets which are delineated by 11-byte headers called FLV tags and 4-byte footers. The first byte of the tag denotes the packet type as follows:
- 0x12 - Metadata packet
- 0x08 - Audio packet
- 0x09 - Video packet
Following that, we find 3 bytes denoting length, 3 denoting the timestamp and 4 denoting the stream id. There is a direct conversion between an FLV tag and an RTMP
Real Time Messaging Protocol
Real Time Messaging Protocol was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server...
packet when the file is streamed through a Flash Media Server. Each tag ends with 4 bytes denoting the total length of the packet which is the length found in the header plus 11 bytes for the header. The first packet encountered is usually a metadata packet which contains information such as
- width/height - as an integer
- duration
- framerate
- keyframes - an array with the positions of p-frames, needed when random access is sought.
When streamed using an Actionscript
ActionScript
ActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of...
built player, the metadata values above are passed as arguments on the onMetaData callback function.
FLV players
An FLV player is a type of media player that is used for playing Flash video from PC as well as from Internet websites. An FLV player can be used standalone, without the need of the Adobe Flash authoring or developmental tools. It can also be embedded in the website using Flash componentFlash component
A Flash component is a stand-alone piece of content , which has defined adjustable parameters and can be reused within Flash projects. Up-to-date Flash components are building blocks for creating Rich Internet applications on the web...
or embeddable version of FLV player.
Flash Player
The Adobe Flash Player is a multimedia and application player originally developed by MacromediaMacromedia
Macromedia was an American graphics and web development software company headquartered in San Francisco, California that produced such products as Flash and Dreamweaver. Its rival, Adobe Systems, acquired Macromedia on December 3, 2005 and controls the line of Macromedia...
and acquired by Adobe Systems
Adobe Systems
Adobe Systems Incorporated is an American computer software company founded in 1982 and headquartered in San Jose, California, United States...
. It plays SWF
SWF
SWF is an Adobe Flash file format used for multimedia, vector graphics and ActionScript. Originating with FutureWave Software, then transferred to Macromedia, and then coming under the control of Adobe, SWF files can contain animations or applets of varying degrees of interactivity and function.,...
files, which can be created by the Adobe Flash
Adobe Flash
Adobe Flash is a multimedia platform used to add animation, video, and interactivity to web pages. Flash is frequently used for advertisements, games and flash animations for broadcast...
authoring tool, Adobe Flex
Adobe Flex
Adobe Flex is a software development kit released by Adobe Systems for the development and deployment of cross-platform rich Internet applications based on the Adobe Flash platform...
, or a number of other Adobe Systems
Adobe Systems
Adobe Systems Incorporated is an American computer software company founded in 1982 and headquartered in San Jose, California, United States...
and 3rd party tools. It has support for a scripting language called ActionScript
ActionScript
ActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of...
, which can be used to display Flash Video from an SWF file. Because the Flash Player runs as a browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
plug-in, it is possible to embed Flash Video in web pages and view the video within a web browser.
Flash Player 9 Update 3, released on December 3, 2007, also includes support for the new Flash Video file format F4V and H.264 video standard (also known as MPEG-4 part 10, or AVC) which is even more computationally demanding, but offers significantly better quality/bitrate ratio.
Specifically, Flash Player now supports video compressed in H.264 (MPEG-4 Part 10), audio compressed using AAC
Advanced Audio Coding
Advanced Audio Coding is a standardized, lossy compression and encoding scheme for digital audio. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at similar bit rates....
(MPEG-4 Part 3), the F4V, MP4 (MPEG-4 Part 14), M4V, M4A, 3GP
3GP
3GP is a multimedia container format defined by the Third Generation Partnership Project for 3G UMTS multimedia services. It is used on 3G mobile phones but can also be played on some 2G and 4G phones....
and MOV multimedia container formats, 3GPP
3GPP
The 3rd Generation Partnership Project is a collaboration between groups of telecommunications associations, known as the Organizational Partners...
Timed Text
Timed Text
Timed Text refers to the presentation of text media in synchrony with other media, such as audio and video.Typical applications of timed text are the real time subtitling of foreign-language movies on the Web, captioning for people lacking audio devices or having hearing impairments, karaoke,...
specification (MPEG-4 Part 17) which is a standardized subtitle format and partial parsing support for the 'ilst' atom which is the ID3
ID3
ID3 is a metadata container most often used in conjunction with the MP3 audio file format. It allows information such as the title, artist, album, track number, and other information about the file to be stored in the file itself....
equivalent iTunes
ITunes
iTunes is a media player computer program, used for playing, downloading, and organizing digital music and video files on desktop computers. It can also manage contents on iPod, iPhone, iPod Touch and iPad....
uses to store metadata
Metadata
The term metadata is an ambiguous term which is used for two fundamentally different concepts . Although the expression "data about data" is often used, it does not apply to both in the same way. Structural metadata, the design and specification of data structures, cannot be about data, because at...
. MPEG-4 Part 2
MPEG-4 Part 2
MPEG-4 Part 2, MPEG-4 Visual is a video compression technology developed by MPEG. It belongs to the MPEG-4 ISO/IEC standards. It is a discrete cosine transform compression standard, similar to previous standards such as MPEG-1 and MPEG-2...
video (e.g. created with DivX or Xvid) is not supported. In an interview with BBC News
BBC News
BBC News is the department of the British Broadcasting Corporation responsible for the gathering and broadcasting of news and current affairs. The department is the world's largest broadcast news organisation and generates about 120 hours of radio and television output each day, as well as online...
, the main programmer of Flash Jonathan Gay
Jonathan Gay
Jonathan Gay is a computer programmer and software entrepreneur based in Northern California. Gay was a co-founder of FutureWave Software in 1993. For a decade, he was the main programmer and visionary of Flash, an animation editor for web pages...
said that the company had wanted to use H.264 when video support was originally added to Flash, but had been deterred by the patent
Patent
A patent is a form of intellectual property. It consists of a set of exclusive rights granted by a sovereign state to an inventor or their assignee for a limited period of time in exchange for the public disclosure of an invention....
licensing fees of around $5million (£3.5million) per year.
Desktop-based
Microsoft Windows, Mac OS X, Unix-based- Adobe Media PlayerAdobe Media PlayerAdobe Media Player was a desktop media player that allowed users to manage and interact with their media content, and allowed content publishers to define branding and advertising in and around their content. The Adobe Media Player was one of the first Adobe AIR applications from Adobe Systems. It...
(freeware) (no longer published or supported by Adobe) - Media Player ClassicMedia Player ClassicMedia Player Classic is a compact media player for 32-bit and 64-bit Microsoft Windows. The application mimics the look and feel of the old, lightweight Windows Media Player 6.4 but integrates most options and features found in modern media players...
(free software) - MPlayerMPlayerMPlayer is a free and open source media player. The program is available for all major operating systems, including Linux and other Unix-like systems, Microsoft Windows and Mac OS X. Versions for OS/2, Syllable, AmigaOS and MorphOS are also available. The Windows version works, with some minor...
(free software) - RealPlayerRealPlayerRealPlayer is a cross-platform media player by RealNetworks that plays a number of multimedia formats including MP3, MPEG-4, QuickTime, Windows Media, and multiple versions of proprietary RealAudio and RealVideo formats.-History:...
(freeware) - VLC media playerVLC media playerVLC media player is a free and open source media player and multimedia framework written by the VideoLAN project.VLC is a portable multimedia player, encoder, and streamer supporting many audio and video codecs and file formats as well as DVDs, VCDs, and various streaming protocols. It is able to...
(free software) - WinampWinampWinamp is a media player for Windows-based PCs and Android devices, written by Nullsoft, now a subsidiary of AOL. It is proprietary freeware/shareware, multi-format, extensible with plug-ins and skins, and is noted for its graphical sound visualization, playlist, and media library features.Winamp...
(freeware)
Mac OS devices can play flash videos in QuickTime
QuickTime
QuickTime is an extensible proprietary multimedia framework developed by Apple Inc., capable of handling various formats of digital video, picture, sound, panoramic images, and interactivity. The classic version of QuickTime is available for Windows XP and later, as well as Mac OS X Leopard and...
with the help of additional software (such as the open source Perian
Perian
Perian is an open source QuickTime component that enables Apple Inc.’s QuickTime to play several popular video formats not supported natively by QuickTime on Mac OS X...
component.)
IrfanView
IrfanView
IrfanView is a freeware/shareware image viewer for Microsoft Windows that can view, edit, and convert image files and play video/audio files. It is noted for its small size, speed, ease of use, and ability to handle a wide variety of graphic file formats, and has some image creation and painting...
(freeware)'s plugins package supports FLV if the IE
Internet Explorer
Windows Internet Explorer is a series of graphical web browsers developed by Microsoft and included as part of the Microsoft Windows line of operating systems, starting in 1995. It was first released as part of the add-on package Plus! for Windows 95 that year...
version of Flash Player
Adobe Flash Player
The Adobe Flash Player is software for viewing multimedia, Rich Internet Applications and streaming video and audio, on a computer web browser or on supported mobile devices. Flash Player runs SWF files that can be created by the Adobe Flash authoring tool, by Adobe Flex or by a number of other...
is installed; and, unlike some of the above listed players, it is small and has neither advertisements, nor registration (for home use), nor license-legalese.
PDA-based and smartphone-based
Windows Mobile, PalmOS-based- The Core Pocket Media PlayerThe Core Pocket Media PlayerThe Core Pocket Media Player is a software media player which operates on portable devices and Windows-based PCs. It is discontinued, but still available from the official mirror site. Supported operating systems include Palm OS, Symbian OS, and Microsoft Windows, CE, and Mobile. It is also...
(open source software)
The iPhone
IPhone
The iPhone is a line of Internet and multimedia-enabled smartphones marketed by Apple Inc. The first iPhone was unveiled by Steve Jobs, then CEO of Apple, on January 9, 2007, and released on June 29, 2007...
and Android devices can play flash videos with the help of additional software (such as the Skyfire web browser application.) Versions of Android above 2.1 support flash unlike Apple's iOS.
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 only playable with an FLV player. There are several third party players available.
- Embedded in an 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 downloadProgressive downloadProgressive download is a term used to describe the transfer of digital media files from a server to a client, typically using the HTTP protocol when initiated from a computer. The consumer may begin playback of the media before the download is complete...
via HTTP (supported in Flash Player 7 and later). This method uses ActionScriptActionScriptActionScript is an object-oriented language originally developed by Macromedia Inc. . It is a dialect of ECMAScript , and is used primarily for the development of websites and software targeting the Adobe Flash Player platform, used on Web pages in the form of...
to include an externally hosted Flash Video file client-side for playback. Progressive downloadProgressive downloadProgressive download is a term used to describe the transfer of digital media files from a server to a client, typically using the HTTP protocol when initiated from a computer. The consumer may begin playback of the media before the download is complete...
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 RTMPReal Time Messaging ProtocolReal Time Messaging Protocol was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server...
, 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 VideoGoogle VideoGoogle Videos is a video search engine, and formerly a free video sharing website, from Google Inc. Before removing user-uploaded content, the service allowed selected videos to be remotely embedded on other websites and provided the necessary HTML code alongside the media, similar to YouTube...
, YoutubeYouTubeYouTube is a video-sharing website, created by three former PayPal employees in February 2005, on which users can upload, view and share videos....
, and BitgravityBitgravityBitGravity is a Burlingame, CA, based content delivery network . The company was founded in 2006 and is notable because of its strategic partnership with Tata Communications which makes it one of the new breed of content delivery networks facilitating the telecommunication industries' push into the...
support progressive downloading 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 PHPPHPPHP is a general-purpose server-side scripting language originally designed for web development to produce dynamic web pages. For this purpose, PHP code is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document...
, as an ApacheApache HTTP ServerThe Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...
module, or using lighttpdLighttpdlighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible...
. - Streamed via RTMPReal Time Messaging ProtocolReal Time Messaging Protocol was initially a proprietary protocol developed by Macromedia for streaming audio, video and data over the Internet, between a Flash player and a server...
to the Flash Player using the Flash Media Server (formerly called Flash Communication Server), VCS, ElectroServer, Helix Universal ServerHelix Universal ServerThe Helix Universal Streaming Server is developed by RealNetworks and originates from the very first streaming media server originally developed by Progressive Networks in 1994...
, Wowza Media ServerWowza Media ServerWowza Media Server is unified server software developed by Wowza Media Systems. The server is used for streaming of live and on-demand video, audio, and RIAs over public and private IP networks to desktop, laptop, and tablet computers, mobile devices, IPTV set-top boxes, internet-connected TV...
, WebORB for .NET, WebORB for Java, erlyvideo (in erlang), or the open source Red5 server. As of April 2008, there are stream recorders available for this protocol, re-encoding screencast software excluded. - Flash Media ServerAdobe Flash Media ServerFlash Media Server is a proprietary data and media server from Adobe Systems . This server works with the Flash Player runtime to create media driven, multiuser RIAs . The server uses ActionScript 1, an ECMAScript based scripting language, for server-side logic...
4.5 allows Flash video streaming to iPhoneIPhoneThe iPhone is a line of Internet and multimedia-enabled smartphones marketed by Apple Inc. The first iPhone was unveiled by Steve Jobs, then CEO of Apple, on January 9, 2007, and released on June 29, 2007...
s and iPadIPadThe iPad is a line of tablet computers designed, developed and marketed by Apple Inc., primarily as a platform for audio-visual media including books, periodicals, movies, music, games, and web content. The iPad was introduced on January 27, 2010 by Apple's then-CEO Steve Jobs. Its size and...
s. It achieves this by delivering the content in an MPEG-2MPEG-2MPEG-2 is a standard for "the generic coding of moving pictures and associated audio information". It describes a combination of lossy video compression and lossy audio data compression methods which permit storage and transmission of movies using currently available storage media and transmission...
stream using the HTTP Live StreamingHTTP Live StreamingHTTP Live Streaming is an HTTP-based media streaming communications protocol implemented by Apple Inc. as part of their QuickTime X and iPhone software systems. It works by breaking the overall stream into a sequence of small HTTP-based file downloads, each download loading one short chunk of an...
format.
Flash video recording
It is possible to record online flash videos using stream recorderStream recorder
Stream recorder, also called a stream ripper, is a computer program capable of saving a data stream – particularly streaming media such as encoded music or video – to a file, instead of playing it right away...
s and screen video capture software
Screencast
A screencast is a digital recording of computer screen output, also known as a video screen capture, often containing audio narration. The term screencast compares with the related term screenshot; whereas screenshot is a picture of a computer screen, a screencast is essentially a movie of the...
. The former gives lossless results, while the latter allows recording any video even when anti-leeching measures are used.
See also
- Comparison of media playersComparison of media playersThe following comparison of video players compares general and technical information for notable software media player programs.For the purpose of this comparison, "video players" are defined as any media player which can play video, even if it can also play audio files.-General:-Operating system...
- Local Shared ObjectLocal Shared ObjectLocal Shared Objects , commonly called flash cookies are pieces of data that websites which use Adobe Flash may store on a user's computer...
- SWFObjectSWFObjectSWFObject is an open-source JavaScript library used to embed Adobe Flash content onto Web pages, which is supplied as one small JavaScript file...
External links
- Flash Developer Center - Flash Video Articles
- Flash Video (FLV) File Format Specification (adobe.com)
- List of codecs supported by Adobe Flash Player versions from 6 to 9 (adobe.com)
- Macromedia Flash FLV Video File Format (Library of Congress)