LizardTech's Statement on DjVu Open Source Licensing

DjVu Open Source
LizardTech is committed to making DjVu the standard file format for scan-to-Web publishing applications. In an era of rapidly evolving technology, we believe the best "standards" are those selected by the market. Actual users of technology are better positioned than anyone else to determine what technology best meets their needs. Sometimes, the standard is whatever ships in volume. Many of the market-driven standards that are most successfully used on the Internet have open specifications. The success of these standards has occurred, in part, because of the dynamism, creativity and diversity of the developer community and their many collaborative efforts. 

When AT&T Labs developed the DjVu technology, it was committed to developing the best technology for distributing scanned documents over the Internet. In order to ensure wide access to the DjVu technology, AT&T made the source code for the DjVu Reference Library available under an "AT&T Source Code License." 

When LizardTech acquired the DjVu technology from AT&T in March of this year, we wanted to broaden access to DjVu. To further efforts to make DjVu the standard tool for scan-to-Web applications, we granted Open Source access to the DjVu Reference Library v.2.0 under the GNU General Public License (for more information on the GNU GPL, visit http://www.opensource.org/). 

LizardTech has continued to innovate and improve DjVu and we have now developed the DjVu Reference Library v.3.5. As with v.2.0, we are continuing our commitment to Open Source access to DjVu by making available the DjVu Reference Library v.3, including both compression (or encoding) and decompression (or decoding) capabilities under the terms of the GNU General Public License (for more information on the GNU GPL, visit http://www.opensource.org). To support those developers who have been working with the v.2.0 Reference Library, we will continue to make available the DjVu Reference Library v.2.0 as well. 

The new DjVu Reference Library v.3 is a major improvement over the previous version in terms of versatility, speed, compression ratios, and image quality. Improvements to the file format include: 

  • Two new multipage document formats 
  • A "hidden text" layer accessible for client-side text search 
  • Support for embedded thumbnails 
  • Supports 3 improved compression in reading "shape dictionaries" across pages in multipage documents 
  • Support for reading and writing JB2 version 3, including JB2 color mode 
LizardTech's ability to innovate depends on our ability to profit from our commercial software and solutions. For this reason, the DjVu Reference Library does not contain the entire implementation of the DjVu product code that our customers can obtain in our commercial software products. With the Reference Library v.2.0, we made available under the GNU General Public License everything that AT&T had made available under the AT&T Source Code License before the technology was transferred to LizardTech. With the Reference Library v.3, we are also making available a number of tools for creating and reading DjVu documents. Additionally, we have included supporting classes, utility command line tools and documentation for optimal use of the DjVu Reference Library v.3. 

The Reference Library contains the entire DjVu decoder and much of the encoder, but it does not contain the sophisticated encoding strategies necessary for reaching the highest compression ratios. Among other things, the DjVu Reference Library contains the full DjVu decoder, the full IW44 wavelet encoder/decoder for continuous tone images, and the back-end of the JB2 bi-level image compression technique. It does not contain the code for separating document images into foreground and background layers, nor does it contain the code of the lossy JB2 scheme that achieves the highest compression ratios on bitonal images. 

Examples of what is included in the DjVu Reference Library are: 

  • A fast binary adaptive coder named ZP-coder 
  • An efficient progressive decoder for DjVu images 
  • The JB2 decoder (and encoder back end) for bitonal images 
  • The IW44 wavelet compressor and decompressor for continuous-tone images 
  • A general purpose data compression program named bzz 
  • A portable multithreading library 
With this source code release, developers around the world have permanent access to the DjVu specification, as well as critical parts of the technology. Developers can build on this foundation to create DjVu viewers, create translators to other file formats, integrate DjVu with other open source tools, and use new technological advances to improve image quality or the compression ratio. 

LizardTech's Open Source release of the DjVu Reference Libraries should address any reservations DjVu users or potential users might have about committing to a proprietary file format to archive, display or use their documents on the Internet or internal networks because it guarantees that users will always be able to access their DjVu files, protecting their investment in the technology and systems that use it. 

LizardTech will continue to develop and evolve the DjVu technology over time. To ensure that users always have access to the DjVu file specifications, LizardTech is committed to making an Open Source release of at least the decompression (or decoding) software for any future versions of the DjVu file format that cannot be read by the decoder currently being made available as Open Source code. 

A Word About the GNU GPL and Patent Rights
LizardTech has chosen to use the GNU GPL because this license is accepted in the Open Source community, and we believe this will aid in the dissemination and growth of the DjVu technology. That said, we believe the GNU GPL is a flawed license because it does not satisfactorily address all issues necessary for release of the code. At the same time, LizardTech does not endorse or agree with all of the underlying assumptions or biases of the Free Software Foundation that are reflected in the GNU GPL. In particular, the GNU GPL is generally antagonistic to patent protection for software. We know much of the Open Source community shares this antagonism to patents. 

While we do not expect to change anyone's mind on the issue of patents for software, we do believe patents for software serve a valuable purpose in creating the incentives that are necessary for businesses to invest the time and resources in innovation that lead to inventions of new technology. The right of inventors to obtain patent protection for their inventions was deemed important enough that it is specifically included in the U.S. Constitution. (Art. 1, § 8, cl. 8). We do not believe software inventors should be treated any differently than inventors of anything else. 

On the issue of patents, LizardTech believes the approach taken in the Mozilla Public License ("MPL", for more information, see http://www.mozilla.org/) is preferable to that in the GNU GPL, because the MPL explicitly provides for contributors to grant patent rights to users of the open source software, while the GNU GPL just prohibits distribution of software if sufficient patent rights are unavailable (in paragraph 7) without providing a mechanism for patent holders to make a grant to facilitate the use of their software under the GNU GPL. This oversight leaves a gaping uncertainty in most software released under the GNU GPL. On the other hand, the MPL permits users of code to "take the code private" into their own proprietary products and that isn't consistent with LizardTech's aims to make sure that DjVu is a single file format available to all. 

To address the patent issue in connection with the release of the DjVu Reference Library, LizardTech makes a specific grant of patent rights necessary to use the Reference Library in the form it is originally released by us. In addition to a copyright notice and language pertaining to distribution under the GNU GPL, you will find in the header of every source code file that makes up the Reference Library the following grant of patent rights: 

The computer code originally released by LizardTech under this license and unmodified by other parties is deemed the "LizardTech Original Code." 

With respect to the LizardTech Original Code ONLY, and subject to any third party intellectual property claims, LizardTech grants recipient a worldwide, royalty-free, non-exclusive license under patent claims now or hereafter owned or controlled by LizardTech that are infringed by making, using, or selling LizardTech Original Code, but solely to the extent that any such patent(s) is/are reasonably necessary to enable you to make, have made, practice, sell, or otherwise dispose of LizardTech Original Code (or portions thereof) and not to any greater extent that may be necessary to utilize further modifications or combinations. 

The LizardTech Original Code is provided "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF NON-INFRINGEMENT, OR ANY IMPLIED WARRANTY OF MERCHANTIBILITY OF FITNESS FOR A PARTICULAR PURPOSE. 

Among other things, this means users of the DjVu Reference Library are free to use the LizardTech Original Code and LizardTech guarantees that we will never enforce any patent rights we may have that are infringed by use of the LizardTech Original Code. In this way, we are providing certainty for users of the DjVu Reference Library that is missing from most releases of code under the GNU GPL. At the same time, our release of Open Source code is not a free pass to infringe patents of LizardTech or anyone else that are not practiced in the code as it originally distributed by us. We cannot guarantee that any particular modification or extension to the LizardTech Original Code is permitted without a patent license - whether from LizardTech or any other third party who may have patent rights to methods a developer may wish to practice. This approach places LizardTech on the same footing as any other person or Company whose patent rights a user of the LizardTech Original Code must respect when adding new, different, or additional functionality to the LizardTech Original Code. 

We believe that the DjVu Reference Library is a valuable contribution to the Open Source community and welcome your comments. Send your comments by subscribing to the DjVu Open Source List Serve.

Copyright © 2001 LizardTech, Inc. All rights reserved.