Macromedia Flash

Macromedia Flash, or simply Flash both refer to both a multimedia authoring program and the Macromedia Flash Player, written and distributed by Macromedia, that utilizes vector and bitmap graphics, sound and program code and bidirectional streaming video and audio (upstreaming only available when used in conjunction with Macromedia Flash Communication Server). Strictly speaking, Macromedia Flash is the authoring environment and Flash Player is the virtual machine application used to run the Flash files, but in colloquial language these have become mixed: "Flash" can mean either the authoring environment, the player or the application files.

Missing image
Flashmx2004.png
Macromedia Flash MX 2004

The Flash files, which usually have an SWF file extension, may appear in a web page for viewing in a web browser, or standalone Flash players may "play" them. Flash files occur most often in animations on web pages and rich-media web sites, and more recently Rich Internet Applications. They are also widely used in web advertisements.

In recent versions, Macromedia has expanded Flash beyond the simple animations, into a complete application development tool, mainly to create Rich Internet Applications. Flash will become an Adobe product if the merger between Adobe and Macromedia is approved.

Contents

Programming Language

Flash MX 2004 uses ActionScript 2.0, which is ECMAScript 4 compliant, which means that it looks more like Java. It can now be considered a full-fledged object-oriented programming language, including its free-form coding style, events, interfaces and inheritance. Many object-oriented features are those of the compiler; it is still a scripting programming language with no run-time strong types or many other object-oriented programming features.

Compilers

One can compile ActionScript 2.0 with the built-in compiler in the Flash IDE or with Motion Twin ActionScript2 Compiler (MTASC). See External links.

Pros and cons

Advantages

The Macromedia Flash file format has several features that make it a popular option for delivering advertising and for certain types of websites, such as those which require a very sophisticated or special user interface unattainable with HTML or Javascript.

  • Like CSS with HTML, PostScript, SVG and PDF, Flash can be used to specify exact positioning of the various page elements. This gives the designer a great degree of control over how the user interface looks. The layout can also be adjusted on-the-fly with ActionScript.
  • Flash supports progressive streaming by default (frames of animation load individually and can be shown before the entire file is loaded). It also has support for loading in true streaming video using Flash Communication Server.
  • Flash uses Unicode, which makes it suitable for internationalization.
  • Like PostScript, SVG and PDF, Flash uses vector graphics; they may translate into small file sizes which take less bandwidth to transmit than bitmaps do.
  • Macromedia has released the specifications of the Flash file format, and compatible third-party tools exist (Macromedia has not released the specifications of Flash-related formats such as AMF though).
  • 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.
  • Flash allows the embedding of images, sounds, movies and simple HTML-like text. Flash Player, from version 6, also support two-way streaming of sound and video, thus making it a suitable platform for high-level multi-user applications.
  • Flash's embedded ActionScript language allows the creation of sophisticated applications using an OOP approach.
  • Flash as a format has become widespread on the desktop market. Through an NPD (http://www.npd.com/) study (http://www.macromedia.com/software/player_census/npd/), Macromedia claims that 98% of Web users have Flash Player installed [1] (http://www.macromedia.com/software/player_census/flashplayer/) – 90% having the latest version. Numbers vary depending on the detection scheme and research demographics: Webhits (http://www.webhits.de/deutsch/index.shtml?/deutsch/webstats.html) (German page) counts only 73% of Flash-enabled browsers.
  • The Flash Player install size is relatively small compared to comparable plugins such as QuickTime, WMP and SVG.
  • Compared to other browser plug-ins, such as Java, QuickTime, or WMP, Flash Player is extremely fast in initializing.
  • Flash supports advanced features for data loading through XML data, querystring-formatted HTTP data, JPEG images, MP3 sounds, other Flash movies, and TCP Socket connections.
  • Flash can retain information locally (in a manner similar to browser cookies), giving the client the ability to, for example, remember the level or score a user has achieved on a Flash-based game, or the settings used on a previously visited website.

Disadvantages

Flash also has some disadvantages:

  • Flash is designed to run as a client-safe application, meaning it is not able to access the local client machine, even if it's run on a standalone player. To be able to save and load local files, as well as access the local system, it needs a wrapper application like Multidmedia's [2] (http://www.multidmedia.com/) Zinc [3] (http://www.multidmedia.com/software/zinc/).
Internet .swf files may not be saved from the browser program. However, a copy is loaded into the browser's temporary internet files folder from where it can be retrieved, although few Web Browsers allow you to save Flash content like Maxthon(formerly MyIE2)*[4] (http://www.maxthon.com/) Flash content is not tied to the HTML framework, so it does not use browser settings for font size, color, etc; Text may appear tiny for vision-impaired people or those with high resolution screens. Users can still zoom in the Flash movie if the developer hasn't disabled this feature.
  • Flash content is binary and thus more challenging for search engines to index than HTML. As a result, sites using solely Flash experience will have decreased visibility for their inner content in search engines. Google, however, indexes the content of Flash files (for example: [5] (http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=sample+filetype:swf)). Macromedia has also released a search engine SDK (http://www.macromedia.com/software/flash/download/search_engine/) to make it easy for search engines to index Flash content.
  • Though the Flash SWF format is an ostensibly "open" format (i.e. it is published), Macromedia retains control of it. 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).
  • 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 (http://www.macromedia.com/software/flash/open/licensing/) and subject to approval.
  • Due to Flash's graphical nature, it does not degrade gracefully for disabled users. Websites have to overcome this by providing alternative content (for example, in HTML) or by using the accessibility features built into Flash since 2002. See also computer accessibility.
  • Depending on the type of application or animation created, a Flash movie may need lots of CPU power to be played at its original framerate. In particular, large screen updates (as in photographic or text fades) make heavy use of computer resources.
  • Recently, a technique for tracking visitor data with Flash's ability to keep user data has arisen. Given the fact that users nowadays are used to deleting their browser's cookies once in a while, some advertisers are using a technique called PIE (http://www.internetweek.com/showArticle.jhtml?articleID=160400749) instead. This technique relies on using Flash to save data on the client machine, emulating browser cookies. (Just like cookies, this data can also be cleaned or disabled altogether; Macromedia has a page (http://www.macromedia.com/support/documentation/en/flashplayer/help/help02.html) explaining this feature).

Flash MX 2004, the latest release, addresses several of the disadvantages. See this discussion (http://www.useit.com/alertbox/20001029.html) of Flash and usability.

Security

Flash Player uses a sandbox security model, which means that Flash applications running in a browser have very strict and limited resources available to them. The applications cannot, for example, read files from the hard disk (except the cookie-like data they themselves have written). They can only communicate with the domain they originated from, unless explicitly allowed by another domain.

Flash Player is, as any application that handles files received from the Internet, susceptible to attacks. Specially crafted files could cause the application to malfunction, potentially allowing execution of malevolent code. There have never been any actual problems, but the Player plug-in has had security flaws which theoretically may expose a computer to remote attacks (see [6] (http://www.macromedia.com/v1/handlers/index.cfm?ID=23569) and [7] (http://www.theregister.co.uk/content/55/28645.html) for a December 2002 problem, addressed by a public warning and patch from Macromedia). There have been no (published) security incidents since. Flash Player is considered safe to use, especially when compared to modern browsers in general.

The Flash application files can quite easily be decompiled into its source code and assets. Several available programs extract graphics, sounds and program code from swf files. For example, an open source program called Flasm (http://flasm.sourceforge.net) allows users to extract ActionScript from a swf file as virtual machine intermediate language ("byte-code"), edit it, and then reinsert it into the file. Obfuscation of the swf files makes the extraction infeasible in most cases.

Competition

In October 1998 Macromedia disclosed the Flash Version 3 Specification to the world on its website. It did this in response to many new and often semi-open formats competing with SWF, such as XARA's Flare and Sharp's Extended Vector Animation formats. Several developers quickly created a C library for producing SWF. February 1999 saw the launch of MorphInk 99, the first non-Macromedia or third party program to create SWF files. Macromedia also hired Middlesoft to create a freely-available developers' kit for the SWF file format versions 3 to 5. Many open and free libraries based on the information released to the public in 1998, and from later study of the SWF file format, such as the Ming library, exist to produce SWF files on many platforms. Macromedia has made the Flash Files specifications for versions 6 and later available only as a PDF under a non-disclosure agreement.

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. F4L has started to develop such a tool including an interface similar to that of Macromedia's.

Adobe wrote a 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.

In November 2003 Microsoft announced that it had started working on a competing product, Sparkle, whose release would coincide with that of their next-generation Windows operating system codenamed Windows Longhorn. The purchase of Creature House Inc.'s assets in September 2003 has led to speculation that their Expression graphics engine would form the basis for the Sparkle product.

Influence

The nature and popularity of Flash has had a large influence in graphic design. Its rotoscoping feature led to the widespread popularity of rotoscoped vector graphics in the default pastel colors of the Flash authoring tools. Many flyers, advertisements, magazines, and even websites which did not use Flash adopted this graphic style. For example, the Apple iPod campaign with character outlines on colorful backgrounds can be seen heavily influenced by the paradigmatic Flash design style.

File types Used

  • .swf (pronounced "swiff" or just "S-W-F") files are completed, published files that cannot be edited.
  • .fla (pronounced "flah") 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 (or sometimes .actionscript) 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, and so on.
  • .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 files contain Server-Side ActionScript, which is used to develop efficient and flexible client-server Macromedia Flash Communication Server MX applications.
  • .flv files are Flash video files, as created by Macromedia Flash or by Sorenson Squeeze.
  • .swc file format for distributing components; it contains a compiled clip, the component’s ActionScript class file, and other files that describe the component.
  • .swt (pronounced "swot") files templatized SWF files used by Macromedia Generator.
  • .flp XML file with the file extension .flp–for example, myProject.flp. The XML file references all the document files contained in the Flash Project. Flash Projects allow you to group multiple, related files together to create complex applications.
  • .avi AVI file is a video file, standing for Audio Video Interleave. Flash includes some compression codecs, like from Radius(that one is good, giving high quality).
  • .gif Animated GIF picture.
  • .png Portable Network Graphics that remain editable (with all its layers) after being saved
  • .spa FutureSplash document.
  • .ssk SmartSketch drawing.

Product history

Future developments

Attendees at selected Macromedia seminars and conferences in 2004 previewed some future features of the Flash player (version 8). The most notable new features included realtime video alpha channels and bitmap effects (blurs, drop shadows). Video alpha channels allow Flash to display video clips with transparency. The example SWF shown used a video clip of a person walking across the screen while the background video clip could be changed by clicking separate buttons. The clip of the person blended seamlessly into whichever background was selected.

Flash guru Colin Moock has a blog entry (http://www.moock.org/blog/archives/000146.html) that highlights some of the new features and provides video clips from Macromedia's presentation in Tokyo.

See also

External links

  • Gremlin UK (http://www.gremlinuk.com/playagame.htm)

Games from Sonic to Streetfighter, made in Macromedia Flash

es:Macromedia Flash fr:Macromedia Flash he:מקרומדיה פלאש nl:Macromedia Flash ja:Macromedia Flash pl:Macromedia Flash pt:Macromedia Flash ru:Flash sv:Macromedia Flash zh:Flash

Navigation

  • Art and Cultures
    • Art (https://academickids.com/encyclopedia/index.php/Art)
    • Architecture (https://academickids.com/encyclopedia/index.php/Architecture)
    • Cultures (https://www.academickids.com/encyclopedia/index.php/Cultures)
    • Music (https://www.academickids.com/encyclopedia/index.php/Music)
    • Musical Instruments (http://academickids.com/encyclopedia/index.php/List_of_musical_instruments)
  • Biographies (http://www.academickids.com/encyclopedia/index.php/Biographies)
  • Clipart (http://www.academickids.com/encyclopedia/index.php/Clipart)
  • Geography (http://www.academickids.com/encyclopedia/index.php/Geography)
    • Countries of the World (http://www.academickids.com/encyclopedia/index.php/Countries)
    • Maps (http://www.academickids.com/encyclopedia/index.php/Maps)
    • Flags (http://www.academickids.com/encyclopedia/index.php/Flags)
    • Continents (http://www.academickids.com/encyclopedia/index.php/Continents)
  • History (http://www.academickids.com/encyclopedia/index.php/History)
    • Ancient Civilizations (http://www.academickids.com/encyclopedia/index.php/Ancient_Civilizations)
    • Industrial Revolution (http://www.academickids.com/encyclopedia/index.php/Industrial_Revolution)
    • Middle Ages (http://www.academickids.com/encyclopedia/index.php/Middle_Ages)
    • Prehistory (http://www.academickids.com/encyclopedia/index.php/Prehistory)
    • Renaissance (http://www.academickids.com/encyclopedia/index.php/Renaissance)
    • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
    • United States (http://www.academickids.com/encyclopedia/index.php/United_States)
    • Wars (http://www.academickids.com/encyclopedia/index.php/Wars)
    • World History (http://www.academickids.com/encyclopedia/index.php/History_of_the_world)
  • Human Body (http://www.academickids.com/encyclopedia/index.php/Human_Body)
  • Mathematics (http://www.academickids.com/encyclopedia/index.php/Mathematics)
  • Reference (http://www.academickids.com/encyclopedia/index.php/Reference)
  • Science (http://www.academickids.com/encyclopedia/index.php/Science)
    • Animals (http://www.academickids.com/encyclopedia/index.php/Animals)
    • Aviation (http://www.academickids.com/encyclopedia/index.php/Aviation)
    • Dinosaurs (http://www.academickids.com/encyclopedia/index.php/Dinosaurs)
    • Earth (http://www.academickids.com/encyclopedia/index.php/Earth)
    • Inventions (http://www.academickids.com/encyclopedia/index.php/Inventions)
    • Physical Science (http://www.academickids.com/encyclopedia/index.php/Physical_Science)
    • Plants (http://www.academickids.com/encyclopedia/index.php/Plants)
    • Scientists (http://www.academickids.com/encyclopedia/index.php/Scientists)
  • Social Studies (http://www.academickids.com/encyclopedia/index.php/Social_Studies)
    • Anthropology (http://www.academickids.com/encyclopedia/index.php/Anthropology)
    • Economics (http://www.academickids.com/encyclopedia/index.php/Economics)
    • Government (http://www.academickids.com/encyclopedia/index.php/Government)
    • Religion (http://www.academickids.com/encyclopedia/index.php/Religion)
    • Holidays (http://www.academickids.com/encyclopedia/index.php/Holidays)
  • Space and Astronomy
    • Solar System (http://www.academickids.com/encyclopedia/index.php/Solar_System)
    • Planets (http://www.academickids.com/encyclopedia/index.php/Planets)
  • Sports (http://www.academickids.com/encyclopedia/index.php/Sports)
  • Timelines (http://www.academickids.com/encyclopedia/index.php/Timelines)
  • Weather (http://www.academickids.com/encyclopedia/index.php/Weather)
  • US States (http://www.academickids.com/encyclopedia/index.php/US_States)

Information

  • Home Page (http://academickids.com/encyclopedia/index.php)
  • Contact Us (http://www.academickids.com/encyclopedia/index.php/Contactus)

  • Clip Art (http://classroomclipart.com)
Toolbox
Personal tools