You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
153 lines
5.6 KiB
HTML
153 lines
5.6 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<title>Exiv2 - Exif metadata manipulation library and tools</title>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
|
<link type="text/css" rel="stylesheet" href="include/sortabletable.css">
|
|
<script type="text/javascript" src="include/sortabletable.js"></script>
|
|
</head>
|
|
<body>
|
|
|
|
<h1>Exif metadata manipulation library and tools</h1>
|
|
|
|
<h2>MakerNote Formats and Specifications</h2>
|
|
<p>According to the <a title="The Exif 2.2 standard (PDF)" href="http://tsc.jeita.or.jp/avs/data/cp3451.pdf">Exif 2.2 standard</a>, the makernote is <i>"a tag for manufacturers of Exif writers to record any desired information. The contents are up to the manufacturer, but this tag should not be used for any other than its intended purpose."</i> Many (but not all) vendors write the makernote in IFD (Image File Directory) format, i.e., in the same format as the rest of the Exif information is encoded. Many manufacturers apparently store a lot of information in the makernote field but unfortunately, most vendors do not publish their specifications.</p>
|
|
<p>The following table summarizes the structures of the MakerNote field used by some vendors.</p>
|
|
<table class="ReportTable" id="report-1" cellspacing="0">
|
|
<colgroup>
|
|
<col>
|
|
<col>
|
|
<col>
|
|
<col align="center">
|
|
<col>
|
|
</colgroup>
|
|
<thead>
|
|
<tr>
|
|
<th width="8%"><b>Make</b></th>
|
|
<th width="12%"><b>Models</b></th>
|
|
<th width="32%"><b>Format</b></th>
|
|
<th width="8%"><b>Specs</b></th>
|
|
<th width="40%"><b>Remarks</b></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>Canon</td>
|
|
<td> </td>
|
|
<td>IFD</td>
|
|
<td> <a href="#R2">[2]</a></td>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td>Casio</td>
|
|
<td>QV-3000EX, QV-2000UX, QV-8000SX</td>
|
|
<td>IFD</td>
|
|
<td><a href="#R4">[4]</a></td>
|
|
<td>"Early" versions of QV-2000UX and QV-8000SX only
|
|
have 4 bytes in the MakerNote field.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Fujifilm</td>
|
|
<td> </td>
|
|
<td>IFD; starts with string "FUJIFILM" and an offset
|
|
to the first IFD, offsets are relative to the beginning of the MakerNote</td>
|
|
<td><a href="#R1">[1]</a></td>
|
|
<td>Fujifilm's Exif data uses big endian (MM) byte order, but the MakerNote
|
|
uses little endian (II) alignment</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Minolta</td>
|
|
<td> </td>
|
|
<td>IFD</td>
|
|
<td><a href="#R5">[5]</a></td>
|
|
<td>MakerNote numbers are always stored in big endian (MM) byte order</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Nikon</td>
|
|
<td>E990, D1</td>
|
|
<td>IFD (from offset 0x00)</td>
|
|
<td><a href="#R3">[3]</a></td>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td>Nikon</td>
|
|
<td>E700, E800, E900, E900S, E910, E950</td>
|
|
<td>IFD; starts with string "Nikon\0", IFD from offset
|
|
0x08</td>
|
|
<td><a href="#R1">[1]</a></td>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td>Nikon</td>
|
|
<td>E5400, SQ, D2H, D70</td>
|
|
<td>IFD; starts with string "Nikon\0" and a TIFF header
|
|
structure</td>
|
|
<td> </td>
|
|
<td>The TIFF header structure indicates the byte order and the start offset
|
|
of the IFD. IFD offsets are relative to the start of the TIFF header.</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Olympus </td>
|
|
<td>D450Z(C-920Z)</td>
|
|
<td>IFD; starts with string "OLYMP", IFD from offset
|
|
0x07</td>
|
|
<td><a href="#R1">[1]</a></td>
|
|
<td> </td>
|
|
</tr>
|
|
<tr>
|
|
<td>Sanyo</td>
|
|
<td>DSC-MZ2</td>
|
|
<td>IFD</td>
|
|
<td><a href="#R6">[6]</a></td>
|
|
<td>Tag 0x00ff contains the offset to the start of the MakerNote(?).
|
|
The semantics of the value is different in TIFF and JPEG images</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Sigma, Foveon</td>
|
|
<td> </td>
|
|
<td>IFD; Starts with an 8-byte ID string "SIGMA\0\0\0" or
|
|
"FOVEON\0\0"</td>
|
|
<td><a href="#R7">[7]</a></td>
|
|
<td> </td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<script type="text/javascript">
|
|
//<![CDATA[
|
|
var t1 = new SortableTable(
|
|
document.getElementById("report-1"),
|
|
["String", "String", "Number", "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");
|
|
}
|
|
};
|
|
t1.onsort();
|
|
//]]>
|
|
</script>
|
|
<p><a href="http://www.exif.org/">Exif.org</a> has another table with similar
|
|
info and sample pictures: <a href="http://www.exif.org/samples.html">Digital
|
|
Camera Sample Images</a>. According to this source, (at least some) Ricoh and
|
|
Kodak cameras do not write the MakerNote in IFD format.</p>
|
|
<h2>References</h2>
|
|
<p>[1]<a name="R1"></a> <a href="http://park2.wakwak.com/%7Etsuruzoh/Computer/Digicams/exif-e.html">Exif
|
|
file format</a> by TsuruZoh Tachibanaya<br>
|
|
[2]<a name="R2"></a> <a href="http://www.burren.cx/david/canon.html">EXIF MakerNote
|
|
of Canon</a> by David Burren<br>
|
|
[3]<a name="R3"></a> <a href="http://www.tawbaware.com/990exif.htm">MakerNote
|
|
EXIF Tag of the Nikon 990</a> by Max Lyons<br>
|
|
[4]<a name="R4"></a> <a href="http://www.dicasoft.de/casiomn.htm">"MakerNote"
|
|
Exif tag of Casio</a> by Eckhard Henkel<br>
|
|
[5]<a name="R5"></a> <a href="http://www.dalibor.cz/minolta/makernote.htm">Minolta
|
|
MakerNote</a> by Dalibor Jeline<br>
|
|
[6]<a name="R6"></a> <a href="http://www.exif.org/makernotes/SanyoMakerNote.html">Sanyo
|
|
MakerNote</a> by John Hawkins<br>
|
|
[7]<a name="R7"></a> <a href="http://www.x3f.info/technotes/FileDocs/MakerNoteDoc.html">SIGMA and FOVEON EXIF MakerNote Documentation</a> by Foveon</p>
|
|
|
|
</body>
|
|
</html>
|