libgphoto2 photo camera library (libgphoto2) API  2.5.10.1
exif.h File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Include dependency graph for exif.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  exif_parser
 
struct  ExifData
 

Macros

#define EXIF_InteroperabilityIndex   0x1
 
#define EXIF_InteroperabilityVersion   0x2
 
#define EXIF_RelatedImageFileFormat   0x1000
 
#define EXIF_RelatedImageWidth   0x1001
 
#define EXIF_RelatedImageLength   0x1002
 
#define EXIF_NewSubFileType   0xFE
 
#define EXIF_ImageWidth   0x100
 
#define EXIF_ImageLength   0x101
 
#define EXIF_BitsPerSample   0x102
 
#define EXIF_Compression   0x103
 
#define EXIF_PhotometricInterpretation   0x106
 
#define EXIF_FillOrder   0x10A
 
#define EXIF_DocumentName   0x10D
 
#define EXIF_ImageDescription   0x10E
 
#define EXIF_Make   0x10F
 
#define EXIF_Model   0x110
 
#define EXIF_StripOffsets   0x111
 
#define EXIF_Orientation   0x112
 
#define EXIF_SamplesPerPixel   0x115
 
#define EXIF_RowsPerStrip   0x116
 
#define EXIF_StripByteCounts   0x117
 
#define EXIF_XResolution   0x11A
 
#define EXIF_YResolution   0x11B
 
#define EXIF_PlanarConfiguration   0x11C
 
#define EXIF_ResolutionUnit   0x128
 
#define EXIF_TransferFunction   0x12D
 
#define EXIF_Software   0x131
 
#define EXIF_DateTime   0x132
 
#define EXIF_Artist   0x13B
 
#define EXIF_WhitePoint   0x13E
 
#define EXIF_PrimaryChromaticities   0x13F
 
#define EXIF_TransferRange   0x156
 
#define EXIF_JPEGProc   0x200
 
#define EXIF_JPEGInterchangeFormat   0x201
 
#define EXIF_JPEGInterchangeFormatLength   0x202
 
#define EXIF_YCbCrCoefficients   0x211
 
#define EXIF_YCbCrSubSampling   0x212
 
#define EXIF_YCbCrPositioning   0x213
 
#define EXIF_ReferenceBlackWhite   0x214
 
#define EXIF_CFARepeatPatternDim   0x828D
 
#define EXIF_CFAPattern   0x828E
 
#define EXIF_BatteryLevel   0x828F
 
#define EXIF_Copyright   0x8298
 
#define EXIF_ExposureTime   0x829A
 
#define EXIF_FNumber   0x829D
 
#define EXIF_IPTC_NAA   0x83BB
 
#define EXIF_ExifOffset   0x8769
 
#define EXIF_InterColorProfile   0x8773
 
#define EXIF_ExposureProgram   0x8822
 
#define EXIF_SpectralSensitivity   0x8824
 
#define EXIF_GPSInfo   0x8825
 
#define EXIF_ISOSpeedRatings   0x8827
 
#define EXIF_OECF   0x8828
 
#define EXIF_ExifVersion   0x9000
 
#define EXIF_DateTimeOriginal   0x9003
 
#define EXIF_DateTimeDigitized   0x9004
 
#define EXIF_ComponentsConfiguration   0x9101
 
#define EXIF_CompressedBitsPerPixel   0x9102
 
#define EXIF_ShutterSpeedValue   0x9201
 
#define EXIF_ApertureValue   0x9202
 
#define EXIF_BrightnessValue   0x9203
 
#define EXIF_ExposureBiasValue   0x9204
 
#define EXIF_MaxApertureValue   0x9205
 
#define EXIF_SubjectDistance   0x9206
 
#define EXIF_MeteringMode   0x9207
 
#define EXIF_LightSource   0x9208
 
#define EXIF_Flash   0x9209
 
#define EXIF_FocalLength   0x920A
 
#define EXIF_MakerNote   0x927C
 
#define EXIF_UserComment   0x9286
 
#define EXIF_SubSecTime   0x9290
 
#define EXIF_SubSecTimeOriginal   0x9291
 
#define EXIF_SubSecTimeDigitized   0x9292
 
#define EXIF_FlashPixVersion   0xA000
 
#define EXIF_ColorSpace   0xA001
 
#define EXIF_ExifImageWidth   0xA002
 
#define EXIF_ExifImageLength   0xA003
 
#define EXIF_InteroperabilityOffset   0xA005
 
#define EXIF_FlashEnergy   0xA20B /* 0x920B in TIFF/EP */
 
#define EXIF_SpatialFrequencyResponse   0xA20C /* 0x920C - - */
 
#define EXIF_FocalPlaneXResolution   0xA20E /* 0x920E - - */
 
#define EXIF_FocalPlaneYResolution   0xA20F /* 0x920F - - */
 
#define EXIF_FocalPlaneResolutionUnit   0xA210 /* 0x9210 - - */
 
#define EXIF_SubjectLocation   0xA214 /* 0x9214 - - */
 
#define EXIF_ExposureIndex   0xA215 /* 0x9215 - - */
 
#define EXIF_SensingMethod   0xA217 /* 0x9217 - - */
 
#define EXIF_FileSource   0xA300
 
#define EXIF_SceneType   0xA301
 

Typedefs

typedef struct exif_parser exifparser
 

Enumerations

enum  EXIFDataType {
  EXIF_NOTYPE = 0, EXIF_BYTE = 1, EXIF_ASCII = 2, EXIF_SHORT = 3,
  EXIF_LONG = 4, EXIF_RATIONAL = 5, EXIF_SBYTE = 6, EXIF_UNDEFINED = 7,
  EXIF_SSHORT = 8, EXIF_SLONG = 9, EXIF_SRATIONAL = 10, EXIF_FLOAT = 11,
  EXIF_DOUBLE = 12
}
 

Functions

unsigned char * gpi_exif_get_thumbnail_and_size (exifparser *exifdat, long *size)
 
int gpi_exif_stat (exifparser *exifdata)
 

Detailed Description

EXIF file format support library. This API allows to parse, read and modify EXIF data structures. It provides a low-level API which allows to manipulate EXIF tags in a generic way, and a higher-level API which provides more advanced functions such as comment editing, thumbnail extraction, etc.

In the future, vendor-proprietary exif extensions might be supported.