22

[Golang] Read JPEG Image Date via Exif Metadata

 2 years ago
source link: http://siongui.github.io/2016/03/16/go-read-jpeg-date-via-exif-metadata/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

[Golang] Read JPEG Image Date via Exif Metadata

March 16, 2016

Read JPEG image date from Exif metadata in Golang.

We use goexif package to read Exif metadata. Install it by:

$ go get -u github.com/rwcarlsen/goexif/exif

Source code:

date.go | repository | view raw

package jpgdate

import (
	"fmt"
	"github.com/rwcarlsen/goexif/exif"
	"io/ioutil"
	"os"
	"path"
)

func ReadJpegDate(dirname string) {
	files, err := ioutil.ReadDir(dirname)
	if err != nil {
		panic(err)
	}

	for _, file := range files {
		fpath := path.Join(dirname, file.Name())
		println(fpath)
		f, err := os.Open(fpath)
		if err != nil {
			panic(err)
		}
		defer f.Close()
		x, err := exif.Decode(f)
		if err != nil {
			panic(err)
		}
		tm, _ := x.DateTime()
		fmt.Println(tm.Date())
	}
}

date_test.go | repository | view raw

package jpgdate

import "testing"

func TestReadJpegDate(t *testing.T) {
	ReadJpegDate("/home/foo/Desktop/Photos/")
}

Tested on: Ubuntu Linux 15.10, Go 1.6.


References:

[1]rwcarlsen/goexif: Decode embedded EXIF meta data from image files.

[3]golang read jpeg metadata

[4]python read jpeg metadata

[5]Reading video stream metadata with go : golang


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK