Hi,
I'm playing with exiftool (thanks for this awesome tool!!) for a while and read some EXIF documentation (http://www.exiftool.org/TagNames/EXIF.html), I'm coding a little tool, and I'm in a front of something...
I'm trying to understand how exiftool can compute this value :
GPS Latitude : 0 deg 23' 58.91" S
The "S", I get it.
"0 deg 23'", I get it to.
but what about the 58.91" value ?
I explain : using the command below :
$ exiftool -v3 IMG_8394.CR2 | grep -A5 -i "gps"
The concerned values are :
| | 1) GPSLatitudeRef = S
| | - Tag 0x0001 (2 bytes, string[2]):
| | 11072: 53 00 [S.] <-- the famous "S" value, no problem here.
| | 2) GPSLatitude = 0 23.9818 0 (0/1 239818/10000 0/1)
| | - Tag 0x0002 (24 bytes, rational64u[3]):
| | 111d6: 00 00 00 00 01 00 00 00 ca a8 03 00 10 27 00 00 [.............'..]
| | 111e6: 00 00 00 00 01 00 00 00 [........]
[...]
In 2)
the first 8 bytes 00 00 00 00 01 00 00 00 represent 0/1
the second 8 bytes ca a8 03 00 10 27 00 00 represent 239818/10000, so 23.9818...
the third 8 bytes 00 00 00 00 01 00 00 00 represent 0/1
So I totally understand the results "GPSLatitude = 0 23.9818 0 (0/1 239818/10000 0/1)" returned by the commande exiftool -v3.
But I don't find a way to get how we can compute the last part : "58.91".
Someone could explain this to me ? It will be really appreciated.
Another question, but not so important, just curiosity:
The below command :
$exiftool -htmlDump img.CR2 > output.html
display those values (0/1 239818/10000 0/1) and not "0 deg 23' 58.91" S", it's this the normal behavior ? I'm using exiftool 9.76 under MacOSX.
.
By default, ExifTool reports coordinates in degrees, minutes, and seconds, but this may be changed with the -c or -n options.
If this doesn't answer your question, please let me know.
- Phil
Well, that didn't answer my question, but I've figured it out.
Thanks anyway =)
In my previous sample :
| | 1) GPSLatitudeRef = S
| | - Tag 0x0001 (2 bytes, string[2]):
| | 11072: 53 00
| | 2) GPSLatitude = 0 23.9818 0 (0/1 239818/10000 0/1)
| | - Tag 0x0002 (24 bytes, rational64u[3]):
| | 111d6: 00 00 00 00 01 00 00 00 ca a8 03 00 10 27 00 00 [.............'..]
| | 111e6: 00 00 00 00 01 00 00 00 [........]
Where:
d = 00 00 00 00 01 00 00 00 = 0/1 = 0
m = ca a8 03 00 10 27 00 00 = 239818/10000 = 23.9818
s = 00 00 00 00 01 00 00 00 = 0/1 = 0
By applying the formula http://en.wikipedia.org/wiki/Geographic_coordinate_conversion (http://en.wikipedia.org/wiki/Geographic_coordinate_conversion)
The final result is 0 deg 23' 58.91" S.