Popularity
6.0
Stable
Activity
3.2
Stable
344
6
53
Programming language: Go
License: MIT License
Tags:
Audio/Music
Latest version: v1.2.0
id3v2 alternatives and similar packages
Based on the "Audio/Music" category.
Alternatively, view id3v2 alternatives based on common mentions on social networks and blogs.
-
waveform
DISCONTINUED. Go package capable of generating waveform images from audio streams. MIT Licensed.
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
Promo
www.influxdata.com

Do you think we are missing an alternative of id3v2 or a related project?
Popular Comparisons
README
id3v2
Supported ID3 versions: 2.3, 2.4
Installation
go get -u github.com/bogem/id3v2/v2
Documentation
https://pkg.go.dev/github.com/bogem/id3v2/v2
Usage example
package main
import (
"fmt"
"log"
"github.com/bogem/id3v2/v2"
)
func main() {
tag, err := id3v2.Open("file.mp3", id3v2.Options{Parse: true})
if err != nil {
log.Fatal("Error while opening mp3 file: ", err)
}
defer tag.Close()
// Read tags.
fmt.Println(tag.Artist())
fmt.Println(tag.Title())
// Set tags.
tag.SetArtist("Aphex Twin")
tag.SetTitle("Xtal")
comment := id3v2.CommentFrame{
Encoding: id3v2.EncodingUTF8,
Language: "eng",
Description: "My opinion",
Text: "I like this song!",
}
tag.AddCommentFrame(comment)
// Write tag to file.mp3.
if err = tag.Save(); err != nil {
log.Fatal("Error while saving a tag: ", err)
}
}
Read multiple frames
pictures := tag.GetFrames(tag.CommonID("Attached picture"))
for _, f := range pictures {
pic, ok := f.(id3v2.PictureFrame)
if !ok {
log.Fatal("Couldn't assert picture frame")
}
// Do something with picture frame.
fmt.Println(pic.Description)
}
Encodings
For example, if you want to set comment frame with custom encoding, you may do the following:
comment := id3v2.CommentFrame{
Encoding: id3v2.EncodingUTF16,
Language: "ger",
Description: "Tier",
Text: "Der Löwe",
}
tag.AddCommentFrame(comment)
Text
field will be automatically encoded with UTF-16BE with BOM and written to w.
UTF-8 is default for v2.4, ISO-8859-1 - for v2.3.