Hi! :)

On Mon, 2014-10-13 at 20:13 -0400, Yuval Levy wrote:
> > Yuval Levy <[email protected]> a écrit
> >
> > Just a guess here but it seems that the file is including <lcms.h>
> > which on my Debian is provided by package liblcms1-dev, liblcms2-dev is
> > providing /usr/include/lcms2.h instead. So I suppose installing
> > liblcms1-dev should fix the issue.
> 
> Merci Emmanuel!
> 
> Yes, that was it. Installing liblcms2-dev got me through the autogen
> missing dependencies, but failed at the make stage.  A little detail to
> be fixed in the build system, for those who understand autogen.  I
> barely understand cmake, so I can't help with that...

I believe the specific plugin should be fixed. We do not depend on
lcms-1. I think it could easily be guarded with HAVE_LCMS2 like done in
rs-cmm.c.

> Now I have the latest source code from SVN, it builds and run well.  The
> purpose of getting the source code building is that I want to try to
> hunt a bug: <bugzilla.rawstudio.org/show_bug.cgi?id=639>
> 
> If somebody can point me to the area of the source code that I can start
> digging into, I would very much appreciate.  I guess the place to start
> looking into is /plugins/load-rawspeed/rawspeed/ArwDecoder.cpp but I am
> not sure, any pointer is appreciated.

The problem with Bug639 is probably that Rawstudio fails to load white
balance data from camera. Be warned, it can be very tricky to get
right ;)

Start by looking in plugins/meta-tiff/tiff-meta.c.

Let's walk through a few areas of interest:
rs_plugin_load() will call rs_filetype_register_meta_loader() and
register a function for loading metadata for arw-files.

sony_load_meta(); is the function registered. It wraps RSMetadata with a
few Sony-specific parameters. Then it calls tif_load_meta().

tif_load_meta() is a loader for .tif-files (which .arw is). It doesn't
do much more than calling tiff_load_meta().

tiff_load_meta() will iterate though a TIFF-structure calling
ifd_reader() when needed.

ifd_reader() is where the "magic happens". It's a big ugly state machine
reading tiff tags.

private_sony() will probably be called from ifd_reader(). It should try
to read makernotes.

ifd_reader() or private_sony() will read white balance settings from the
raw file. Start there :)

I usually use exiftool and exifprobe to get an overview of the raw file
itself.

/Anders


_______________________________________________
Rawstudio-dev mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-dev

Reply via email to