[Digikam-devel] [kscreensaver] [Bug 311247] Slideshow screensaver doesn't rotate Canon CR2 raw files to portrait mode

Gilles Caulier caulier.gilles at gmail.com
Thu Mar 14 10:08:45 GMT 2013


https://bugs.kde.org/show_bug.cgi?id=311247

Gilles Caulier <caulier.gilles at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|libkexiv2                   |screensavers
            Version|unspecified                 |4.9.4
           Assignee|digikam-devel at kde.org       |kscreensaver-bugs-null at kde.
                   |                            |org
            Product|digikam                     |kscreensaver

--- Comment #9 from Gilles Caulier <caulier.gilles at gmail.com> ---
Problem is in slideshow.cpp implementation.

Here you try to load RAW image using QImage container. QImage do not support
RAW file through Qt or KDE image loader.

Canon RAW file are tiff/ep based format. QT detect TIFF and use relevant loader
which is exist in KDELibs.

... But it's wrong. definitively the image loaded by this way is not the right
image.

To resume : RAW format are complex container with multiple image embeded,
including RAW data, JPEG preview embeded, and metadata...

To load RAW image preview, you need to use libkdcraw from kdegraphics (the
companion of libkexiv2). This lib is also done by digiKam team.

Loading RAW preview in QImage is very simple. Look code from Kipi-plugin OpenGL
image viewer as example :

https://projects.kde.org/projects/extragear/graphics/kipi-plugins/repository/revisions/master/entry/imageviewer/texture.cpp#L124

Code to autorotate image based on KEXiv2 is also included in this method. It
use KPImageInfo which return orientation flags from KIPI host, which is in fact
Exif orientation flag...

Gilles Caulier

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Digikam-devel mailing list