2005.01.07 20:18 "[Tiff] JPEG (T.30-E, fax) in TIFF", by Lee Howard

2005.02.08 17:02 "Re: [Tiff] JPEG (T.30-E, fax) in TIFF", by Joris Van Damme

Lee,

Sorry for this very late answer.

On about line 634 of libtiff/tif_jpeg.c (3.7.1 release) it says:

                /* TIFF 6.0 forbids subsampling of all other color spaces */

Is that true?

Neither ITULAB, nor ITULAB subsampling is part of the TIFF 6.0 specification, but they are both part of the same tradition that lead to RFC 2301. So if you feel ITULAB is a valid photometric (and I would be inclined to agree), then you must also feel that the subsampling tags applies to ITULAB as well.

It is all in all a bit of a nuisance... Tags should be designed to have a more independent meaning wherever possible, and default values for tags should apply when they are absent. Today's subsampling tags situation lead to the following code construct in my decoder, at the 'making sense of color and storage' stage:

if subsampling tags not found then
{
  if colorspace is ycbcr or itulab then
    subsampling is 2,2
  else
    subsampling is 1,1
}
else
{
  read subsampling from tag value
  if subsampling is not 1,1
  {
    sanity check:
      - are subsampling values legal?
      - colorspace should be ycbcr or itulab
      - bits per channel should be 8
    if sanity check fails, unable to interpret image
  }
}

This does not strike me as a very elegant scheme, but given the current situation where one 'default' applies when tag is absent and color space is x, and another value applies when tag is absent and color space is y... Well, the good news is that complaining about is isn't going to solve anything, so I rest my case. ;-)

> Soon enough I hope to have color fax support (at least
> receiving) in the HylaFAX core source repository.

Drop us a line when you do.

Joris Van Damme
info@awaresystems.be
http://www.awaresystems.be/
Download your free TIFF tag viewer for windows here:
http://www.awaresystems.be/imaging/tiff/astifftagviewer.html