Summary: | some CR2s are not oriented correctly | ||
---|---|---|---|
Product: | libopenraw | Reporter: | Felix Riemann <friemann> |
Component: | General | Assignee: | Hubert Figuiere <hub> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | samtygier |
Version: | unspecified | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | [release:0.1.0] | ||
i915 platform: | i915 features: |
Description
Felix Riemann
2011-06-04 05:58:27 UTC
No sample file? some sample files http://www.hep.manchester.ac.uk/u/sam/pub/shotwell/ 1391 is in landscape, and displays fine 1392 and 1393 are in portrait, and are flipped some more listed at http://trac.yorba.org/ticket/3508 It works as advertised - the pixbuf loader does not rotation the image. I don't see where gdkpixbuf allow specifying the orientation. And EOG get the orientation from libexif, not from gdkpixbuf. When there is an API in gdkpixbuf to pass that kind of information, feel free to file a new bug. Well, "API" is maybe a bit too big as a word to describe what's actually available. Basically what the JPEG and TIFF loaders do is to set an "orientation" value for the pixbuf using gdk_pixbuf_set_option (see http://git.gnome.org/browse/gdk-pixbuf/tree/gdk-pixbuf/io-jpeg.c?id=3645ce712e1c41a7a800585a366402776b2fe1bf#n536). gdk_pixbuf_apply_embedded_orientation() is then using this or the application could query the value (which eog doesn't, but could be added as a fallback if no Exif data is available e.g. when loading TIFFs where eog doesn't/can't extract the necessary data). If you think this is too much of a hack to implement, I could live with that as well as I have plans on splitting up eog's image loading (SVG <--> Pixbuf) code in the longterm anyway. So if libopenraw's API allows reading the orientation, I guess one could add another special case for RAW files as well then. But this does not help EOG since at no point can I find in eog git master tree where it actually get that info from gdk-pixbuf. Well, admittedly eog doesn't use it yet. I don't remember the exact details but we decided to wait a bit with the implementation back when this functionality was added to GdkPixbuf. And then we basically forgot about it or found no time to implement it (the biggest problem for Claudio and me right now). :( But during investigation of this bug I got the impression that it should be possible to implement it as a fallback for cases where we don't parse Exif data yet (TIFF, RAW) or when building eog without libexif. If you want to use it as some kind of testcase I could look into pushing the code I used for debugging into master when I find the time to clean it up and do some testing (probably at the weekend). This is fixed in master. Thanks. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.