We won’t be seeing it until early 2007, but Adobe is hard at work on bringing Flash Player 9 to Linux. In a series of recent blog postings, Adobe’s lead engineer on the Flash Player team, Mike Melanson, has been keeping the Linux community up to date with Adobe’s plans.
Adobe’s main goal is to create a Flash Player 9 that is feature-comparable to its Windows and MacOS offerings. Another, according to a recent interview with Melanson, is to enable proper audio/video synchronization. In the last version of Flash that was available for Linux, Flash Player 7, this was a significant problem.
Melanson promises that Linux users will get it this time, because, “Adobe is purging … the OSS (Open Sound System) audio API in favor of the ALSA (Advanced Linux Sound Architecture).” While the Adobe engineers have run into some problems with ALSA, they’ve been able to overcome them.
At the same time, though, while Adobe will be using the up-to-date ALSA, it will be sticking with some older technologies that are on their way out. The primary example of this is Flash 9’s support of V4L (Video4Linux) API version 1 for camera input, instead of version 2.
The reason to support V4L1? “Lots and lots of camera drivers provide V4L1 facilities,” and, “comparably few camera drivers provide V4L2 facilities,” Melanson said.
While V4L2 is integrated into the Linux 2.6 kernel, V4L1 is clearly hanging on. As a Video4Linux site states, “A number of drivers don’t support the new v4l2 API yet, so we’ll likely see v4l and v4l2 coexist for some time.”
So why doesn’t Adobe do both? Well, you can only program so many things at one time. Nevertheless, while Adobe isn’t promising anything, it’s possible that the Player will include V4L2 support.
As Melanson said in an earlier blog posting, “To be sure, it’s not that Linux can’t do XYZ, it’s that there are so many ways to do XYZ. And forget about making these different methods interoperate where conducive.”
For the UI (user interface), Adobe is using GTK. But, Melanson said, “People [should] not to get too hung up on this UI issue because Flash keeps its interaction with system UI toolkits to an absolute minimum.”
Still, Adobe is considering native support for both GNOME’s GTK and KDE’s QT. On August 31st, Melanson asked, “Here is a hypothetical: what if the Flash Player were to detect during runtime whether it should use GTK or KDE/QT facilities? The biggest issue here would be reliably and automatically detecting which kit to use.”
Finally, Melanson recently announced that there will be a public beta; it just won’t be as soon as many people would like.
“It will be a beta in the classical software engineering sense — i.e., a version that we believe to be largely bug-free and submitted to the users in the hopes that the last of the bugs will be found and reported,” said Melanson.
“Why are we stubbornly refusing to release, say, an alpha version now” asked Melanson? “Primarily because there are known bugs in the Linux Flash Player, and because we know what the bugs are, and we are on track to fix these known bugs. If we were to release an alpha now, we would likely be inundated with reports about bugs we already know about.”
Look for news of the beta to appear later this fall on Melanson’s blog, Penguin.SWF.