Just yesterday Mozilla Europe’s Tristan Nitot predicted that Adobe might open source Flash one day if competition from Microsoft’s Silverlight got too fierce. It seems as if he can look into the future, as today Adobe has announced the Open Screen Project. While not exactly an open source announcement, it does open the door a little bit more.The Open Screen Project, supported by Adobe and several “industry leaders” and announced today, is supposed to foster the creation of a “consistent runtime environment” that will “remove barriers for developers and designers as they publish content and applications across desktops and devices, including phones, mobile Internet devices, and set top boxes”. The idea is that such a runtime environment will provide the best performance across a wide range of operating systems.
As part of the Open Screen Project, Adobe announced several changes in their policies towards Flash, “to open access to Adobe Flash technology”:
- Removing restrictions on use of the SWF and FLV/F4V specifications
- Publishing the device porting layer APIs for Adobe Flash Player
- Publishing the Adobe Flash Cast protocol and the AMF protocol for robust data services
- Removing licensing fees – making next major releases of Adobe Flash Player and Adobe AIR for devices free
What this will effectively mean for alternative operating systems currently deprived of Flash, or for projects such as Gnash, remains to be seen. This initiative seems mostly aimed at non-desktop computers, so exactly how much the normal computing world will benefit from it remains to be seen.
Well, Adobe aren’t promising to open source their own code.
So what does it mean for FOSS software?
What this means is that priority #3 of the FSF:
http://www.fsf.org/campaigns/priority.html
http://www.gnu.org/software/gnash/
… can now work to open, unencumbered specifications and APIs.
This could accelerate it considerably. There will be no longer any need to reverse engineer the specs and APIs … the programmers can just go ahead now and concentrate on coding the gansh implementation.
At the current version 0.8.2, gnash is really only beta quality software right now. It apparently supports flash v7 and pieces of v8 and v9.
Edited 2008-05-01 13:07 UTC
Well then 3 cheers for something finally happening, anyone else fedup of the amount of crashes Flash causes?
Adobe’s Flash 9 binary blob crashes quite a bit when used in conjunction with Ubuntu Hardy Heron.
I believe this is due to Hardy’s inclusion of PulseAudio … apparently this is the piece that doesn’t play well together with Adobe’s flash 9 binary blob for Linux.
There is a library that you can get that does enable it to kinda work … but there are still crashes.
I removed Adobe’s Flash 9 blob, and installed Gnash 0.8.2-0ubuntu3 on my Ubuntu Hardy install … I can still use Youtube, and I haven’t had a crash yet (although I haven’t been using it long). Certainly I can now do some actions without crashing that used to reliably crash Firefox 3beta5 viewing Youtbue using Adobe Flash 9.
I tried gnash but it’s really not up to scratch with what i need it for
Hopefully its development will accelerate now.
http://blogs.zdnet.com/Burnette/?p=571
“The source code for the Flash player is still closed source and proprietary, but removing restrictions on licensing and even looking at the format specifications goes a long, long way towards alleviating fears of vendor lock-in. This will give a boost to open source players like Gnash and swfdec. While it’s unlikely that the open source players will ever catch up to the performance and features in the official Adobe player, it’s nice to have the option to get the technology from multiple places in case something happens to Adobe such as, say, getting acquired by Microsoft.”
I think there is a strong chance that zdnet significantly under-rates the power of open source development.
It doesn’t look like gnash is ever going to be a “Google Summer of Code” project, though. !!
Edited 2008-05-01 14:05 UTC
Only if the browser architecture sucks: a plugin such as Flash should be in a different process and if the Flash process crash, this shouldn’t make the browser crash, I’ve been told that Konqueror does it this way..
Fedora installs nspluginwrapper by default even on x86 system specifically to force plugins to run in a separate memory space which helps improve stability. A plugin crash won’t take the whole browser down. Also running it like that helps SELinux confinement
http://danwalsh.livejournal.com/15700.html
I think this really makes sense for Adobe. After all it’s in their own interest to make it as easy as possible for people to have a Flash player in any Os or device. They don’t earn any money by for example providing a Linux Flash player (in fact it costs them money), but they do it so that it becomes even more a “standard”.
So why not open some specs and help develop “runtime environments” (players) for everyone?
What Adobe is really interested in is in selling the IDE to produce this Flash content. And frankly, they won’t have any competition there at least for quite some time. It’s beyond the FOSS community to produce such an IDE (for the same reasons it can’t produce alternatives to AutoCAD, video editors, etc…), and probably beyond any other software company in the short or even medium term.
Having the monopoly of the program to produce the content (which is what produces money), why care about having the monopoly of the program to reproduce such content (which only has costs)?
I wonder if we should be happy about this move… I guess it’s good for projects like Gnash and Swfdec, but then I wonder what’s the Open Source winning with having these Open Source players that promote content that can’t be created with Open Source tools… Or maybe in the long run we could have an Open Source Flash IDE too? Time will tell.
The FAQ has some good questions.
http://www.adobe.com/openscreenproject/faq/
Allow me help them answer a few of them:
What is the Open Screen Project?
The Open Screen Project is our desperate attempt to preserve our market share in the face of almost certain doom. Microsoft has expressed an interest in helping users enjoy a rich multimedia experience on line, and we know that means we’re toast. Think of us as the woman in the horror film who runs 5 steps and then falls down before the ear piercing scream and the camera going black.
What is the mission of the Open Screen Project?
To save our asses. Acknowledging long tradition, we understand that Open Source is where dying companies go to die. Like the cancer victim who denies his condition and refuses to seek medical assistance until it is too late, we have held out on opening our formats until after our fate was already sealed, thus ensuring a lot of hype, followed by bad publicity for Open Source when we fail.
What is Adobe doing in support of the Open Screen Project?
We have set up a web site and issued a press release.
Why is Adobe spearheading this project?
Why does the woman from question #1 still struggle and try to push the monster away, even after it is clear that she’s worm food in training?
Why are companies participating in the Open Screen Project?
We’re turning on the hype faucets full blast, calling in a bunch of favors, and are paying some of them under the table to appear to be interested.
Is the Open Screen Project a technology announcement?
No. The Open Screen Project is a function of our PR department.
Why is Adobe continuing to open access to Flash technology?
What else can we do?
What other open efforts does Adobe participate in?
Does throwing Dmitry Sklyarov in jail for a month, and detaining him in a foreign country for 4 months, by invoking the DMCA count?
Edited 2008-05-01 13:49 UTC
Those questions were crafted to fit the answers by the look of it!? Hardly “Frequently Asked” IMO. But still, the project is good
“Why is Adobe so awesome?
Because we are.”
Awesome post steve
I am curious as to where you stand on the whole mono thing (you usually don’t weigh in on those stories). I would usually peg you as mostly a “open source because its practical” type of person. Ignoring the patented bits (ADO, XSP, WinForms, etc), how do you feel about Gtk#/mono apps that only use open source or ECMA standards?
Ah, the Mono thing. I think of it a lot like I do Samba. I deeply wish that we did not need it, but I thank the gods that we have it. I’m glad it is there as a bridge for .net programmers and for applications compatibility, just as I am glad that Samba is there to allow us to have a strong file server offering for networks of Windows clients. But I strongly prefer not to see Mono used by existing members of our FOSS community for new projects. In particular, I strongly oppose its use for infrastructure.
Despite all the nonaggression assurances and C# standardization, I do not trust MS on this. Ecmascript is a standard, too, and MS’s ubiquitous, but incompatible implementation of it is probably the single most significant thing tying my users to Crossover Office and IE, and sometimes even to Windows itself. (Mercifully, I, myself have no need for it for my daily work.)
I don’t manage photographs or require post-it notes with advanced features. I find Beagle to be slow, buggy, and very prone to going off into infinite loops when I actually try to use it for anything useful. The Tracker guys started much later, programming in plain old ‘C’ and have a better product, even without the backing of a major corp like Novell. (This is where people usually remind me that Novell only allocated 1-3 guys to the project, and where I remind them back that the format conversion programs are third party and that the core of Beagle was handed to them on a silver platter in the form of Apache Lucene, which they had only to port from Java.)
Mono is also a bit of a memory hog. (Opinions vary as to the significance of that.)
Thus, based upon the available empirical evidence, I am unimpressed and completely unconvinced as to the programmer productivity advantages claimed by advocates of Mono. And given the open source availability of Java, I feel that it fits that niche better than Mono for FOSS apps.
I, personally, am a fan of Python, but recognize that Python is not right for every occasion. And that is where I feel Java should pick up. For system stuff, C and C++, of course.
One other thing. And I should say that I realize that this is a bit irrational of me, but it’s also a very real feeling. Seeing executables listed in ‘ps’ and ‘top’ that end in “.exe” and having libraries on my machines that end in .dll makes me sick. I only include that information because I believe that, as human beings, we cannot avoid bias. The best that we can hope for is to be honest about those biases with ourselves and others. It adds a bit of useful context to my post.
Edited 2008-05-01 17:47 UTC
I figured you would stand somewhere around there 😉
I have noticed that too when playing around with it in linux, and I really don’t know why. Ever since 2.0, the only way to tell a .net app in windows is that uncaught exceptions give you a pretty distinctive error box. Other then that, when it comes to reponsiveness, memory use, etc there is no noticable difference. In linux however, you get the classic java experience of slow loading, bloated, and unresponsive apps.
The big problem with java (the reason that motivated miguel to do .net in the first place) is that the libraries are better archetected then the java ones, and that the platform actually is evolving. We have been getting stuff like lambdas (from python), and extension methods (basically like rubys open classes). Our generics implementation doesn’t suck. We have the ability to do inferred typing (var c = “hi” becomes a string at compile time, var c = 1 becomes an int).
Unfortunately, java is driven by a consortium of companies, and it takes FOREVER to push anything through the process. Because of that, java has been stagnating for almost 20 years now, and the recent bursts of movement we have seen in the platform recently were driven because of what MS has been doing.
Anyways, I’m pretty biased in this (as you probably know, i’m not so much an MS zealot as I am a .net zealot ), but those are the reasonings for its existance.
At least you are man enough to admit it 😉
We all have biases based on experience, and as someone who pushes alternative os adoption, you have alot of pain you can lay directly at microsofts feet. I would argue that at least 95% of that pain was completely unintentional (I know/have met a whole bunch of project managers from ms, and have yet to meet one that would deliberately do something to screw non ms projects), but that is pretty irrelevant for someone who has to deal with the consequences.
Believe it or not, I used to be a huge java/linux zealot. It was actually the linux community that drove me away from the OS. I have been using Linux since it came on floppies with a photocopied manual wrapped around them. I loved the tight-knit alpha-geek aspect of it, and the way that you really felt like a part of things, because at that time everyone who used it also hack on some aspect of the system. Nowadays, I find that the community has become overrun by ex windows “power users”, who have alot of opinions about stuff they don’t know anything about, and like to feel self-rightous about using linux, even though they contribute nothing.
Even though I am willing to admit there on a certain level, there is something just better about open source software in a whole bunch of market segments (platforms, operating systems, protocols, etc). Unfortunately, I suffer from the same feeling of illness you get when you see a .exe any time someone starts preaching to me about it.
It’s really interesting to me that you would say .NET libraries are ‘better architected.’ I did very little .NET before descending down into the kernel, so I can only go by what people like Ars’ PeterB says about the .NET BCL. I think he blows his complaints out of proportion, but there do seem to be small problems and inconsistencies here and there with regards to the collection types, which form the basis for much of the library.
I am a huge fan of the languages themselves and the runtime system that lets one interleave managed and unmanaged code to a scary degree (I once wrote a mid-sized program that did a lot of COM calls in C++/CLR and used reflection on the higher layers). I also find Python to be lovely and far prefer to use python instead of perl for the rare scripting task.
Perhaps they want the FOSS Community to do the 64 bit Linux port.
Adobe’s code is not being opened here … just the formats.
BTW, there is already a 64-bit implementation of Flash for Linux:
http://www.gnu.org/software/gnash/
Just compile it with the correct switches.
Any 64-bit Linux distribution should already have done this for you, available in its repositories.
Yeah, but does it actually work?
Based on the comments in this thread, I would have to express doubt that gnash is a drop-in replacement as of now. Maybe in another 6 months….
Right now, it works with YouTube, or most flash files older than that.
It doesn’t work with the latest advancements of flash (ie all flash 9 stuff).
This is an interesting move on Adobe’s part. Hopefully this benefits the free implementations. Flash is one of the few things keeping me from switching to FreeBSD from of Linux.
While I haven’t tried Firefox and Flash on Wine, Firefox and Flash using the FreeBSD Linux compatibility layer is horribly unstable.
If this is just a knee jerk reaction to Silverlight, Xara did the same thing with Xara Extreeme for Linux thinking Microsoft was moving in on there patch.
Just look now, Xara is pretty much dead for development in Linux, I fear thats whats going to happen with Adobe and their project.
No … Adobe is not opening its source code … it is opening up the specs and APIs of its format.
Xara did neither. They kept part of the core as a proprietary binary blob, for which there were no specs … not unlike the nvidia driver blob for Linux. Xara went for “free as in no cost” rather than “free as in liberty, free as in open”.
The open Source community pleaded with Xara to open it up fully, and Xara said no … so all interest in the whole project slowly evaporated. This is what killed it.
This move from Adobe is an entirely different kettle of fish. Adobe are opening the specs, keeping Adobe’s own implementation proprietary, but allowing anyone else to have a go at producing a competing implementation, including open source. That makes it free as in freedom … which is the quintessential essence of open source development.
That is vitally important, and distinctly different from the history with xara extreme.
Edited 2008-05-01 14:23 UTC
Right thats to be specific, but the reason why Xara moved to the more open idea was that Microsoft was moving in on their patch. My point is that which maybe the reason why Adobe are doing what they doing, so their are parallels.
That is exactly why they are doing it. Adobe has a long history of ignoring everything but OSX and Apple. Out of the blue MS not only becomes competition, but encourages an open source implementation.
It’s not coincidence adobe is doing almost the same thing right before SL2 RTMs
Removing restrictions on use of the SWF and FLV/F4V specifications
This is very good news!
I agree, it is good news. The rest if it is mostly just PR stuff and I don’t expect much, but opening the specification so real open source implementations can be made is great news. With the reverse engineering hurdle out of the way, the Gnash and swfdec developers should be able to really catch up with the offical version in terms of features and they already seem to have it beat in stability on Linux.
Nothing to do with this topic but I hate the new way of OSNews making us click Read More and then again clicking to read the comments. And if you’re not signed in, then clicking again to read all the comments. And the preferences do not let us select “Display all comments” but only a maximum of 50. If we’re on the same site, why not make us click just once? Anyone agrees?
Edited 2008-05-01 15:57 UTC
<rant>
MONO != SAMBA
Novell is the developer of MONO. Novell has singed exclusive patent deals with microsoft – by which **only Novell** gets patent protection for MONO from Microsoft. No one else gets those protection. For which Novell is paying mirosoft for every copy of SuSE Linux sold – as protection money.
So when ever you buy SuSE/Novell you effectively are paying Mirosoft a part of it – as protection money
http://boycottnovell.com
</rant>
Coming back to the topic – this is good news !! I am downloading the specs for flash. Maybe can contribute some code to gnash
For all of those who are against Silverlight (just because it’s another “Microsoft” project), do you see now why it’s so important for competition? Without it Adobe wouldn’t have done a damn thing and Flash would still be where it’s at, or even worse.
A reasonable point I suppose.
I personally would like to see the day when Microsoft “gets it”. I want to see them compete in the software market … by allowing any other party to fully independently implement technologies such as Silverlight or OOXML or .Net. Not just “bits” of it … full implementation allowed by parties other than Microsoft.
The fact that Microsoft tries so hard so consistently to make it such that “you must have a Microsoft platform to run this new technology we are introducing …” is, to me, an enormous shame and a huge waste of innovative effort on Microsoft’s part.
The one & only thing wrong with Silverlight, and the primary justification for this move on Adobe’s part … is that Silverlight is pushed by Microsoft as being “for Mac or for PCs” (and hence they can claim cross-platform) whereas Adobe are positioning Flash as being true cross-platform … lots of independent implementations on a large variety of platforms.
If it weren’t for the fact that Microsoft tries to position its technologies to try to control the market … then Microsoft technologies would control the market.
Edited 2008-05-02 00:58 UTC
I think base on what happened now is too soon to comment that Adobe will open source flash technology.
If I imagine how it looked when they introduced scripting support in flash, I see 10 really drunk guys at a company party, throwing out stupid ideas while laughing.
If I imagine how AS3 was created, I see a stressed guy with hangover trying to fix what could be fixed.
flex/flash9/as3 is aiming to be the vm of the web, but as3 is still imho quite bad compared with C#. Some simple (?) fixes like enums, to give typesafe api:s in a nonbizarre way, and typed containers (Ã la .NET 2.0) for speed and compile time catching of errors.
Programming as3 feel a bit like looking after a child which gets occasional fits, throwing things all over the place.
Perhaps open sourceing flash would make actual users of as3 an option to make a usable Actionscript happen.
Now maybe we will see modern flash in the Opera for the Wii