|
|
|
<table class="ReportTable" id="report-1" cellspacing="0">
|
|
|
|
<colgroup>
|
|
|
|
<col>
|
|
|
|
<col>
|
|
|
|
<col>
|
|
|
|
<col>
|
|
|
|
<col>
|
|
|
|
<col align="center">
|
|
|
|
<col>
|
|
|
|
</colgroup>
|
|
|
|
<thead>
|
|
|
|
<tr>
|
|
|
|
<th><b>Make</b></th>
|
|
|
|
<th><b>Format</b></th>
|
|
|
|
<th><b>Header</b></th>
|
|
|
|
<th><b>Endian</b> <sup>1)</sup></th>
|
|
|
|
<th><b>Offsets</b> <sup>2)</sup></th>
|
|
|
|
<th><b>Ref</b></th>
|
|
|
|
<th><b>Remarks</b></th>
|
|
|
|
</tr>
|
|
|
|
</thead>
|
|
|
|
<tbody>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>Canon</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>None</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R2">[2]</a></td>
|
|
|
|
<td>Some CR2 images have a non-zero next-IFD pointer</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>Casio</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td><a href="#R4">[4]</a></td>
|
|
|
|
<td>Not supported by Exiv2 yet</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>FUJI</td>
|
|
|
|
<td>IFD, usually at offset 12</td>
|
|
|
|
<td>Starts with the string "FUJI"
|
|
|
|
and a 4 byte pointer to the IFD</td>
|
|
|
|
<td>Little-endian (II)</td>
|
|
|
|
<td>Relative to the beginning of the makernote</td>
|
|
|
|
<td><a href="#R1">[1]</a></td>
|
|
|
|
<td>Exif data uses big-endian (MM) byte order</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>Minolta, KONICA MINOLTA</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>None</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R5">[5]</a></td>
|
|
|
|
<td>Camera settings tag is encoded in big-endian (MM) style, regardless of
|
|
|
|
the encoding style of the Exif data</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>NIKON</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>None</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R3">[3]</a></td>
|
|
|
|
<td>Models using this makernote include E990, D1</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>NIKON</td>
|
|
|
|
<td>IFD, at offset 8</td>
|
|
|
|
<td>"Nikon\0" followed by two bytes of unknown meaning</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R1">[1]</a></td>
|
|
|
|
<td>Models using this makernote include E700, E800, E900, E900S, E910, E950</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>NIKON</td>
|
|
|
|
<td>IFD, usually at offset 18</td>
|
|
|
|
<td>"Nikon\0" followed by 4 bytes which look like a version code
|
|
|
|
and a TIFF header</td>
|
|
|
|
<td>From makernote TIFF header</td>
|
|
|
|
<td>Relative to the start of the makernote TIFF header</td>
|
|
|
|
<td> </td>
|
|
|
|
<td>Models using this makernote include E5400, SQ, D2H, D70, D100, D200.
|
|
|
|
Makernote IFD of the D200 has no next-IFD pointer. (Is this a bug?)</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>OLYMPUS</td>
|
|
|
|
<td>IFD, at offset 8</td>
|
|
|
|
<td>"OLYMP\0" followed by two bytes of unknown meaning</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R1">[1]</a></td>
|
|
|
|
<td> </td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>Sanyo</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td>-</td>
|
|
|
|
<td><a href="#R6">[6]</a></td>
|
|
|
|
<td>Not supported by Exiv2 yet</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>SIGMA, FOVEON</td>
|
|
|
|
<td>IFD, at offset 10</td>
|
|
|
|
<td>"SIGMA\0\0\0" or "FOVEON\0\0" followed by two bytes
|
|
|
|
of unknown meaning</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R7">[7]</a></td>
|
|
|
|
<td> </td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>Panasonic</td>
|
|
|
|
<td>IFD without a next-IFD pointer at offset 12</td>
|
|
|
|
<td>"Panasonic\0\0\0"</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R8">[8]</a></td>
|
|
|
|
<td> </td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>PENTAX</td>
|
|
|
|
<td>IFD at offset 6</td>
|
|
|
|
<td>"AOC\0" followed by two bytes of unknown meaning</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td><a href="#R11">[11]</a></td>
|
|
|
|
<td> </td>
|
|
|
|
</tr>
|
|
|
|
<tr class="OddRow">
|
|
|
|
<td>SONY</td>
|
|
|
|
<td>IFD without a next-IFD pointer at offset 12</td>
|
|
|
|
<td>"SONY DSC \0\0\0"</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td>Seen in Jpeg images, e.g., from DSC-W7, DSC-R1</td>
|
|
|
|
</tr>
|
|
|
|
<tr class="EvenRow">
|
|
|
|
<td>SONY</td>
|
|
|
|
<td>IFD</td>
|
|
|
|
<td>None</td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td> </td>
|
|
|
|
<td>Seen in SR2 images, e.g., from DSC-R1</td>
|
|
|
|
</tr>
|
|
|
|
</tbody>
|
|
|
|
</table>
|
|
|
|
<script type="text/javascript">
|
|
|
|
//<![CDATA[
|
|
|
|
var t1 = new SortableTable(
|
|
|
|
document.getElementById("report-1"),
|
|
|
|
["String", "String", "String", "String", "String", "String", "String"]
|
|
|
|
);
|
|
|
|
t1.onsort = function () {
|
|
|
|
var rows = t1.tBody.rows;
|
|
|
|
var l = rows.length;
|
|
|
|
for (var i = 0; i < l; i++) {
|
|
|
|
removeClassName(rows[i], i % 2 ? "OddRow" : "EvenRow");
|
|
|
|
addClassName(rows[i], i % 2 ? "EvenRow" : "OddRow");
|
|
|
|
}
|
|
|
|
};
|
|
|
|
//]]>
|
|
|
|
</script>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
<small>
|
|
|
|
<sup>1)</sup> If not specified, the byte order of the Exif data is applicable.<br>
|
|
|
|
<sup>2)</sup> If not specified, offsets are relative to the start of the TIFF header.
|
|
|
|
</small>
|
|
|
|
</p>
|