Files
go-mp4tag/README.md
2022-06-12 08:06:53 +01:00

1.2 KiB

go-mp4tag

MP4 tagger written in Go.

Setup

go get github.com/Sorrow446/go-mp4tag
import "github.com/Sorrow446/go-mp4tag"

Usage Examples

	tags := &mp4tag.Tags{
		Album: "album",
		AlbumArtist: "album artist",
		Title:       "title",
		TrackNumber: 1,
		TrackTotal:  20,
		Genre: "genre",
		DiskNumber:  3,
		DiskTotal:   10,
		Comment:     "comment",
	}
	err := mp4tag.Write("1.m4a", tags)
	if err != nil {
		panic(err)
	}

Write album, album artist, title, track number, track total, genre, disk number, disk total, and comment tags.

   tags := &mp4tag.Tags{
   	Custom: map[string]string{
   		"CUSTOMFIELD": "custom field",
   		"CUSTOMFIELD2": "custom field 2",
   	},
   	Delete: []string{"genre", "cover"},
   }
   err := mp4tag.Write("1.m4a", tags)
   if err != nil {
   	panic(err)
   }

Write two custom fields named CUSTOMFIELD and CUSTOMFIELD2, delete genre tag, and remove cover.

	coverBytes, err := ioutil.ReadFile("cover.jpg")
	if err != nil {
		panic(err)
	}
	tags := &mp4tag.Tags{
		Cover: coverBytes,
	}
	err = mp4tag.Write("1.m4a", tags)
	if err != nil {
		panic(err)
	}

Write cover from cover.jpg.

Thank you

This library relies heavily on abema's go-mp4 library.