After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 710492 - JPEG loader does not respect EXIF Orientation tag
JPEG loader does not respect EXIF Orientation tag
Status: RESOLVED OBSOLETE
Product: GEGL
Classification: Other
Component: general
git master
Other All
: Normal normal
: ---
Assigned To: Default Gegl Component Owner
Default Gegl Component Owner
Depends on:
Blocks:
 
 
Reported: 2013-10-19 04:19 UTC by Dan Doel
Modified: 2018-05-22 12:06 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
jpg-load: Add orientation property for reading Exif tag (7.10 KB, patch)
2015-01-15 13:04 UTC, Debarshi Ray
needs-work Details | Review
jpg-load: Add orientation property for reading Exif tag (7.16 KB, patch)
2015-01-22 13:05 UTC, Debarshi Ray
none Details | Review

Description Dan Doel 2013-10-19 04:19:23 UTC
I have several photos that were taken with a phone camera. The thumbnail view displays everything oriented properly, but the full size view shows many of the pictures sideways or even upside down.

I can provide a test photo if need be, but I imagine you can generate your own, and it won't waste space on your bug tracker.
Comment 1 Debarshi Ray 2013-10-20 14:08:32 UTC
It would still be nice to have a test photo. You can email it to rishi.is@lostca.se if it is too big to be attached here.
Comment 2 Dan Doel 2013-10-20 15:46:45 UTC
Turns out I'll have to e-mail it; it exceeds the bug tracker's maximum attachment size. I'll do so shortly.
Comment 3 Debarshi Ray 2014-03-13 12:20:51 UTC
After a brief discussion in #gegl, we decided that this needs to be fixed in the loaders used by the gegl:load operation.
Comment 4 Debarshi Ray 2015-01-14 16:59:31 UTC
There are sample images in bug 734844
Comment 5 Debarshi Ray 2015-01-15 13:04:30 UTC
Created attachment 294595 [details] [review]
jpg-load: Add orientation property for reading Exif tag
Comment 6 Phuc Nguyen 2015-01-19 03:26:08 UTC
I cannot play picture file with format JPEG and BITMAP.
Comment 7 Jon Nordby 2015-01-20 18:14:26 UTC
Review of attachment 294595 [details] [review]:

What are the meaning of the 9 different Exif values?

I think we should expose a standardized property (type) for the orientation, so that all loaders (png, gif, jpeg, $foo) will have the same "interface".

When changing the backing storage for a property value (o->orientation = something), pretty sure you must call g_object_notify() to signal the change.

Also, the propety should be read-only, because it cannot be set from outside.
Comment 8 Jon Nordby 2015-01-20 20:52:11 UTC
We could have a GeglOrientation enum, similar and maybe even compatible value-for-value with the Exif ones.
https://github.com/GNOME/gexiv2/blob/master/gexiv2/gexiv2-metadata.h#L45
http://jpegclub.org/exif_orientation.html
Comment 9 Debarshi Ray 2015-01-22 13:05:03 UTC
(In reply to comment #7)
> When changing the backing storage for a property value (o->orientation =
> something), pretty sure you must call g_object_notify() to signal the change.

Done.

> Also, the propety should be read-only, because it cannot be set from outside.

That will need some addition to the chant system because currently all properties are READWRITE. What about a read_only() modifier similar to description()? pippin said that he preferred a modifier instead of adding an extra flags parameter to property_int, etc..
Comment 10 Debarshi Ray 2015-01-22 13:05:48 UTC
Created attachment 295164 [details] [review]
jpg-load: Add orientation property for reading Exif tag
Comment 11 GNOME Infrastructure Team 2018-05-22 12:06:43 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gegl/issues/16.