99 lines
6.6 KiB
HTML
99 lines
6.6 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html lang="en">
|
|
<head>
|
|
<title>Proposal to Implement BigTIFF Support in LibTiff</title>
|
|
</head>
|
|
<body>
|
|
<h1>Proposal to Implement BigTIFF Support in LibTiff</h1>
|
|
<p><b>NEWS:</b> We have located all four required sponsors. There are no more
|
|
open slots. We will issue appropriate press release early January 2007.</p>
|
|
<h2>0. Summary</h2>
|
|
<p>BigTIFF logically extends the original TIFF file format (referred to as
|
|
'ClassicTIFF' from this point on), breaking the 4 gigabyte boundary, in theory
|
|
allowing files up to 18,000 petabytes in size. The BigTIFF specification is the
|
|
result of work by a variety of parties on the LibTiff mailing list, including
|
|
the current LibTiff maintainers, Joris Van Damme and Adobe staff. The BigTIFF
|
|
specification has not yet been officially approved by the TIFF specification
|
|
owner (Adobe) but implementation within LibTiff could accelerate that
|
|
process.</p>
|
|
<p>For more information on the BigTIFF file format, we recommend
|
|
<a href="http://www.awaresystems.be/imaging/tiff/bigtiff.html">AWare Systems'
|
|
BigTIFF page.</a></p>
|
|
<p>BigTIFF is expected to be especially useful for people and vendors that are
|
|
confronted with unusually large images, and still seek to use an open, simple,
|
|
and extendable format. This requirement is frequently seen in the geospatial
|
|
field, but also affects large format scanners, medical imaging and other
|
|
fields.</p>
|
|
<h2>1. Sponsoring</h2>
|
|
<p>It is planned that LibTiff 4.0, the BigTIFF upgrade to LibTiff, would start
|
|
March 1, 2007. A preliminary version (LibTiff 4.0alpha1) will be operational by
|
|
June 15, 2007. Testing and final release improvements for LibTiff 4.0 will be
|
|
completed by July 30, 2007.</p>
|
|
<p>The LibTiff BigTIFF upgrade team is seeking USD 24,000 from four sponsors (USD
|
|
6,000 each) to fund the project. Sponsorship payment will be invoiced upon
|
|
delivery of the LibTiff 4.0alpha1 release (on or before June 15) with a 30 day
|
|
payable, giving time for some technical review.</p>
|
|
<p>In addition to the benefits of open interchange of BigTIFF data that comes from
|
|
support in a public and free open source codec, sponsors will be given proper
|
|
public acknowledgment. During development, they will be mentioned in the
|
|
appropriate sections of the LibTiff and AWare Systems site.</p>
|
|
<p>When LibTiff 4.0 with BigTIFF support is released, they will additionally
|
|
receive public acknowledgment in a formal press release, distributed widely to
|
|
news venues in the imaging and geospatial industries.</p>
|
|
<p>A 'migration guide' document or any functional equivalent thereof will be
|
|
included in the standard free distribution, but sponsors will additionally
|
|
receive up to 20 hours of consulting and support on any BigTIFF migration issues
|
|
that they may be facing, and/or any additional related requests they may have.</p>
|
|
<h2>2. Development and Testing</h2>
|
|
<p>The work will primarily be done by Joris Van Damme on behalf of his company
|
|
AWare Systems. Joris was closely involved in the drafting of the BigTIFF file
|
|
format proposal, and has also developed the proprietary AWare Systems TIFF
|
|
codec that already supports BigTIFF. Joris Van Damme has a deep understanding
|
|
of the TIFF format, and has been acting as a LibTiff co-maintainer for over a
|
|
year, contributing the upgraded OJPEG codec as well as several other
|
|
improvements.</p>
|
|
<p>Joris and AWare Systems have agreed to crosstest their proprietary codec and
|
|
LibTiff's support for BigTIFF extensively. Joris will also extend the test image
|
|
library included with LibTiff, with a number of varying BigTIFF test files.
|
|
These files will primarily include test files with issues that relate closely
|
|
to the BigTIFF file format and the difference with ClassicTIFF. For instance,
|
|
in BigTIFF the datatypes TIFF_LONG, TIFF_LONG8, TIFF_IFD and TIFF_IFD8 are all
|
|
valid for tags pointing to additional IFDs, and thus files will be included to
|
|
illustrate and enable testing all of these. Additionally, Joris will build a
|
|
tool to enable creating test files that exceed 4 gigabyte, as these can of
|
|
course not be included in the test suite in a more direct manner, and a tool to
|
|
convert files from ClassicTIFF to BigTIFF, as well as the other way around for
|
|
source BigTIFF files that do not exceed 4 gigabyte in size.</p>
|
|
<p>Frank Warmerdam has also agreed to be involved in a consulting and validation
|
|
role. Frank has been LibTiff's primary maintainer since approximately the year
|
|
2000, develops large-image exploitation software for the geospatial industry
|
|
(GDAL) and is currently President of the Open Source Geospatial Foundation
|
|
(OSGeo). Frank will also be ensuring that BigTIFF improvements are made
|
|
accessible to all users of the GDAL library.</p>
|
|
<h2>3. Implementation Strategy</h2>
|
|
<p>Many people who have a need for BigTIFF, use LibTiff already. We thus plan to
|
|
support BigTIFF in LibTiff, applying a minimum change strategy much like the
|
|
one that was applied in the creation of the new file format in the first
|
|
place.</p>
|
|
<p>To support BigTIFF, we will use a 64bit integer datatype. It is anticipated
|
|
that some older platforms will not be able to comply with this need, and for
|
|
that reason we will encapsulate all required changes inside a conditional
|
|
compilation switch.</p>
|
|
<p>While it is anticipated that there will be ABI (application binary interface)
|
|
changes as part of a BigTIFF support upgrade to LibTiff, and possibly some
|
|
more to support other major upgrades to LibTiff, the plan is such that
|
|
the source level API will remain compatible for most LibTiff applications.
|
|
Applications using specialized interfaces may require some minor source code
|
|
changes, but we will provide backwards compatibility to support the majority
|
|
of existing application level code.</p>
|
|
<p>The resulting LibTiff version would transparently support reading traditional
|
|
32bit ClassicTIFF files, and 64bit BigTIFF files, as well as writing either
|
|
ClassicTIFF or BigTIFF files based on a flag in the TIFFOpen/TIFFClientOpen call.</p>
|
|
<h2>4. Intellectual Property and Licensing</h2>
|
|
<p>The licensing agreement of LibTiff will remain unchanged.</p>
|
|
<h2>5. Contact information</h2>
|
|
<p>Please contact <a href="mailto:warmerdam@pobox.com">Frank Warmerdam</a> and/or
|
|
<a href="mailto:info@awaresystems.be">Joris Van Damme</a> for more information
|
|
on sponsorship agreements.</p>
|
|
</body>
|
|
</html> |