Archive for October, 2006

Not Completely Open Source, But…

Tinic has developed an interface that will allow developers to extend parts of the Linux Flash Player, most notably the audio output functionality. While Player 9 for Linux only supports ALSA output, this flashsupport mechanism will allow you to write output drivers for your own favorite pet audio API. Here are the full details:

Additional Interface Support for Linux

It’s all still rather experimental but we hope this will lay the groundwork for opening up more interfaces which will allow the Player to adapt to Linux’s natural evolution.

What’s So Difficult? 64-bit Edition

I have been asked to clarify the 64-bit situation in light of the recent Flash Player 9 beta for Linux (which, as some have lamented, should have been labeled as the beta for Linux/i386). So here it is:

The Flash Player 9 beta Players (plugin and standalone) are compiled as Linux i386 ELF files. These binaries are designed to operate natively on i386-class computers.

However, you may have read forums and comments about people running the beta successfully on x86_64 machines (a.k.a. AMD64 or EM64T). Yes, it is possible, though the setup is not as straightforward as with an i386 machine. There are basically two approaches:

  1. Run an i386 kernel and pure i386 system on your x86_64 machine– not a great solution, but it works
  2. Run a limited i386 system inside your x86_64 machine– in this approach, you run a pure 64-bit system but with just enough 32-bit support libraries to enable the i386 Flash Player to run

Some Linux distros make this 32-bit support process more ergonomic than others. I see that my favored distro, Gentoo, has a masked ebuild for the AMD64 architecture.

What about a native 64-bit binary? Tinic summed it up succinctly in his Linux beta post:

What about 64bit? There is no Windows 64bit or OS X 64bit version either right now. As I said before it is not a question of ‘recompiling’ the source code, there is lots of generic non platform specific work which needs to be finished first. We will ship a 64bit version for Windows, OS X Leopard and GNU/Linux. It will happen. When? … When it is ready.

64-bit support is not just a recompile away. And no, this is not due to treating memory pointers and 32-bit integers interchangeably. There are assorted non-portable pieces that need to be upgraded first, notably the JIT compiler in the virtual machine (transforms ActionScript into native x86_64 code) and the garbage collection engine. Tinic outlined these items in this post.

One more item: A number of users have noted that the minimum requirements for the beta Player list 128 MB of video RAM. I have no idea where that number came from but I’m pretty sure it’s overstated. Don’t be afraid to test the beta even if you have significantly less VRAM.

More Free Stuff

The Flash Player 9 (beta) [for x86] is not the only Linux-related Flash thing that Adobe is giving away. Check out Flex 2 for Linux, also on Adobe Labs. Using the new Player 9 beta, you can watch James Ward’s brief video that demonstrates how to create, compile, and test a Flex app entirely using free Linux-based tools.

Sky’s the limit. Go forth and spread SWF.

Beta Is Live

Go get it.

This is the beta. Here are the release notes.

While we are still working out exactly how to distribute the final Player version to be as easy as possible for the typical end user, this beta includes 2 gzip’d tarball packages: one is for the Mozilla plugin and the other is for a GTK-based Standalone Flash Player. Either will need to be downloaded manually via the Adobe Labs website and unpacked. The standalone Player (gflashplayer) can be run in place (after you set its executable permission). The plugin is dropped into your local plugin directory (for a local user) or the system-wide plugin directory.

More thorough instructions are available in the individual packages. Go to this page to make sure it worked. The version should read 9,0,21,55.

Please note that bug reports will not be accepted in the comments of this blog. There is a more appropriate place for bug reports (check the forums and bug/feature request form).

Chatter

In the interest of maintaining some transparency translucency through this process, I would like to report that things are going well. As a higher-up expressed in a recent status report, the Linux dev people have managed to fix a ton of bugs, while the QA folks have uncovered just over a ton of bugs. So rather than blogging, the focus has been on fixing specific bugs ferreted out by hammering against our massive test suite while learning even more about Flash in the process (“A SWF can create custom context menu items bound to keyboard accelerators? Seriously?”).

In other news, a beta of Flash Player for Windows Vista is available for download and testing.

There is chatter about an impending beta release of the Linux Flash Player. I’m not allowed to confirm or deny any dates. But the Flash Player project manager mentioned, “QE has not skipped a beat and is starting the beta certification of the Linux player which will go live on Adobe Labs when it passes the certification tests.” The optimist Ryan Stewart predicted earlier this week that he expects the beta to go live next week, but later revised the estimate to 2 weeks.

James Ward posted a juicy screenshot of Flash Player 9 on Linux running a Flex app. That made him happy. His post was so upbeat that the first couple of times I skimmed it I completely missed the part about “there are still frequent browser crashes”. I took exception. That was our state a few months ago (“the Linux Flash Player currently crashes. A lot.”). But I expect the crashes to be very few and far between at this juncture. When pressed on the matter, he conceded that crashes weren’t actually that frequent anymore. And that made me happy.