Flash Format

Flash File Format (also known as SWF File Format, pronounced swiff) is an open file format created by Macromedia. It is used for presenting database applications, web services, vector animations, video and sound either across the internet or on CD. In the former case, the content is rendered inside a web browser using a browser plugin known as the Flash Player.

The Flash player
The Flash player is available free of charge for many operating systems, including Linux. The player is also avaliable repackaged for easier installation on most distros. It is possible to run the Windows version of the Flash Player on Linux, using the Crossover Plugin from CodeWeavers.

There is a long standing issue with sound lag during longer animations. This should have been fixed when version 7 was released for Linux, however it was not fixed and the issue still stands.

Most distributions do not come with the player because it is not Free Software.

Creating Flash files
Flash content is timeline based, and uses a proprietary scripting language called ActionScript (this closely resembles JavaScript, and is similarly based on the ECMAScript standard). Applications can be created using Macromedia's Flash development application, or with various other software. No official Linux version of the Macromedia IDE is currently available; however:
 * The open source Flash 4 Linux is a work in progress at time of writing (March '04).
 * Macromedia has indicated that it may port its IDE to Linux when it thinks it can make enough money out of it. In the meantime, they are optimisng their Windows version to work with Wine.
 * OpenOffice Impress can export presentations to swf. This can be very useful because it allows them to be shown on a computer without any specific presentation-viewing software.
 * Java/swf is a pure Java library for parsing and writing sfw format, similar to Java tools for parsing and writing XML

In the meantime, many users successfully run the Windows version of Macromedia's IDE under Wine.

Opinions on Flash
The Flash format still has fundamental usability obstacles to overcome. For instance, because a Flash application must be presented in a plugin within the browser, there is no simple and reliable way to store a browser bookmark to a specific page within a Flash application. Browser forward and back buttons cannot be used reliably to display different pages of a Flash application. When refreshing a web page in a browser, the Flash application will always restart, and fail to return to the point where the user left it (unless the developer has anticipated the problem and written code to cater for it).

Despite these limitations, Flash has remarkable capabilities, and certainly should not be dismissed as a one-trick app for producing annoying web animations.

Despite swf being an open standard, some people have complained that the unusual binary format does not encourage third party development. For example if the format were XML based like svg, files could be read and created using pre-existing, general-purpose tools.