commit dcraw for openSUSE:12.2
Hello community, here is the log from the commit of package dcraw for openSUSE:12.2 checked in at 2012-08-04 09:09:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:12.2/dcraw (Old) and /work/SRC/openSUSE:12.2/.dcraw.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "dcraw", Maintainer is "postadal@suse.com" Changes: -------- --- /work/SRC/openSUSE:12.2/dcraw/dcraw.changes 2012-06-25 15:17:30.000000000 +0200 +++ /work/SRC/openSUSE:12.2/.dcraw.new/dcraw.changes 2012-08-04 09:11:02.000000000 +0200 @@ -1,0 +2,24 @@ +Mon Jul 30 20:44:51 UTC 2012 - asterios.dramis@gmail.com + +- Update to version 9.16: + dcraw - revision 1.452 + * Measured saturation level on the Canon EOS-1D X. + * Support the Samsung NX1000 and Sony RX100. + * Support the Canon EOS 650D, Samsung NX20, and Sigma SD1. + +------------------------------------------------------------------- +Tue Jun 26 17:57:13 UTC 2012 - asterios.dramis@gmail.com + +- Update to version 9.15: + dcraw - revision 1.449 + * Fixed gravity sensor for Canon 5D Mark III with Firmware Version 1.1.x. + * Decode CAMF and IMAG blocks from Sigma SD15 and DP cameras. Added "-E" and + "-I" options to support raw pixel substitution. Support Adobe Lossy DNG and + the Imacon Flexframe 3f format. Support the Canon G1-X, 1D-X, 5D Mark III, + the Fuji X-Pro1, X-S1, and many others. + * Support the Casio EX-Z500. + dcparse - revision 1.74 + * Decode CAMF blocks from Sigma SD15 and DP cameras. +- Dropped dcraw-omp.patch (wasn't used anyway). + +------------------------------------------------------------------- Old: ---- dcraw-9.12.tar.gz dcraw-omp.patch New: ---- dcraw-9.16.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dcraw.spec ++++++ --- /var/tmp/diff_new_pack.lupIND/_old 2012-08-04 09:11:02.000000000 +0200 +++ /var/tmp/diff_new_pack.lupIND/_new 2012-08-04 09:11:02.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package dcraw # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: dcraw -Version: 9.12 +Version: 9.16 Release: 0 Summary: Raw Digital Photo Decoding License: GPL-2.0+ @@ -36,12 +36,10 @@ #*** Source100: README.SuSE Source101: update_dcraw -# PATCH-FEATURE-OPENSUSE dcraw-omp.patch postadal@suse.cz -- Speed up decoding (-fomp disabled by default) -Patch0: dcraw-omp.patch # PATCH-FIX-OPENSUSE dcraw.1.patch asterios.dramis@gmail.com -- Fix "macro `LO' not defined" rpm post build check warning -Patch1: dcraw.1.patch -# PATCH-FIX-OPENSUSE fuji_green.c_fix_gcc_warnings.patch asterios.dramis@gmail.com - Fix gcc implicit declaration warning -Patch2: fuji_green.c_fix_gcc_warnings.patch +Patch0: dcraw.1.patch +# PATCH-FIX-OPENSUSE fuji_green.c_fix_gcc_warnings.patch asterios.dramis@gmail.com -- Fix gcc implicit declaration warning +Patch1: fuji_green.c_fix_gcc_warnings.patch BuildRequires: gettext-runtime BuildRequires: libjasper-devel BuildRequires: libjpeg-devel @@ -59,7 +57,6 @@ cp -a %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} . %patch0 %patch1 -%patch2 %build export CFLAGS="%{optflags} -fno-strict-aliasing -fstack-protector-all" @@ -69,7 +66,6 @@ OTHERFLAGS= if test $file = dcraw.c ; then LDFLAGS="-lm -ljasper -ljpeg -llcms -DLOCALEDIR=\""%{_datadir}/locale"\"" -# gcc $CFLAGS -fopenmp -o ${file%.c}-omp $file $LDFLAGS fi if test $file = fuji_green.c ; then LDFLAGS="-lm" @@ -91,7 +87,6 @@ install -d -m 0755 %{buildroot}%{_mandir}/man1 install -pm 0755 dcraw %{buildroot}%{_bindir}/ -#install -pm 0755 dcraw-omp %{buildroot}%{_bindir}/ install -pm 0644 dcraw.1 %{buildroot}%{_mandir}/man1/ install -pm 0755 clean_crw %{buildroot}%{_bindir}/ ++++++ README ++++++ ++++ 950 lines (skipped) ++++ between /work/SRC/openSUSE:12.2/dcraw/README ++++ and /work/SRC/openSUSE:12.2/.dcraw.new/README ++++++ dcraw-9.12.tar.gz -> dcraw-9.16.tar.gz ++++++ ++++ 2614 lines of diff (skipped) ++++++ parse.c ++++++ --- /var/tmp/diff_new_pack.lupIND/_old 2012-08-04 09:11:02.000000000 +0200 +++ /var/tmp/diff_new_pack.lupIND/_new 2012-08-04 09:11:02.000000000 +0200 @@ -5,8 +5,8 @@ This program displays raw metadata for all raw photo formats. It is free for all uses. - $Revision: 1.73 $ - $Date: 2011/05/11 03:29:49 $ + $Revision: 1.74 $ + $Date: 2012/01/24 07:15:43 $ */ #include <stdio.h> @@ -89,6 +89,42 @@ return u.d; } +unsigned getbithuff (int nbits, const ushort *huff) +{ + static unsigned bitbuf=0; + static int vbits=0, reset=0; + unsigned c; + + if (nbits == -1) + return bitbuf = vbits = reset = 0; + if (nbits == 0 || vbits < 0) return 0; + while (vbits < nbits && (c = fgetc(ifp)) != EOF) { + bitbuf = (bitbuf << 8) + (uchar) c; + vbits += 8; + } + c = bitbuf << (32-vbits) >> (32-nbits); + if (huff) { + vbits -= huff[c] >> 8; + c = (uchar) huff[c]; + } else + vbits -= nbits; + return c; +} + +#define getbits(n) getbithuff(n,0) +#define gethuff(h) getbithuff(*h,h+1) + +int ljpeg_diff (ushort *huff) +{ + int len, diff; + + len = gethuff(huff); + diff = getbits(len); + if ((diff & (1 << (len-1))) == 0) + diff -= (1 << len) - 1; + return diff; +} + void tiff_dump(int base, int tag, int type, int count, int level) { int save, j, num, den; @@ -692,8 +728,9 @@ void parse_foveon() { unsigned entries, off, len, tag, save, i, j, k, pent, poff[256][2]; - char name[128], value[128], camf[0x20000], *pos, *cp, *dp; - unsigned val, key, type, num, ndim, dim[3]; + char name[128], value[128], *camf, *pos, *cp, *dp; + unsigned val, wide, high, row, col, diff, type, num, ndim, dim[3]; + ushort huff[258], vpred[2][2], hpred[2]; order = 0x4949; /* Little-endian */ fseek (ifp, -4, SEEK_END); @@ -730,26 +767,51 @@ order = 0x4949; break; case 0x464d4143: /* CAMF */ - printf ("type %d, ", get4()); - get4(); - for (i=0; i < 4; i++) - putchar(fgetc(ifp)); - val = get4(); - printf (" version %d.%d:\n",val >> 16, val & 0xffff); - key = get4(); - if ((len -= 28) > 0x20000) - len = 0x20000; - fread (camf, 1, len, ifp); - for (i=0; i < len; i++) { - key = (key * 1597 + 51749) % 244944; - val = key * (INT64) 301593171 >> 24; - camf[i] ^= ((((key << 8) - val) >> 1) + val) >> 17; + type = get4(); + printf ("type %d\n", type); + get4(); get4(); + wide = get4(); + high = get4(); + if (type == 2) { + camf = malloc (len -= 28); + fread (camf, 1, len, ifp); + for (i=0; i < len; i++) { + high = (high * 1597 + 51749) % 244944; + val = high * (INT64) 301593171 >> 24; + camf[i] ^= ((((high << 8) - val) >> 1) + val) >> 17; + } + } else if (type == 4) { + camf = malloc (len = wide*high*3/2); + memset (huff, 0xff, sizeof huff); + huff[0] = 8; + for (i=0; i < 13; i++) { + tag = getc(ifp); + val = getc(ifp); + for (j=0; j < 256 >> tag; ) + huff[val+ ++j] = tag << 8 | i; + } + fseek (ifp, 6, SEEK_CUR); + getbits(-1); + vpred[0][0] = vpred[0][1] = + vpred[1][0] = vpred[1][1] = 512; + for (j=row=0; row < high; row++) { + for (col=0; col < wide; col++) { + diff = ljpeg_diff(huff); + if (col < 2) hpred[col] = vpred[row & 1][col] += diff; + else hpred[col & 1] += diff; + if (col & 1) { + camf[j++] = hpred[0] >> 4; + camf[j++] = hpred[0] << 4 | hpred[1] >> 8; + camf[j++] = hpred[1]; + } + } + } + } else { + printf ("Unknown CAMF type %d\n", type); + break; } for (pos=camf; (unsigned) (pos-camf) < len; pos += sget4(pos+8)) { - if (strncmp (pos, "CMb", 3)) { - printf("Bad CAMF tag \"%.4s\"\n", pos); - break; - } + if (strncmp (pos, "CMb", 3)) goto done; val = sget4(pos+4); printf (" %4.4s version %d.%d: ", pos, val >> 16, val & 0xffff); switch (pos[3]) { @@ -812,6 +874,7 @@ printf ("\n"); } } +done: free (camf); break; case 0x504f5250: /* PROP */ printf ("entries %d, ", pent=get4()); -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de