Proprietary File Formats And A Solution
In this article I am describing some of the most popular proprietary file formats, the issues encountered with those, and I propose a solution to make open file formats popular.
Where We Are
MP3, PPT, DOC, WMV, SWF. We know them all, but what is their story?
MP3 (Mpeg Layer III) is a proprietary music format invented by the Fraunhofer Institute. Despite its age and its shortcomings in quality, it is still heavily popular and the primary file format to share music online.
PPT is a Microsoft PowerPoint document, circulating primarily in office email traffic, and its also being used to assemble more or less funny slideshows to be shared with colleagues.
DOC is Microsoft Word, and if you haven't heard of that one, you must have been living under a rock for the past 15 years. It is very popular in offices, a primary fileformat used for sharing documents.*
WMV is Windows Media Video, Microsofts successor to AVI, a codec/container format that grew popular in the online world, although the codecs compression quality is questionable. Microsoft made it very easy to create WMV content in Windows, which might be an explanation.
SWF is SmallWebFormat (wrongly: Shockwave Flash), a fileformat used to display multimedia content online. Whenever you see an animated website, a movieplayer on a website, a music player embedded in a page, a scroller or a popup embedded in a page, its most possibly stored in SWF format.
And there is more to come...
Proprietary Poison
"Fine", you might ask, "and what is the problem with those?"
All of these file formats are proprietary. What does that mean?
Proprietary indicates that a party, or proprietor, exercises private ownership, control or use over an item of property, usually to the exclusion of other parties.
Where a party, holds or claims proprietary interests in relation to certain types of property (eg. a creative literary work, or software), that property may also be the subject of intellectual property law (eg. copyright or patents). -- wikipedia.org
Whenever a programmer wants to add support for one of the above file formats to his application, he faces trouble. Encoding/storing or decoding/retrieving data written in a restricted format could be subject to copyright laws.
In most cases, the specification of the file format is not open and a licence has to be obtained or a NDA has to be signed in order to read it. Reverse engineered specifications are usually incomplete.
The intellectual property right holder may also choose to disallow a competing vendor to support the file format at free will in order to maintain a monopoly.*
It is hard to find libraries which read and write these formats correctly. If I find these libraries, I'm unable to incorporate them into my programs, because it is likely that I violate someone elses intellectual property rights.
It is possible that one day, someone will knock at my door and request money from me, because I support his file format. You think that is paranoid? Think again.
In September 1998, the Fraunhofer Institute sent a letter to several developers of MP3 software stating that a license was required to "distribute and/or sell decoders and/or encoders". The letter claimed that unlicensed products "infringe the patent rights of Fraunhofer and THOMSON. To make, sell and/or distribute products using the [MPEG Layer-3] standard and thus our patents, you need to obtain a license under these patents from us." -- wikipedia.org
Although the situation relaxed, commercial use of the codec is still subject to licence fees. If we want economical growth, how can a small company grow when support for popular file formats costs money?
A Remedy: Open File Formats
As a result, several open file format standards have been developed by independent foundations and generous companies wishing for a change of the situation. Most of these file formats are already popular in the Linux Desktop world. Meet the challengers:
Ogg Vorbis (OGG): Ogg Vorbis, developed by Xiph.org, is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format for mid to high quality (8kHz-48.0kHz, 16+ bit, polyphonic) audio and music at fixed and variable bitrates from 16 to 128 kbps/channel. This places Vorbis in the same competitive class as audio representations such as MPEG-4 (AAC), and similar to, but higher performance than MPEG-1/2 audio layer 3, MPEG-4 audio (TwinVQ), WMA and PAC.
OASIS OpenDocument: The OASIS OpenDocument file format is the native file format of OpenOffice.org 2.0. It is developed by a Technical Committee (TC) at OASIS. The OpenDocument format is based on the OpenOffice.org XML file format. It can be used to display presentation slides and documents.
Scalable Vector Graphics (SVG): SVG is an XML markup language for describing two-dimensional vector graphics, both static and animated (either declarative or scripted). It is an open standard created by the World Wide Web Consortium, which is also responsible for standards like HTML and XHTML.
Nullsoft Video (NSV): NSV, developed by Nullsoft, is a new video format. It is designed to be easily streamed, support any audio and video codec, and be usable on nearly any platform. Currently NSV utilizes MP3 for audio and VP3 for video. Support for more codecs will be added soon.
Ogg Theora (OGG/OGV): Theora is an open video codec being developed by the Xiph.org Foundation as part of their Ogg project (It is a project that aims to integrate On2's VP3 video codec, Ogg Vorbis audio codec and Ogg multimedia container formats into a multimedia solution that can compete with MPEG-4 format, so its not quite ready for primetime yet).
These file formats are open (everybody can participiate in advancing them), non-proprietary (nobody restricts their use) and patent-and-royalty-free (companies can use them without having to pay any licence fees).
Unfortunately, as proprietary formats are being pushed onto consumers who couldn't care less about the file formats they use, as long as they are able to open it, content providers wanting to publish data stored in open file formats will not find many users who are able to view the content without having to install codecs and plugins.
Most consumers find it tiresome to install new software in order to view a file, and thus will refrain from doing so.
Therefore, if the mountain cant travel to the sage, then the sage must travel to the mountain.
Where We Want To Be: The Great Invasion
Large companies have realized that customers can be used as drones. When they buy a computer, they get all neccessary tools for reading proprietary file formats for free. Most of the time, the first technology on the market is being adapted by content providers and is barely removeable. Most content providers will not see any reason to support another file format among the popular ones. This is an unconscious vendor lock-in.
Apples official reaction to the request for Ogg Vorbis support regarding its iPod music player was:
We're certainly not getting any requests from customers for it. -- Steve Jobs
Thus, large companies use customers to opress small software companies and independent developers.
How can we react to this?
If consumers can be used as drones, why not treat them the way they like to be treated?
Here is my proposal for a new kind of software. Meet the
Universal File Format Pack
The (Windows) Universal File Format Pack (UFFP) is being hosted from a shiny easy-to-remember-url website looking professional and adapting the msn look and feel. It would be helpful to create the impression that this is an "official" software package in order to gain trust from consumers. The website should still make clear in a footnote that it is not affiliated with Microsoft in any way.
This website should display correctly in all browsers and advertise heavily for the UFFP, explaining its advantage in short and comprehensible sentences. It should be possible to install the UFFP from the browser with one click, possibly through an ActiveX control. The website should provide a short manual along with screenshots to guide users through obtaining the UFFP.
The UFFP itself is a silent installer that provides a collection of DirectShow filters, Internet Explorer and Microsoft Office plugins to allow the consumer to listen to Ogg Vorbis files and watch Ogg Theora movies in the Windows Media Player, read OpenOffice documents in Word, PowerPoint or Internet Explorer, and also watch embedded SVG animations in Internet Explorer. Another step could be to patch IE to replace the default web browser widget of IE with a Mozilla Gecko widget to effectively enable Internet Explorer to show transparent PNG and SVG files and increase browser security.
In a second step, content providers and site owners should be offered a simple way of including UFFP support on their site, embedding a mechanism that suggests to the user to install the UFFP, possibly with an "official" connotation that implies that the browser wants the user to install it. Users can then directly install the UFFP or browse to the UFFP website. Site maintainers can then provide content stored in an open file format that is directly bundled with an option to install the UFFP.
As a result, most users will encounter an invitation to install the UFFP on their daily webroutine, and after about a year, almost every computer should carry support for open file formats.
El Final
I do not know anyone who is working on such a project at the moment, but I think it would be highly beneficial for independent developers, content providers and small companies.
Development of the UFFP should be open and well documented. It should be a collaboration of independent developers and the codec and fileformat inventors themselves.
This article is open for comments and extensible. In case you find any misinformation in this article or want to add some information, feel free to leave a comment.
* Microsoft Office was required to read these files in the past. Microsoft offers reader applications. [1], [2]
* Patent law, rather than copyright, is more often used to protect a file format. Although patents for file formats are not directly permitted under US law, some formats require the encoding of data with patented algorithms. For example, the GIF file format requires the use of a patented algorithm, and although initially the patent owner did not enforce it, they later began collecting fees for use of the algorithm. This has resulted in a significant decrease in the use of GIFs, and is partly responsible for the development of the alternative PNG format. However, the patent expired in the US in mid-2003, worldwide in mid-2004; algorithms are themselves not currently patentable under European law. -- wikipedia.org

Comments
Proprietary File Formats
"This is an outrage," Fornwalt said in an interview. "I'm not going to buy some crappy software for several hundred dollars just to submit a resume. Besides, to run Office I have to either get a Mac (ugh) or get a PC running Windows (double ugh). This is definitely a form of discrimination against my choice of computing orientation. It's a violation of Federal law... at least, I hope it is."
Post new comment