Sunday, November 16, 2008

64-bits

Today we announced the availability of the Adobe Flash Player browser plugin for x86_64 Linux distributions. It is a preview release which has known bugs but should be fit initial testing by the community.

With this release we are tackling one the most requested feature ever for the Linux version of the Flash Player, even before windowless mode support. My personal hope though is that the constant flood of complaints we get about this every day will finally come to an end.

I've shown the 64 bit version of the Linux version to the public a couple of months ago, at the Flashforward 2008 conference and I have spent time stabilizing it since then. Sadly we have received zero contributions to make the open source Tamarin VM work properly in 64-bit mode on Linux which would have possibly allowed us to get this done sooner. The good news for me personally is that I now have a thorough understanding of the different x86-64 calling conventions and the instruction set.

The areas which remain untested and non-functional are the following:
  • Camera
  • Microphone
  • Fullscreen playback using OpenGL
  • Various Flash Player 10 specific features
This initial version has no .rpm or .deb packages and is therefore intended for advanced users. We still have work to do to reduce the number of dependencies of the binary and handle situations where installing this plugin might conflict with packages like nspluginwrapper.

Talking about nspluginwrapper: I strongly suggest not to use it. I know that some distros are thinking of even wrapping 64-bit plugins including Ubuntu with the thought that it will improve security and stability of the browser. This is a very bad idea in the state nspluginwrapper is in today. We have done some internal testing and discovered that several features in the Flash Player are broken when the plugin is wrapped. More importantly performance and user experience is pretty bad when the plugin is wrapped. Why? Lots of data needs to be transfered through IPC channels. I hope that browser vendors will eventually come up with a better architecture to wrap plugins without sacrificing performance, stability and functionality.

Please do report bugs or other issues you find using the right channel. And that means our public bug database:

https://bugs.adobe.com/flashplayer/

Comments on blogs, other web sites or 3rd party bug databases are not tracked by our quality assurance team. You are welcome to cross reference when you submit bugs though.

Now for some random items:
  • All SIMD optimizations which where in the 32bit version have been ported. No exceptions.
  • The 64-bit version is not faster than the 32-bit version as the 32-bit version was already well optimized. Scott Byer explained why some time ago: 64 bits...when?. You will see a big difference though when you get rid of nspluginwrapper.
  • The first release of 64-bit Flash Player code was actually part of Adobe Photoshop Lightroom 64-bit in form of an authplay.dll which is a plugin for applications. Second one was with Adobe Photoshop CS4 64-bit, also as an authplay.dll.
  • The first 64-bit plugin for a browser we ship is this Linux version. Windows and Mac will come later.
  • The 64-bit version of the plugin compiles and runs on FreeBSD 7.0 which I demoed at Flashforward 2008. There are no plans for release yet as it is still rather unstable and will require substantial work to get it ready for public consumption.
  • A debugger version of the 64-bit version is not available yet. When we release it ActionScript 2 debugging will not work due the obsolete protocol which depends on 32bit pointers. ActionScript 3 debugging will be supported.

35 Comments:

Blogger Claude Gagné said...

Great job !

Sunday, November 16, 2008 10:44:00 PM  
OpenID pantsgolem said...

Sweet! I've been having some major stability problems recently with nspluginwrapper, so this is timely news for me.

Sunday, November 16, 2008 11:49:00 PM  
Anonymous Anonymous said...

Thank you. Let the testing begin.

Monday, November 17, 2008 12:53:00 AM  
Anonymous Runiq said...

Thank you for finally tackling this, we've been looking forward to it for ages. :)
On the Requirements page it said that Flash 10 inly supports ALSA as a sound architecture. Is there a chance that OSS will be supported as well?

Monday, November 17, 2008 1:42:00 AM  
Anonymous David Wilhelm said...

Great! I look forward to leaving nspluginwrapper behind. This definitely improves flash's credibility as a cross-platform er, platform :) Hopefully AIR will soon also work on 64-bit linux too?

Monday, November 17, 2008 2:32:00 AM  
Anonymous Anonymous said...

Thank you. Thought this day would never come :-)

Monday, November 17, 2008 2:42:00 AM  
OpenID Vadi said...

Thank you!

What is this 'Tamarin VM' though? I've never heard of it.

Monday, November 17, 2008 5:41:00 AM  
OpenID markattap said...

I have an idea, why don't you complain about lack of contributions to an open source project (which has nothing to do with flash), then lambaste the only way for people to use flash on "alternative" browsers, namely "nspluginviewer" (which, coincidentally has nothing to do with 64bits).

Classy!

And on-topic too.

Monday, November 17, 2008 7:38:00 AM  
Blogger Crank said...

Wow!

Monday, November 17, 2008 7:58:00 AM  
Blogger hub said...

You didn't get any contribution to Tamarin because Tamarin alone is just useless. People (or corporation) contribute to Free Software because they need it (address a bug or a feature). You would have released a functional Flash player with Tamarin as Free Software, you'd have gotten more contribution, because that was useful.

Monday, November 17, 2008 8:15:00 AM  
Blogger Simone Malacarne said...

Hell is starting to freeze right now :D

Thank you for your job, can't wait to try it :)

Monday, November 17, 2008 8:20:00 AM  
Blogger Steven Johnson said...

Vadi: Tamarin is the virtual machine that runs ActionScript 3. For more information, see http://www.mozilla.org/projects/tamarin/

markkattap: to the contrary, Tamarin is at the heart of the Flash Player and is essential to it; without a 64-bit port of it, 64-bit Flash is a nonstarter.

Monday, November 17, 2008 8:55:00 AM  
Anonymous Steve` said...

Great job, fast, stable ... I love it.

Monday, November 17, 2008 12:55:00 PM  
Blogger Cláudio Esperança said...

It works like a charm in Ubuntu 64.

Thanks a lot for all the hard work.

Monday, November 17, 2008 1:45:00 PM  
Blogger Jengu said...

I'm not accusing (I really just don't know), but what has Adobe done to foster a community around the Tamarin VM so that there would be people around to do a 64-bit port? And is there any incentive for the open source community to try and develop a 64-bit port outside the benefit to closed source flash? I know Tamarin was going to be used in Firefox, but Firefox already has a working 64-bit javascript interpreter. Tamarin could be better, but if Firefox 64-bit had no javascript support at all you'd probably see more people jumping on the bandwagon. Also, the easier 32-bit integration (easier since Tamarin started 32-bit) still seems to be unfinished.

Monday, November 17, 2008 5:13:00 PM  
Blogger James said...

I would like to say thank you guys SO much for releasing this. I have just spent the past couple of days fighting with NSPluginWrapper, and had made some progress with the latest release, but it never seems to be quite reliable for me.

I haven't beat on this version much, but so far it seems to work perfectly on Ubuntu after I cleared out 32-bit flash and nspluginwrapper.

Again, thank you very, very much.

Monday, November 17, 2008 5:48:00 PM  
Anonymous Anonymous said...

I think I love you.

Monday, November 17, 2008 6:19:00 PM  
Blogger dflock said...

Thanks very much for this - I've been using it all day today and it's been working very well! Thanks :)

Secondly, I'm confused about the 'zero contributions from open source' thing. Mozilla aren't using Tamarin or Tamarin-Tracing yet, it'll take them a while to replace the battle hardened SpiderMonkey engine. They are however using some of the Tracing parts of Tamarin for TraceMonkey - the next gen version of the SpiderMonkey engine.

They're using the nanojit from Tamarin-Tracing for this and as part of that effort added AMD64 support to the nanojit a few months ago; see here: http://www.bailopan.net/blog/?p=84

Is this bit of Tamarin-Tracing not used by Flash itself? Is the Mozilla work on this non-transferable - it sounds like it ought to have been? Or am I talking about something else?

Dunc

Monday, November 17, 2008 6:56:00 PM  
Blogger polyGeek said...

Great work Tink. Sorry you're getting grief about the open source support. I definitely see your side, if so many people are bugging Adobe to get a 64bit player then why not contribute a bit. Even if it isn't Open-Enough-Source for them.

I'll bet it would have been a tremendous help if even a handful had offered to be "on-call" for your questions as you get up to speed with developing for Linux.

Maybe next time. Or maybe Adobe should only release the even numbered Flash Players for Linux in the future. That'll learn'em. :)

Monday, November 17, 2008 9:00:00 PM  
Anonymous Anonymous said...

Did I heard somebody speaking of the possibility of a freebsd version? That would be great indeed!

Tuesday, November 18, 2008 1:00:00 AM  
Blogger daichi said...

There is a big respect for your flash work and I am very interested in FreeBSD 32-bit/64-bit version Flash10 release. Please going on developing freebsd version flash. Thanks.

Tuesday, November 18, 2008 1:09:00 AM  
Anonymous unam-h said...

Thank you. Please release plugin for FreeBSD. Honestly I really need it. Thanks :)

Tuesday, November 18, 2008 4:20:00 AM  
Anonymous Anonymous said...

Thank you.

Tuesday, November 18, 2008 4:33:00 AM  
Blogger Brett said...

Read about the optimization you're doing for ARM platform... would like to see similar improvements for Mac OS X. I don't understand why Flash is so much less efficient on the Mac?

Brett Schulte
http://www.brettschulte.com

Tuesday, November 18, 2008 11:52:00 PM  
Anonymous Anonymous said...

Thank you for the 64 bit version, thats great!

Wednesday, November 19, 2008 12:22:00 PM  
Anonymous Anonymous said...

Thank you very much!

Wednesday, November 19, 2008 4:22:00 PM  
Blogger Alex Dupre said...

Yeah, a FreeBSD version! Please, work on it to finish and make it publicly available.

Wednesday, November 19, 2008 10:58:00 PM  
Anonymous Romeo Adrian Cioaba said...

Hi,

i have tested the 64bit build on Ubuntu 8.10 and i'm really happy with it.

First off all it's not as heavy on the CPU as the nspluginwrapper solution, thus the CPU does not heat that much which results in less noise from my notebook.

I have tested the camera and mic on tokbox.com and they work great.

Since no debs are yet available i have put together a small script to help ubuntu/debian users install the 64bit flash player plugin

Thursday, November 20, 2008 12:32:00 AM  
Anonymous Sean Farley said...

Please do continue working on a FreeBSD plugin. I just created a feature request (FP-1060) for it to encourage management to accept the idea.

Thursday, November 20, 2008 4:33:00 PM  
Anonymous Kevin Newman said...

On Tamarin - you can't just put code out there and expect people to help you develop it. :-)

I wonder if you would have more luck though, if devs could build it and test it themselves - even if that means large binary blobs to link Tamerin to - like the rest of Flash Player. It's the hack, build, test workflow.

It might have been different if Mozilla picked up greater portions of it (beyond just the nano-jit) - they didn't, but I don't see why any one would hack on that code base without some specific use for it. It'd be an awful lot like working for Adobe for free (which despite the common rhetoric, is not what open source is about).

Maybe some other open source project will pick it up and then be in a position to contribute changes. That's just a hope, not an expectation.

Friday, November 21, 2008 9:14:00 AM  
Anonymous Paul Chvostek said...

+1 for a FreeBSD version.

I promise to stop badmouthing Flash once I can actually *see* it. :-)

Friday, November 21, 2008 11:02:00 AM  
Anonymous Anonymous said...

Nice news.
But my biggest wish regarding Flash is, that the Flash-Player will be under an OpenSource-License.

Its funny to see, that for example on the Flex-downloads the whole Adobe Flex SDK is needed for developing. With the Open Source Flex SDK you can develop for the Flash-platform. But, because the Flash-player isn't OpenSource, you can not see what you have developed.

Flash is at the moment in a similar position like Java was.
With the OpenScreenProject you have published the specifications of Flash for free. But that is something Sun have done with Java since Java exists.
Because Java was not OpenSource, there comes projects like GNU Classpath. Similar existing now with gnash for Flash.
After Sun opens Java as OpenJDK Java and the OpenSource community comes together. Java is now part of Linux-distrubutions like Fedora and Ubuntu.
But why is the Flash-player not OpenSource? Or will it be in any time?
Sun have similar goals with it JavaFX like Adobe have with Flash/Flex. But JavaFX will be in the future OpenSource and is already in parts (OpenJFX) and Flash will not be OpenSource.
But why? Why not making the Flash Player OpenSource?

Similar is with your Acrobat Reader. At the moment (nearly) all modern OpenSource PDF-viewer like KPDF, Okular and Evince are using Poppler based on xpdf-code.

So, why are your "free of charge"-programs not "free as in free speach"/OpenSource ?

Friday, November 21, 2008 2:56:00 PM  
Anonymous Anonymous said...

Japanese folks have long waited for a FreeBSD version since 386BSD???. Please

Monday, November 24, 2008 4:10:00 AM  
Blogger Cits said...

We need to know an estimate release on the FreeBSD flash player.

Tuesday, December 09, 2008 4:04:00 PM  
Blogger vhbit said...

Can you give any comment about 64 bit for Mac at current moment?

Thursday, February 11, 2010 12:59:00 AM  

Post a Comment

<< Home