Rumors of new Gnash functionality exaggerated

A free Flash viewer is one of the last major gaps in GNU/Linux desktop functionality, so last week's news that Gnash, the free Flash player, had reached the stage where it could play YouTube and Lulu.tv videos seemed too good to be true. Unfortunately, it was.

The report seems to have originated on the project blog, where a cautious statement in the Readme file for the recently released version 0.8 -- described as a "third alpha" -- became less qualified. By the time the news reached the online media, all qualifications had vanished.

However, testing the experimental Debian packages provided by Miriam Ruiz suggests less glowing results. While the new release is an improvement in Gnash, it is far less of a major milestone than reports made it.

The last time that Linux.com reviewed the progress of the project, it was at version 0.71 and consisted of a player as well as plugins for common Web browsers. At that stage of development, Gnash was still implementing Flash opcodes and ActionScript support for Flash 7, and support for sound was erratic at best and nonexistent at worst. The next release, version 0.72, was little different, with numerous gaps in the support for ActionScript functions introduced in Flash 8 and 9.

The good news is that sound is implemented in the latest version of Gnash. It's a little tinny compared to the results using the Adobe Flash Player, but it's there. In addition, the Gnash window has also gained some polish, with a number of preferences to help you debug problems. You can now set the verbosity of the messages that display, and set up log and security options. You can even disable sound if you're determined to play a troublesome Flash file.

The graphical interface lacks some of the controls available when running Gnash from the command line, such as the ability to scale the size at which files display or to set the delay before replaying. Still, on the whole, Gnash is about where you would expect it to be at the end of a series of alpha releases, providing basic, but not completely reliable, performance.

The bad news is that Flash functionality remains incomplete. If you are interested, you can read a list of functions that are partially implemented or completely unimplemented in the Readme file that in the source code. Briefly, though, as with earlier releases, the unimplemented functionality consists of a few Actionscript functions from Flash 7, and many from Flash 8 and 9.

Some of the unimplemented functions are ones used in a Flash media server, such as the ability to capture sound from a microphone or images from a camera attached to your computer. If your main interest is simply running Flash files from your desktop, such functionality is unimportant. Other missing functions, however, are more basic, such as the ability to display and input text. If you want to see exactly what functions are missing when running a particular movie, you can run Gnash from the command line with the -v option to display messages, or the -va option to include movie options, or the -vp option to view how Gnash parses the movie.

The upshot is that you can never be sure what will happen when you try to run a random file from YouTube or Lulu.tv in Gnash. Some files will run flawlessly, aside from being extremely slow to load, though if my experience is typical, those cases are in the minority. At least four out of five times, a file from those sites will not load at all. Once or twice, in my testing, the entire desktop froze. Neither site lists the version of Flash used in its movies, but, presumably, the trouble is that most are made with the latest technology, and few users are concerned enough with backward compatibility to produce files in an older format like Flash 7.

Going further afield, I found that Flash Web page controls almost always worked -- either because they require relatively basic functionality, or because experienced designers have the sense to avoid designs that depend on the latest software versions. Flash games gave mixed results. The multiple choice questions and puzzles beloved by Flash course designers did not work at all, as you might expect from the presence of TextField and TextFormat in the list of partially implemented ActionScript functions. Instead, blank white space appears where the text should be, check boxes are missing altogether, and puzzle pieces refuse to move.

None of these comments are any reflection on the work done by the Gnash development team, which makes no pretense that their work is at a beta, let alone a pre-release level. The problem is the media reporting an exaggeration as fact without actually bothering to test Gnash.

The bottom line remains the same as it has always been: despite improvements, Gnash remains unready for everyday use. For now, you either have to use the non-free Flash Player from Adobe or do without Flash altogether.

Bruce Byfield is a computer journalist who writes regularly for NewsForge, Linux.com, and IT Manager's Journal.