summaryrefslogtreecommitdiff
path: root/gpsinfo.c
diff options
context:
space:
mode:
authorWu-cheng Li <wuchengli@google.com>2010-05-21 12:02:32 +0800
committerWu-cheng Li <wuchengli@google.com>2010-05-21 12:25:15 +0800
commit1ed8197f0cefb2541f630830993e109c59ba822c (patch)
tree6522e6020cd65876ca81b4d0934b28b2692cfbe7 /gpsinfo.c
parent70059dd640afdce1016a7f86a81f625730eb65e4 (diff)
downloadjhead-1ed8197f0cefb2541f630830993e109c59ba822c.tar.gz
Add GPSAltitude and GPSAltitudeRef EXIF tag.
Change-Id: I29fec625f3d3c796caf8ca6197eb3f4e77f08270
Diffstat (limited to 'gpsinfo.c')
-rw-r--r--gpsinfo.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gpsinfo.c b/gpsinfo.c
index a0ebaea..7eef6ba 100644
--- a/gpsinfo.c
+++ b/gpsinfo.c
@@ -26,7 +26,7 @@ static TagTable_t GpsTags[]= {
{ 0x03, "GPSLongitudeRef", FMT_STRING, 2},
{ 0x04, "GPSLongitude", FMT_URATIONAL, 3},
{ 0x05, "GPSAltitudeRef", FMT_BYTE, 1},
- { 0x06, "GPSAltitude", FMT_SRATIONAL, 1},
+ { 0x06, "GPSAltitude", FMT_URATIONAL, 1},
{ 0x07, "GPSTimeStamp", FMT_SRATIONAL, 3},
{ 0x08, "GPSSatellites", FMT_STRING, -1},
{ 0x09, "GPSStatus", FMT_STRING, 2},
@@ -247,11 +247,14 @@ void ProcessGpsInfo(unsigned char * DirStart, int ByteCountUnused, unsigned char
case TAG_GPS_ALT_REF:
ImageInfo.GpsAlt[0] = (char)(ValuePtr[0] ? '-' : ' ');
+ ImageInfo.GpsAltRef = (char)ValuePtr[0];
break;
case TAG_GPS_ALT:
sprintf(ImageInfo.GpsAlt + 1, "%.2fm",
ConvertAnyFormat(ValuePtr, Format));
+ ImageInfo.GpsAltRaw.num = Get32u(ValuePtr);
+ ImageInfo.GpsAltRaw.denom = Get32u(4+(char *)ValuePtr);
break;
case TAG_GPS_TIMESTAMP: