Gnash

From OLPC
Revision as of 10:13, 29 September 2008 by Object404 (talk | contribs) (Differences between Gnash (XO) and Adobe Flash)
Jump to: navigation, search

Gnash is a GNU Flash movie player and as a plugin to Browse is the default Flash player on the XO. It is the free software counterpart to the Adobe Flash player.

About Flash

Wikipedia has a good overview of the various Flash technologies. Flash animations and games typically have the .swf extension, while Flash videos typically use the .flv extension. Flash technologies include the ActionScript virtual machine, as well as many proprietary codecs that are covered by patents.

Differences between Gnash (XO) and Adobe Flash

Many flash applications and movies that work with Adobe Flash will not work on the XO. This can be frustrating due to the large and growing base of animations, tutors, and other content available for Flash. These include:

The Gnash team faces several challenges. The primary challenge is the number of basic encoding schemes, such as MP3, that are covered by patents. While Gnash supports these proprietary codecs, the OLPC cannot or will not ship codecs to support the proprietary schemes. Another challenge is that Adobe had not provided full information about SWF files, though a recent Stanford class and contributions to Mozilla's Tamarin project points towards some additional openness.

Note that SWF files continue to evolve. While Gnash provides good support for SWF version 7, support for later version is more challenging. Gnash emulates Adobe Flash's Actionscript Virtual Machine 1 (AVM1 - used by Actionscript 1.0 and 2.0), but not Actionscript Virtual Machine 2 (AVM2) and thus cannot play Flash 9 & 10 content that has been authored in Actionscript 3.0. Finally, Gnash depends on a number of rapidly evolving libraries, such as Gstreamer which hamper stability.

The easiest way to get Flash to work with Gnash is to get developers of the Flash content to test with Gnash. See also Game Development with Flash on the XO-1.

Shipping Adobe Flash Controversy

Adobe provides Flash under a free, but somewhat restrictive license. Adobe's license clearly restricts any party besides Adobe from making Flash libraries available on the Internet, and may make it possible to distribute within an Intranet. Some, such as Bryan Berry, have speculated that providing Flash plug-ins as downloads in certain deployments would further the educational goals of the overall project.

Other voices suggest that providing more incentives, better tools, and more complete implementations for Flash developers may help them to embrace open formats. There is some undesirability of a long term dependence on a commercial entity for core functionality or core file formats.

Example Videos

Playable in Gnash on the XO

Playable on the XO using neither Gnash nor Flash

Not playable in Gnash on the XO

Upgrading Gnash

Enabling and disabling Gnash

You can uninstall or reinstall Gnash as you would any package: from the Terminal Activity,

sudo yum remove gnash -y

or

sudo yum install gnash -y

After which you will want to reboot.

Links