diff options
| author | Chih-Chung Chang <chihchung@google.com> | 2009-09-22 04:41:10 +0800 |
|---|---|---|
| committer | Chih-Chung Chang <chihchung@google.com> | 2009-09-22 04:42:02 +0800 |
| commit | b8f4725d1bb750e3358a5b5dfcec7b1c5d3b9939 (patch) | |
| tree | c4afb958a5e92c49523de0d239f59a893ca9cf28 /media/java | |
| parent | f8d8b46a2c684d51cd661a9d479dd895420a90b2 (diff) | |
| download | frameworks_base-b8f4725d1bb750e3358a5b5dfcec7b1c5d3b9939.zip frameworks_base-b8f4725d1bb750e3358a5b5dfcec7b1c5d3b9939.tar.gz frameworks_base-b8f4725d1bb750e3358a5b5dfcec7b1c5d3b9939.tar.bz2 | |
Make media scanner read the jpeg orientation tag.
Diffstat (limited to 'media/java')
| -rw-r--r-- | media/java/android/media/MediaScanner.java | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/media/java/android/media/MediaScanner.java b/media/java/android/media/MediaScanner.java index 37a3bd5..3ac5df5 100644 --- a/media/java/android/media/MediaScanner.java +++ b/media/java/android/media/MediaScanner.java @@ -736,6 +736,28 @@ public class MediaScanner if (time != -1) { values.put(Images.Media.DATE_TAKEN, time); } + + int orientation = exif.getAttributeInt( + ExifInterface.TAG_ORIENTATION, -1); + if (orientation != -1) { + // We only recognize a subset of orientation tag values. + int degree; + switch(orientation) { + case ExifInterface.ORIENTATION_ROTATE_90: + degree = 90; + break; + case ExifInterface.ORIENTATION_ROTATE_180: + degree = 180; + break; + case ExifInterface.ORIENTATION_ROTATE_270: + degree = 270; + break; + default: + degree = 0; + break; + } + values.put(Images.Media.ORIENTATION, degree); + } } } |
