[weekly report] week 8: Raw processing in F-Spot



Hi all,

as planned, I wrote a GObject based wrapper around libraw that exposes
the needed functionality. Having never written a GObject from scratch
before, this was quite challenging! After pulling out some hairs, I did
get it working though: libfspotraw was born.

Next up was creating bindings for this library: libfspotraw-sharp. I
refreshed my knowledge about GAPI, the bindings tool for C# (it turns
out I didn't have much knowledge about it ;-)). After quite a lot of
poking and learning stuff the hard way, this also worked.

This allowed me to write an F-Spot loader based on this library, which
can be hooked into the loader infrastructure. Behold! F-Spot is now
capable of loading RAW files at full quality using dcraw (in the form of
libraw). When you click on a RAW, it will instantly load the embedded
preview and will then start loading the full RAW in the background.

This is all still quite slow, something I plan on looking into the
coming week, as well as adding some way of informing the user that this
is happening. I'm also looking into how to extract 16 bit data (which is
not possible through GDK, due to the limitations of GdkPixbuf), which
will be needed for processing of the RAWs.

All code is in gitorious, in my clone (the libfspotraw branch).

As for the shortlog:

Ruben Vermeersch (37):
      Add libfspotraw, a simple GObject LibRaw wrapper.
      Move libfspotraw to lib/
      Move glitz-sharp to lib/
      Move mono-addins to lib/
      Move GKeyFile to lib/
      Move semweb to lib/
      Move Tao to lib/
      Make sure distcheck passes.
      Make sure the conditional in tests is handled correctly.
      Take libfspotraw out of the build for 0.6
      Removed old ChangeLog files
      Fix wrong filename for ChangeLog
      Fix wrong filename (again, sigh).
      Move libfspot to lib/
      Move libjpegtran to lib/
      Move libgphoto2-sharp to lib/
      Move gnome-keyring-sharp to lib/
      Move gtk-sharp-beans to lib/
      Move gio-sharp to lib/
      Move dbus-sharp, dbus-sharp-glib and dpap-sharp to lib/
      Remove CFLAGS and CXXFLAGS definitions.
      Add empty libfspotraw-sharp for libfspotraw bindings.
      Convert absolute path to relative to the build file.
      Add C# bindings for libspotraw. Untested, off-course.
      Add libfspotraw-sharp as a build dependency.
      Add stub interface for LibrawImageLoader.
      Enforce the fact that one loader only loads one image.
      Add a correct constructor to the librawloader.
      Add a simple thumbnail extracting loader.
      Successfully loads thumbnails from .CR2 and .DNG files now, using
LibRaw.
      Enable libraw loading for NEF files, so that sde can enjoy it too.
      Load the full size RAW in the background.
      Add a progress reporting signal.
      Make sure it actually links and runs correctly.
      Abort RAW loading when no longer needed.
      Use the camera white balance when loading a RAW.
      Fix orientation of embedded JPEG.

Have a nice week everybody,
   Ruben


-- 
Ruben Vermeersch (rubenv)
http://www.savanne.be/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]