perkeep/third_party/github.com/rwcarlsen/goexif
Fabian Wickborn 2aed1b8241 Renamed goexif folder to match upstream URL
In the advent of github.com/camlistore/goexif to be closed, this
commit renames the goexif folder in third_party to match the
upstream on GitHub.

The affected import paths have been rewritten accordingly.

Change-Id: I5a8871efd01987944b7f5e93979307857ae16fe7
2014-09-05 17:27:59 +02:00
..
exif Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
exifstat Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
mknote Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
tiff Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
LICENSE Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
README.camlistore Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00
README.md Renamed goexif folder to match upstream URL 2014-09-05 17:27:59 +02:00

README.md

goexif

Provides decoding of basic exif and tiff encoded data. Still in alpha - no guarantees. Suggestions and pull requests are welcome. Functionality is split into two packages - "exif" and "tiff" The exif package depends on the tiff package. Documentation can be found at http://godoc.org/github.com/rwcarlsen/goexif

Like goexif? - Bitcoin tips welcome: 17w65FVqx196Qp7tfCCSLqyvsHUhiEEa7P

To install, in a terminal type:

go get github.com/rwcarlsen/goexif/exif

Or if you just want the tiff package:

go get github.com/rwcarlsen/goexif/tiff

Example usage:

package main

import (
  "os"
  "log"
  "fmt"

  "github.com/rwcarlsen/goexif/exif"
)

func main() {
	fname := "sample1.jpg"

	f, err := os.Open(fname)
	if err != nil {
		log.Fatal(err)
	}

	x, err := exif.Decode(f)
	defer f.Close()
	if err != nil {
		log.Fatal(err)
	}

	camModel, _ := x.Get(exif.Model)
	date, _ := x.Get(exif.DateTimeOriginal)
	fmt.Println(camModel.StringVal())
	fmt.Println(date.StringVal())

	focal, _ := x.Get(exif.FocalLength)
	numer, denom := focal.Rat2(0) // retrieve first (only) rat. value
	fmt.Printf("%v/%v", numer, denom)
}

githalytics.com alpha