C++ Development and Consultancy - Open-Source Flash

Gnash optimization

Gnash has recently been benefiting from some performance enhancements.

Sandro Santilli started profiling ActionScript execution and noticed some serious bottlenecks in the way Gnash handles property identifiers.

Gnash for Windows

Gnash now runs under Windows (32-bit). I've published binary executables with corresponding source archives in the download area.

The Windows executable uses SDL for the GUI and sound, AGG as a renderer, and FFmpeg (LGPL) as its media handler.

It is built using mingw32 under GNU/Linux and only minimally tested in a real Windows environment, so expect teething problems.

These are unofficial binaries and are not supported by the Gnash team. Please report bugs with the executables to me directly, not to the Gnash bug tracker!

Responses to Gnash 0.8.8

The release of Gnash 0.8.8 met with a generally favourable response. Here are a couple of more detailed reviews:

New features for Gnash 0.8.9?

3D Rally Racing

Six months ago I published a list of possible improvements for Gnash 0.8.8. The list was:

  1. Reliable text handling.
  2. BitmapData draw() function.
  3. RTMP.
  4. Dynamic focal gradients, gradient spread and interpolation modes.
  5. Playback of obfuscated SWFs.
  6. Direct conversion of SWF to video using ffmpeg.

The bad news first: only one of the list made it into 0.8.8. This was the gradient item, where focal gradients and spread modes are now implemented.

Gnash 0.8.8 Released!

The release of Gnash 0.8.8 brings various improvements to rendering, ActionScript execution, compatibility, and flexibility.

But the most significant change is more of a removal than an addition: Gnash no longer has any AVM2 code. AVM2, the ActionScript Virtual Machine introduced in the Flash player 9, is increasingly used in new Flash movies.

It was becoming clear that the original implementation (started in about 2006) of the newer ActionScript Virtual Machine was fundamentally flawed. So fundamentally that it was obstructing code for the old virtual machine without any benefit to Gnash at all.

Safe Surfing

Gnash features in the Safe Surfing CD distributed free by the German Computer BILD magazine.

The safety organization TÜV Rheinland and the Federal Office for Information Security (Bundesamt für Sicherheit in der Informationstechnik) were involved in the CD's development.

Gnash under Clang

Gnash is now completely compilable and optimizable with the LLVM frontend Clang. The AGG renderer headers have one C++ bug that causes an error. This needs to be fixed externally if you want to use that renderer, as it seems legitimate for a compiler to reject it (even if GCC doesn't).

Clang has already helped to find a few bugs in Gnash. Some warnings picked up things that GCC missed. And most interestingly, there were cases where Gnash's behaviour was relying on the order of evaluating function arguments.

The FLA format: update

There is now a wiki page dedicated to the FLA format. It will always contain the latest known information about the format: currently not much more than when I published the original data.

If you can contribute anything else, feel free to add to the page!

Adobe: Flash is open! There's ... Gnash?

Now Gnash is part Adobe Flash's rich developer ecosystem ...

The page, "the Truth about Flash", claims:

Finally, the Flash Platform has a rich developer ecosystem of both open and proprietary tools and technologies, including developer IDEs and environments such as FDT, IntelliJ, and haXe; open source runtimes such as Gnash; and open source video servers such as Red5.

Trennt Euch!

Ein gewisses Riesensoftwareunternehmen aus den USA betreibt momentan in München eine Werbekampagne mit dem Slogan "Münchener, trennt euch". Nun ja, ein bissl provokativ ist es, nur man sieht aus der Ferne die Webadresse nicht, die dazu gehört. Was kann das denn bedeuten?

Aber nachdem ich heute Werbepost bekommen habe, wurde es mir klarer: Microsoft will mit dem Werbespruch Hardware verkaufen.

Syndicate content