Learn R Programming

exiftoolr (version 0.1.0)

exif_read: Read EXIF and other metadata from files

Description

Reads EXIF and other metadata into a data.frame by calling Phil Harvey's ExifTool command-line application.

Usage

exif_read(path, tags = NULL, recursive = FALSE, args = NULL,
  quiet = TRUE)

Arguments

path

A vector of filenames.

tags

A vector of tags to output. It is a good idea to specify this when reading large numbers of files, as it decreases the output overhead significantly. Spaces will be stripped in the output data frame. This parameter is not case-sensitive.

recursive

TRUE to pass the "-r" option to ExifTool.

args

Additional arguments.

quiet

Use FALSE to display diagnostic information. Default value is TRUE

Value

A data frame of class "exiftoolr" with one row per file processed. The first column, named "SourceFile" gives the name(s) of the processed files. Subsequent columns contain info from the tags read from those files.

Note that binary tags such as thumbnails are loaded as base64-encoded strings that start with "base64:". Although these are truncated in printed versions of the returned data.frame, they are left unaltered in the data.frame itself.

Details

From the ExifTool website: "ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in a wide variety of files. ExifTool supports many different metadata formats including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop IRB, FlashPix, AFCP and ID3, as well as the maker notes of many digital cameras by Canon, Casio, FLIR, FujiFilm, GE, HP, JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Motorola, Nikon, Nintendo, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One, Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and Sony."

For more information, see the ExifTool website.

References

http://www.sno.phy.queensu.ca/~phil/exiftool/

Examples

Run this code
# NOT RUN {
files <- dir(system.file(package = "exiftoolr", "images"),
                  pattern = "*.jpg", full.names = TRUE)
exifinfo <- exif_read(files)
exif_read(files, tags = c("filename", "imagesize"))
# }

Run the code above in your browser using DataLab