From: Mark K. S. <mk...@ri...> - 2008-01-14 17:30:02
Attachments:
tiff.patch
tiff.cpp.new
|
Here is the patch I mentioned in my previous note. The problem was that the TIFF loader in tiff.cpp was very limited and only supported 8 bits per sample and 3 samples per pixel (traditional RGB) images. I wrote a new function that uses libtiff's TIFFRGBAImage functions to load any TIFF format supported by the library, which includes grayscale and cmyk images among many others. Since it is a separate function, the previously supported TIFF files will still be loaded using the previous code path, while all others will follow the new code path. The function is mostly a copy of the previous loader, so it would not be hard to completely replace the old one, but "if it ain't broke, don't fix it". In case you were worried, it still takes a scan line approach to conserve memory. I could not get the latest CVS to build, so I just decided to diff from the v2.5.3c2 release that I have been using. Browsing the CVS shows that tiff.cpp has only had #include changes recently, so it should not be too different. Just in case that does not suffice, I am attaching both the patch to tiff.cpp and the modified tiff.cpp. The changes are completely local to that file. Let me know if there is some other preferred way of submitting patches. Contributing to open source projects is still pretty new to me, so sorry in advance for any missteps. Mark Siner |
From: Rich C. <rc...@ll...> - 2008-01-14 19:15:12
|
Awesome, thanks, I'll work on it soon. Can you tell me what error =20 you got building and on which platform? Thanks. On Jan 14, 2008, at 9:29 AM, Mark K. Siner wrote: > Here is the patch I mentioned in my previous note. The problem was =20= > that the TIFF loader in tiff.cpp was very limited and only =20 > supported 8 bits per sample and 3 samples per pixel (traditional =20 > RGB) images. I wrote a new function that uses libtiff's =20 > TIFFRGBAImage functions to load any TIFF format supported by the =20 > library, which includes grayscale and cmyk images among many =20 > others. Since it is a separate function, the previously supported =20 > TIFF files will still be loaded using the previous code path, while =20= > all others will follow the new code path. The function is mostly a =20= > copy of the previous loader, so it would not be hard to completely =20 > replace the old one, but "if it ain't broke, don't fix it". In =20 > case you were worried, it still takes a scan line approach to =20 > conserve memory. > > I could not get the latest CVS to build, so I just decided to diff =20 > from the v2.5.3c2 release that I have been using. Browsing the CVS =20 > shows that tiff.cpp has only had #include changes recently, so it =20 > should not be too different. Just in case that does not suffice, I =20= > am attaching both the patch to tiff.cpp and the modified tiff.cpp. =20= > The changes are completely local to that file. Let me know if there =20= > is some other preferred way of submitting patches. Contributing to =20= > open source projects is still pretty new to me, so sorry in advance =20= > for any missteps. > > Mark =20 > Siner<tiff.patch><tiff.cpp.new>---------------------------------------=20= > ---------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/=20 > marketplace_______________________________________________ > Blockbuster-devel mailing list > Blo...@li... > https://lists.sourceforge.net/lists/listinfo/blockbuster-devel --=20 =E2=9C=90Richard Cook =E2=9C=87 Lawrence Livermore National Security Bldg-453 Rm-4037, Mail Stop L-557 7000 East Avenue, Livermore, CA, 94550, USA =E2=98=8E (office) (925) 423-9605 =E2=98=8E (fax) (925) 423-6961 --- Information Management & Graphics Grp., Services & Development Div., =20 Integrated Computing & Communications Dept. (opinions expressed herein are mine and not those of LLNS) |