Adobe Flash (formerly Macromedia Flash), or simply Flash, refers to both the Adobe Flash Player and to a multimedia authoring program used to create content for the Adobe Engagement Platform (such as web applications, games and movies). The Flash Player, developed and distributed by Adobe Systems (which bought Macromedia), is a client application available in most dominant web browsers. It features support for vector and raster graphics, a scripting language called ActionScript and bidirectional streaming of audio and video.
Strictly speaking, Adobe Flash is an integrated development environment (IDE) while Flash Player is a virtual machine used to run, or parse, the Flash files, but in contemporary colloquial terms "Flash" can refer to the authoring environment, the player or the application files.
Since its introduction in 1996, Flash technology has become a popular method for adding animation and interactivity to web pages; several software products, systems, and devices are able to create or display Flash. Flash is commonly used to: create animation, advertisements, various web-page components, integrate video into web pages, and more recently, develop Rich Internet Applications such as portals.
The Flash files, traditionally called "flash movies", usually have an .swf (ShockWave Flash) File extension and may be an object of a web page or strictly "played" in the standalone Flash Player.
Initially focused on animation, early versions of Flash content offered few interactivity features and thus had very limited scripting capability.
More recent versions include ActionScript, a scripting language which has syntax similar to JavaScript and so supporting JSON syntax (a variation on ECMA), but a much different programming framework and set of class libraries. ActionScript is used to create almost all of the interactivity (buttons, text entry fields, pick lists) seen in many Flash applications.
New versions of the Flash Player and authoring tool have strived to improve on scripting capabilities. Flash MX 2004 introduced ActionScript 2.0, a scripting programming language more suited to the development of Flash applications. As seen in the image to the right, it's often possible to save a lot of time by scripting something rather than animating it, which usually also retains a higher level of editability.
Of late, the Flash libraries are being used with the XML capabilities of the browser to render rich content in the browser. Since Flash provides more comprehensive support for vector graphics than the browser and because it provides a scripting language geared towards interactive animations, it is being considered a viable addition to the capabilities of a browser. This technology, which is currently in its nascent stage, is known as Asynchronous Flash and XML, much like AJAX, but with possibly greater potential.
In opposition to the decompilers, SWF obfuscators have been introduced to provide a modicum of security, some produced by decompiler authors themselves. The higher-quality obfuscators use traps for the decompilers, making some fail, but none have definitively been shown to protect all content.
The use of vector graphics (like PostScript, SVG and PDF)—especially when combined with program code—allows Flash files to translate to small file sizes which take less bandwidth to transmit than bitmaps or video clips do. In many cases, Flash is a very attractive solution for delivering mixed content. If the content is purely one format (such as text, video or audio), other alternatives may provide better outcome. Also, depending on the type of application or animation created (in particular, transparency or large screen updates as in photographic or text fades) a Flash movie may need more CPU power than alternatives.
In addition to a vector rendering engine, the Flash Player includes a virtual machine called the ActionScript Virtual Machine (AVM) for scripting interactivity at run-time, support for video, MP3-based audio, and bitmap graphics. As of Flash Player 8, it offers two video codecs: On2 VP6 and Sorenson Spark, and run-time support for JPEG, Progressive JPEG, PNG, and GIF. Since the next version, Flash is slated to use a Just In Time compiler for the ActionScript engine.
Flash as a format has become very widespread on the desktop market. According to NPD study, 98% of Web users have the Flash Player installed with 45%-56%[http://www.macromedia.com/software/player_census/flashplayer/version_penetration.html (depending on region) having the latest version. Numbers vary depending on the detection scheme and research demographics.
Flash players exist for a wide variety of different systems and devices. Flash content can run consistently on Microsoft Windows, Mac OS, Linux and various other Unix systems (Macromedia has created or licensed players for the following operating systems: GNU/Linux x86, Windows, Mac OS 9/X, Solaris, HP-UX, Pocket PC, OS/2, Symbian, Palm OS, BeOS and IRIX). Olivier Debon has written an open source version of the Flash 3 player*; ports of this exist to numerous operating systems, including the Amiga. See also Macromedia Flash Lite for Flash compatibility on other devices.
Macromedia has released the specifications of the Flash file format (excluding specifications of related formats such as AMF), and compatible third-party tools exist. However, Macromedia retains control of the format. Since Flash files do not depend on a truly open standard such as SVG, this reduces the incentive for non-commercial software to support the format, although there are several third party tools which utilize and generate the SWF file format and a large and vibrant open source community. Apparently, the Flash Player cannot ship as part of a pure open source, or completely free operating system, as its distribution is bound to the Macromedia Licensing Program and subject to approval.
Many shareware developers produced Flash creation tools and sold them for under $50 USD between 2000 and 2002. In 2003 competition and the emergence of free Flash creation tools, most notably OpenOffice.org, had driven many third-party Flash-creation tool-makers out of the market, allowing the remaining developers to raise their prices, although many of the products still cost less than $100 USD and support ActionScript. As for open source tools, Flash4linux has started to develop a SWF authoring tool including an interface similar to that of Macromedia's. KToon can edit vectors and generate SWF, but its interface is very different from Macromedia's. Another, more recent example of a Flash creation tool is SWiSH Max made by an ex-employee of Macromedia.
Adobe wrote a software package called Adobe LiveMotion, designed to create interactive animation content and export it to a variety of formats, including SWF. LiveMotion went through two major releases, but failed to gain any notable user base. Adobe cancelled it in 2003. Also more recently, Adobe bought Macromedia Corporation and now owns Flash.
In February 2003, Macromedia purchased Presedia, which had developed a Flash authoring tool that automatically converted PowerPoint Files into Flash. Macromedia subsequently released the new product as Breeze, which included many new enhancements. Since that time, Macromedia has seen competing PowerPoint to Flash authoring tools from PointeCast (not to be confused with PointCast) and PresentationPro among others. In addition, (as of version 2) Apple's Keynote presentation software also allows users to create interactive presentations and export to SWF.
In November 2003 Microsoft announced that it had started working on a competing product, now called Microsoft Expression Interactive Designer, whose release would coincide with that of their next-generation Windows operating system, Windows Vista. Although the target audiences of Expression Interaction Designer and Flash overlap somewhat, Microsoft is targeting its product on creating user interfaces for Windows Presentation Foundation programs, while Flash focuses on user interfaces that run on many platforms, primarily over the web.
In April of 2006, the Macromedia Flash SWF file format specification was released with details on the then newest version format (Flash 8). Although still lacking specific information on the incorporated video compression formats (On2, Sorenson Spark, etc.), this new documentation covers all the new features offered in Flash v8 including new ActionScript commands, expressive filter controls, and so on. The file format specification document is typically obtainable by subscribing to Macromedia's membership system and license restrictions.
Many web sites rely on Flash being available by default on a user's web browser and will not check to see if it is available. If Flash is not used, users may be unable to access some Flash-dependent websites, or users may experience a degraded user interface.
Using Flash content stores the content of the web page in a binary file. Since Flash uses animations, the design of the page is not static. Often the fonts are embedded as text outlines and references to these are used in drawing text passages, hence, the text is in a heavily obfuscated form. These factors make Flash-based content unsuitable for indexing by search engines. However, this problem can be alleviated with correct web site design.
Like most new technologies that are easy to learn, Flash has often been misused in a way that lacks customer focus. Flash, particularly in it's early days was used to create unusable and inaccessible sites. In recent years the Flash usage has matured and the quality is much higher.
Flash Players from version 6 can store and retrieve persistent data without offering any visible signs to the user. This behavior may cause privacy issues.
In addition to entries in the Open Source Vulnerability Database, security advisories published in August 2002, December 2002, and November 2005 highlight three examples of reports about various Flash Player versions that allowed remote code execution.
Internet users who are visually-impaired, and who may rely on a screen reader, braille display or using larger text sizes and/or high-contrast colour schemes may find sites that make extensive use of Flash difficult or impossible to use *. While later versions (Flash Player 6 and onwards) support accessibility functions, site designers may not necessarily design the Flash content with these considerations in mind.
Macromedia has rewritten the bitmap drawing routines in Flash Player 8 for Mac, using OpenGL planes via Quartz to draw the surfaces. The new drawing code is reported to be actually faster than its Windows counterpart, where JPEG, TIFF or other bitmap images are composited into the animation.
A similar solution for Linux using the X Window System might be slightly more tricky to achieve due to some old weaknesses of the X Window System. However, work is being done in the open source community to rewrite * the X Window System to integrate OpenGL, enhance font support among other things. This will make it easier to make multimedia programs (such as flash) exploit the capabilities of the graphics card.
Flash Player 8 is relatively unstable and users having problems are advised to revert to Flash Player 7. Also, Flash Player 8 will not be released for Linux but instead Macromedia is planning to release Flash Player 9 for all the three major operating systems, but not necessarily at the same time [http://weblogs.macromedia.com/emmy/archives/2006/04/flash_player_85_1.cfm. The current (March 2006) Flash Player 7 for Linux has poor sound support (The sound may lag about a second behind the picture). Macromedia has not yet released any of their development software for any UNIX-like operating system except Mac OS X.
Although Linux and Mac have excellent 64 bit support, Macromedia has yet (June 2006) to release a flash player for the x86-64 architecture on any operating system.
In an interview with eWeek, Eolas founder Michael Doyle said, "We have from the beginning had a general policy of providing non-commercial users royalty-free licenses ... the open-source community shouldn't have anything to fear from us"*, so most other browsers should not be forced to follow suit.
The dispute was over the whole concept of embedded, interactive ActiveX controls in IE, using the object and similar HTML elements, which Michael Doyle patented for UC in 1993, then licensed exclusively to a company he founded (Eolas) in 1994*. There are potential workarounds for IE users, but implementing them will mean code alterations to countless web pages that currently make use of Flash and other embedded ActiveX applications.
Apart from Eolas' stated immunity for the 'open-source community', due to various reasons including Microsoft's own patents, other browsers like Firefox etc, do not use ActiveX technology at all.
There is a workaround for this issue, essentially using Javascript to place the .swf file into a web document, rather than the standard
| Ext. | Explanation |
|---|---|
| .swf | .swf files are completed, compiled and published files that cannot be edited with Macromedia Flash. However, many '.swf decompilers' do exist. |
| .fla | .fla files contain source material for the Flash application. Flash authoring software can edit FLA files and compile them into .swf files. Proprietary to Macromedia, the FLA format in no sense counts as "open". |
| .as | .as files contain ActionScript source code in simple source files. FLA files can also contain Actionscript code directly, but separate external .as files often emerge for structural reasons, or to expose the code to versioning applications. They sometimes use the extension .actionscript |
| .swd | .swd files are temporary debugging files used during Flash development. Once finished developing a Flash project these files are not needed and can be removed. |
| .asc | .asc files contain Server-Side ActionScript, which is used to develop efficient and flexible client-server Macromedia Flash Communication Server MX applications. |
| .flv | .flv files are Flash video files, as created by Macromedia Flash, Sorenson Squeeze, or On2 Flix. |
| .swc | .swc files are used for distributing components; they contain a compiled clip, the component's ActionScript class file, and other files that describe the component. |
| .jsfl | .jsfl files are used to add functionality in the Flash Authoring environment; they contain Javascript code and access the Flash Javascript API. |
| .swt | .swt files are 'templatized' forms of .swf files, used by Macromedia Generator |
| .flp | .flp files are XML files used to reference all the document files contained in a Flash Project. Flash Projects allow the user to group multiple, related files together to assist in Flash project organisation, compilation and build. |
| .spl | .spl files are FutureSplash documents. |
| .aso | .aso files are cache files used during Flash development, containing compiled ActionScript byte code. An ASO file is recreated when a change in its corresponding class files is detected. Occasionally the Flash IDE does not recognize that a recompile is necessary, and these cache files must be deleted manually. They are located in %USERPROFILE%\Local Settings\Application Data\Macromedia\Flash8\en\Configuration\Classes\aso on Win32 / Flash8. |
| .sol | .sol files are Local Shared Object files, these files are the Flash equivalent to browser cookies. |
| Ext. | Explanation |
|---|---|
| .avi | AVI file is a video file, standing for Audio Video Interleave. Flash includes some compression codecs, including some from Radius. |
| .gif | GIF image, can be a single static frame or animated. |
| .png | .png files are Portable Network Graphics |
| .jpg | .jpg files are * Joint Photographic Expert Group, a popular lossy 24bit image compression format. |
| .ssk | .ssk files are SmartSketch drawings. |
| .piv | .piv files are Pivot StickFigure Animations. |
| .3ds | Some third-party software converts animated 3D file formats, notably the common 3D Studio Max format, to SWF files as rendered vector animations. |
The code name for the next release of the Flash authoring tool, ver 9.0, is "BLAZE" as explained in this post in Flash Product Manager Mike Downey's weblog. This next release is expected to focus on designer/developer workflow and integration with other Adobe Systems creative suite products. The new version of Flash will be known as Adobe Flash after the recent acquisition of Macromedia.
Animation software | Graphics file formats | Mac OS software | Macromedia software | Adobe software | Vector graphics editors | Web development software
ماكرو ميديا فلاش | Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | מקרומדיה פלאש | SWF | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Macromedia Flash | Flash | Macromedia Flash | แมโครมีเดีย แฟลช | Macromedia Flash | Flash
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Adobe Flash".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world