# Glossary

## A

ActionScript

ActionScript, or "AS", is the scripting language for SWF applications. It is compiled to bytecode, which is a subset of the SWF format.

AGG

AGG is the AntiGrain 2D graphics library, which can be used as a renderer in Gnash. It is faster than OpenGL on systems without hardware graphics acceleration. As of Gnash version 0.8.2 it is the more feature complete renderer.

AMF

AMF is the object format used by SWF for shared objects and streaming video.

as_environment

In Gnash terms, the as_environment, or ActionScript execution environment, contains a stack of objects, characters and values which are in the immediate environment of the current fn_call. Please refer to the Gnash ActionScript manual for more information.

## C

Cairo

Cairo is a 2D graphics library with support for multiple output devices. Can be used as a renderer in Gnash. A useful feature of Cairo is that it will automatically use graphic card acceleration when available. Cairo has an experimental OpenGL backend.

## D

DejaGNU

DejaGNU is a framework for testing software.

DocBook

DocBook is a markup language for presentation-neutral documentation, such as manuals.

Doxygen

Doxygen is a documentation generator for for multiple languages which uses comments in the source code to create stand-alone documentation.

Drupal

Drupal is a CMS/blog system used for the main Gnash website.

## E

extensions

A &app; extension is a plugin (not a browser plugin) which implements additional functionality beyond what is covered by the SWF specification. These are shared libraries which are loaded at runtime.

## F

FFmpeg

FFmpeg is an audio and video decoding library which can be used by Gnash to decode mp3, FLV and other media types.

Flash

The term Flash is used to describe both the Adobe IDE for creating SWF files, and Adobe's player. Flash is a registered trademark belonging to Adobe.

FLV

FLV is a proprietary file format used to deliver Flash video. It is used by YouTube, among others.

FLTK

FLTK, or the 'Fast Light ToolKit', is a portable GUI library which is intended to replace the SDL GUI. Currently in Gnash, FLTK may be used with the Cairo and AGG renderers. FLTK has an experimental Cairo backend.

FrameBuffer

In Gnash, this is a GUI library that outputs directly to the Linux Frame Buffer and so does not need a window system to run. This makes it particularly suitable for use on small devices.

## G

Gnash

Gnash is the GNU Flash movie player.

Gstreamer

Gstreamer is a multimedia framework which Gnash can use for decoding audio and video. Gstreamer itself cannot decode anything, so it needs some appropriate decoding-plugins to do the work for it. Remember to install them if you use Gnash with Gstreamer enabled. To get the best out of Gnashs gstreamer-parts, it is recommended to install the gst-plugins-good, gst-plugins-good and gst-ffmpeg plugins packages.

GTK

GTK is the GIMP Toolkit GUI library. It is one of the GUI options for Gnash. As of Gnash 0.7.2, this is the more performant and feature-rich choice. GTK uses Cairo internally.

GUI

A GUI is a "graphical user interface". In &app;, the GUI library provides a wrapper for mouse and keyboard events, menus, windowing (where available) and a drawing area. You must choose a GUI library during the configuration stage of building Gnash.

## K

kde-gnash

kde-gnash is the name given to the stand-alone instance of &app; which used the KDE GUI. It has been replaced with an implementation using Qt. The Konqueror plugin runs kde-gnash and is called Kparts.

Kparts

Kparts is a plugin for Konqueror which is enabled with the configuration option --enable-kparts.

## M

Mesa

Mesa is the free software OpenGL implementation. &app; documentation will sometimes use the glossterms 'OpenGL' and 'Mesa' interchangeably.

Ming

Ming is a C library for generating SWF format movies, plus a set of wrappers for using the library. It is used by the Gnash project for generating testcases.

## N

Nellymoser

Nellymoser is a proprietary audio codec introduced in the Flash Player in version 6. For more information, please see Wikipedia.

## O

OpenGL

OpenGL (Open Graphics Library) is a standard specification defining a cross-language cross-platform API for writing applications that produce 3D and 2D computer graphics. Accelerated graphic cards usually provide OpenGL at the hardware level. Please refer to Wikipedia for availability of free software OpenGL hardware drivers. A free software implementation of the API is available (Mesa). OpenGL can be used as a renderer in Gnash.

ORM

ORM is a system for ensuring the rights of the creator over a piece of digital content. It is more passive than DRM.

## P

plugin

The glossterm plugin is used in &app; to refer to both any &app; browser plugin, as well as the Firefox plugin specifically. The Konqueror plugin is called Kpart. Sometimes, the term is used in an even more generic sense to refer to extensions.

## Q

Qt

Qt is a GUI library which is used by KDE. The plugin version of Gnash using this GUI library is Kpart. The standalone version is enabled with --enable-gui=kde.

## R

renderer

The renderer is the subsystem of &app; which renders content. Only one renderer may be used; it is selected at configuration time if building from source.

Available renderers are: AGG, OpenGL, and Cairo. In terms of feature completeness, AGG comes first; followed by OpenGL and then Cairo. In most cases, AGG is preferred for performance, except cases where it is beneficial to have hardware accelerated rendering (for example, when you have a very slow CPU but a very fast graphics card). In this case OpenGL should be used.

RTMP

RTMP is the Real Time Messaging Protocol primarily used with to stream audio and video over the internet to the Flash Player client.

RTMPT

RTMPT is basically a HTTP wrapper around the RTMP protocol that is sent using POST requests from the client to the server. Because of the non-persistent nature of HTTP connections, RTMPT requires the clients to poll for updates periodically in order to get notified about events that are generated by the server or other clients.

RTMPTS

RTMPTS is the same as RTMPT, but instead of being a HTTP wrapper, it is a HTTP SSL wrapper (HTTP secure connection).

## S

SDL

Simple DirectMedia Layer is a cross-platform multimedia free software library that creates an abstraction over various platforms' graphics, sound, and input APIs. Gnash can use it as a GUI and/or as a sound handler. Note that the two usages are independent of each other: you can use it for a task and not for the other if you wish. This version of Gnash does not implement menus in the SDL GUI; the SDL sound handler is the most feature rich, supporting video through FFmpeg.

sound handler

The sound handler is the part of &app; which handles both event sounds and streaming sound. Audio from external sources is sent through the sound handler when SDL is used. The sound handler must be selected during configuration of Gnash when compiling.

There are currently two sound handlers available in &app;: FFmpeg and Gstreamer. The ffmpeg sound handler uses SDL for mixing. The Gstreamer-sound handler uses the available plugins to decode the audio, so it might not work if some important plugins are missing. The GST sound handler is recommended (the default).

sprite

A sprite is an element of an Flash Movie. It's basically a Movie inside another, having its own timeline.

Stage

The visible area of a Flash movie. The name derives from a theater analogy. Graphical elements are referred to as characters.

SWF

SWF is the generic name for Flash movies.

## T

Tamarin

The Tamarin project seeks to create an open source implementation of the ECMAScript 4th edition language specification. The code is used by Adobe as part of the ActionScript Virtual Machine within the Adobe Flash Player. Gnash does not use Tamarin; it already has a working virtual server and most ActionScript classes are implemented.

timeline

In Flash technology, a timeline is a sequence of "frames". A single Flash movie can contain multiple timelines, each independently controlled (STOP or PLAY). At regular intervals (FPS) the player advances all timelines in PLAY mode to the next frame, looping back when last frame is reached.

## X

X.org

X.org is the most commonly used X server; it was forked from XFree86.