File: exiftags.cc

package info (click to toggle)
metacam 0.6-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 184 kB
  • ctags: 196
  • sloc: cpp: 1,750; makefile: 70
file content (121 lines) | stat: -rw-r--r-- 5,942 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
/*
------------------------------------------------------------------------------
MetaCam - Extract EXIF information from digital camera files, with
support for Vendor specific blocks.
Copyright (C) 2000 Daniel Stephens (daniel@cheeseplant.org)

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
------------------------------------------------------------------------------
*/

#include "dpyfuncs.h"

static const char *rcsid="$Id: exiftags.cc,v 1.2 2000/05/29 22:11:28 daniel Exp $";

// Many of these from the TIFF V6.0 Standard
// Extra EXIF references from:
//       http://www.butaman.ne.jp/~tsuruzoh/Computer/Digicams/exif-e.html

knowntag main_known[] = {
    {306,     2, 0, "         Image Creation Date", dpyString},
    {271,     2, 0, "                        Make", dpyString},
    {272,     2, 0, "                       Model", dpyString},
    {305,     2, 0, "            Software Version", dpyString},
    {296,     3, 0, "             Resolution Unit", dpyResolutionType},
    {282,     5, 0, "                X Resolution", dpyResolution},
    {283,     5, 0, "                Y Resolution", dpyResolution},
    {277,     3, 0, "           Samples Per Pixel", dpyUnsigned},
    {258,     3, 0, "             Bits Per Sample", dpyBitsPerSample},
    {270,     2, 0, "           Image Description", dpyString},
    {513,     4, 0, "            Jpeg File Format", dpyYes},
    {262,     3, 0, "  Photometric Interpretation", dpyPhotometric},
    {259,     3, 0, "                 Compression", dpyCompression},
    {0x0213,  3, 0, "           YCbCr Positioning", dpyYCbCrPositioning},
    {0x0112,  3, 1, "               [Orientation]", 0},
    {0x013E,  5, 1, "               [White Point]", 0},
    {0x013F,  5, 1, "      [Primary Chromacities]", 0},
    {0x0211,  5, 1, "        [YCbCr Coefficients]", 0},
    {0x0214,  5, 1, "     [Reference Black/White]", 0},

    {257,     3, 1, "                Image Length", dpyNULL},
    {257,     4, 1, "                Image Length", dpyNULL},
    {256,     3, 1, "                 Image Width", dpyNULL},
    {256,     4, 1, "                 Image Width", dpyNULL},
    {278,     3, 2, "              Rows Per Strip", dpyNULL},
    {278,     4, 2, "              Rows Per Strip", dpyNULL},
    {273,     3, 2, "               Strip Offsets", dpyNULL},
    {273,     4, 2, "               Strip Offsets", dpyNULL},
    {279,     3, 2, "           Strip Byte Counts", dpyNULL},
    {279,     4, 2, "           Strip Byte Counts", dpyNULL},
    {284,     3, 2, "        Planar Configuration", dpyNULL},
    {514,     4, 2, " JPEG Interchange Fmt Length", dpyNULL},
    {515,     3, 2, "       JPEG Restart Interval", dpyNULL},

    {0,0,0,0}
};

knowntag exif_known[] = {
    {0x9290,  2, 0, "    Sub-Second Creation Time", dpyString},
    {0x9003,  2, 0, "          Image Capture Date", dpyString},
    {0x9291,  2, 0, "     Sub-Second Capture Time", dpyString},
    {0x9004,  2, 0, "        Image Digitized Date", dpyString},
    {0x9292,  2, 0, "   Sub-Second Digitized Time", dpyString},
    {0x9204, 10, 0, "               Exposure Bias", dpyExpAdjust},
    {0x920a,  5, 0, "                Focal Length", dpyZoom},
    {0x829a,  5, 0, "               Exposure Time", dpyShutter},

    {0x829d,  5, 0, "                    Aperture", dpyAperture},
    {0xa002,  3, 0, "            Exif Image Width", dpyPixels},
    {0xa002,  4, 0, "            Exif Image Width", dpyPixels},
    {0xa003,  3, 0, "           Exif Image Height", dpyPixels},
    {0xa003,  4, 0, "           Exif Image Height", dpyPixels},

    {0x8822,  3, 0, "            Exposure Program", dpyExposureProgram},
    {0x8827,  3, 0, "            ISO Speed Rating", dpyISO},
    {0x9207,  3, 0, "               Metering Mode", dpyMeteringMode},
    {0x9000,  7, 0, "                EXIF Version", dpyExifVersion},
    {0xa000,  7, 0, "            FlashPix Version", dpyExifVersion},
    {0x9208,  3, 0, "  Light Source/White Balance", dpyLightSource},
    {0x9209,  3, 0, "                       Flash", dpyYesNo},
    {0xa217,  3, 0, "              Sensing Method", dpySensingMethod},
    {0x9102,  5, 0, "   Compressed Bits Per Pixel", dpyRationalAsDouble},
    {0x9202,  5, 0, "              Aperture Value", dpyExifAperture},
    {0x9203,  10,0, "            Brightness Value", dpyExpAdjust},
    {0x9205,  5, 0, "          Max Aperture Value", dpyExifAperture},
    {0xa210,  3, 0, " Focal Plane Resolution Unit", dpyResolutionType},
    {0xa20e,  5, 0, "    Focal Plane X Resolution", dpyResolution},
    {0xa20f,  5, 0, "    Focal Plane Y Resolution", dpyResolution},
    {0x8298,  2, 0, "                   Copyright", dpyString},
    {0x9201,  10,0, "         Shutter Speed Value", dpyExifShutter},

    {0x9101,  7, 1, "   [Component Configuration]", 0},
    {0x9206,  10,1, "          [Subject Distance]", 0},
    {0x9286,  7, 1, "              [User Comment]", 0},

    {0xa001,  3, 1, "                [ColorSpace]", 0},
    {0xa004,  2, 1, "        [Related Sound File]", 0},
    {0xa005,  4, 2, "[ExifInteroperabilityOffset]", 0},
    {0xa300,  7, 1, "               [File Source]", 0},
    {0xa301,  7, 1, "                [Scene Type]", 0},
    {0xa302,  7, 1, "               [CFA Pattern]", 0},
    

    {0,0,0,0}
};

knowntag empty_known[] = {
    {0,0,0,0}
};