diff --git a/README.md b/README.md index 3bd387a..5ac2fc6 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,65 @@ # go-mp4tag MP4 tagger written in Go. + +## Setup +``` +go get github.com/Sorrow446/go-mp4tag +``` +```go +import "github.com/Sorrow446/go-mp4tag" +``` + +## Usage Examples +```go + 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. + + + ```go + 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. + + +```go + 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.