Free player for Flash movies

Roll `Em!


Until recently, the Flash format has been the uncontested domain of Adobe. Gnash introduces a free Flash player for Linux and BSD with a design that aims far beyond the capabilities of Adobe's king of the hill.

By Erik Bärwaldt

Ferenc Szelepcsenyi , Fotolia

The small web format or Shockwave Flash format has long established itself as a standard for multimedia content on the Internet. Users of video or TV platforms such as YouTube and Lulu.tv enjoy Flash movies, and the format is rapidly conquering the field of professional multimedia educational materials, too.

On top of this, web designers like the format, originally developed by Macromedia, because it supports elaborate graphical animations, allowing them to enhance a website's design. The Flash format's streaming capabilities make it perfect for a narrow-band Internet connection, avoiding the typical waits involved when a user needs to download a movie in a legacy format.

Properties geared to the needs of the Internet age have helped Flash establish itself in record time; however, the format has one major disadvantage: As a proprietary software, it is not freely available, and development is currently in the hands of just one company, Adobe.

Flash in the Browser

What is by far the most widespread player software for Flash animations is also by Adobe and only available as a plugin for various web browsers, not as a standalone player. The disadvantage of this is that, for example, training videos will only run in a web browser. Adobe offers variants of its Flash player for Linux as a free download [1]. The plugin supports any recent Mozilla-based browser, such as Firefox or Seamonkey, as well as Opera.

To allow Linux users to choose a free Flash player, the Free Software Foundation launched the Gnash Project [2]. The name is a combination of the words "GNU" and "Flash." The free Gnash player aims to provide not only the same functionality as the Adobe player - as a plugin for popular web browsers - but also to add standalone capabilities that make it easier to use Flash movies in educational scenarios.

The software is still in alpha, but development is progressing nicely. Source code archives and documentation in various formats are available on the web [3]. Building a binary from the sources can be a trying experience, even for more versed Linux users, because of the many dependencies you need to resolve. Fortunately, Gnash binary packages are now available for almost any popular distribution and its derivatives [4][5][6].Besides the archive, you also need to download the Libgnash0 and Libgtkglext1 libraries to fulfill the dependencies. If you will be running Gnash Player as a plugin for a major browser, you also need to install the mozilla-plugin-gnash package on your system.

After completing the installation, you will find Gnash in the Applications | Entertainment menu on Gnome; look for the Gnash SWF Viewer entry. If you click on the menu entry, nothing much will happen at first. If you right-click an SWF file you have stored locally and then select the Gnash Player, a spartan-looking window will appear and play the content of the file.

So far, the only way to control Gnash is to right-click in the program window, which lets you fast forward or reverse the movie and gives you access to typical functions such as Start/Stop, Pause, Close, and Quit. As of this writing, there is no menu.

Functionality

The free Flash Player left me with an ambivalent impression in our lab - although the browser plugin played various samples and video files from YouTube without any trouble, the standalone player was unable to handle any of the Flash animations I fed to it without throwing an error (Figure 1).

Figure 1: The fish obviously feel quite happy with Gnash in the browser.

Either visual aspects of the movie had issues or the sound was distorted or even missing, deficits attributable to the proprietary nature of the Flash format. Those wanting to develop a free player for SWF files can't expect Adobe to disclose the Flash specifications to them. The only option you have is to painstakingly reconstruct the codec, a time-consuming trial and error procedure.

On top of this, Adobe typically introduces new technologies with each new version of the format, so it is not enough to develop a codec for just one version of the Flash format. On the contrary, the developers are forced to follow every single step that Adobe takes, which is why the Free Software Foundation is not attempting simply to support version 4 of the Adobe format with Gnash, but to implement the full feature set of the latest version 7.

One thing noticeable about Gnash is how quickly the movie appears in the browser plugin - this is because of the player's excellent streaming abilities. The quality of the playback is fine for even the most exacting requirements. After all, Gnash uses OpenGL for hardware-based 3D support. Another positive is a lack of stability issues with the two Gnash versions I tested, 0.7.2 and 0.8.1. The CPU load was also well within limits.

Conclusions

Gnash has finally gotten the ball rolling in the Flash player landscape. The software, which is currently still at the alpha stage, is developing quickly with the Free Software Foundation pushing to provide a free alternative to Adobe's Flash Player.

Gnash has a number of conceptional advantages compared with its proprietary Adobe counterpart; for example, the player is also designed as a standalone application and does not depend on a web browser. Additionally, Gnash's amazing streaming capabilities are already starting to shine through.

Because it keeps system load pleasingly low, Gnash is suitable for use on less powerful machines, and the image quality is excellent. The short release cycles show that Gnash is a high-priority project, and bugs in the current alpha version should be resolved fast. In short, it looks like Gnash will soon be a genuine alternative to the Adobe Player.

INFO
[1] Download: http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash
[2] Gnash: http://www.gnu.org/software/gnash
[3] Gnash sources: http://www.gnu.org/software/gnash/#downloading
[4] Packages for Fedora/RHEL: http://dag.wieers.com/rpm/packages/gnash
[5] Packages for Ubuntu: http://packages.ubuntu.com
[6] Packages for Mandriva, openSUSE: http://rpm.pbone.net