dhowden / Tag
Licence: bsd-2-clause
ID3, MP4 and OGG/FLAC metadata parsing in Go
Stars: ✭ 314
Programming Languages
go
31211 projects - #10 most used programming language
Projects that are alternatives of or similar to Tag
loudgain
ReplayGain 2.0 loudness normalizer based on the EBU R128/ITU BS.1770 standard (-18 LUFS, FLAC, Ogg, MP2, MP3, MP4, M4A, AAC, ALAC, Opus, ASF, WMA, WAV, AIFF, WavPack, APE)
Stars: ✭ 127 (-59.55%)
Mutual labels: mp4, mp3, flac
Mutagen
Python module for handling audio metadata
Stars: ✭ 760 (+142.04%)
Mutual labels: mp3, mp4, flac
Music Metadata
Stream and file based music metadata parser for node. Supporting a wide range of audio and tag formats.
Stars: ✭ 455 (+44.9%)
Mutual labels: mp3, mp4, flac
audio-metadata
A library for reading and, in the future, writing audio metadata. https://audio-metadata.readthedocs.io/
Stars: ✭ 41 (-86.94%)
Mutual labels: mp4, mp3, flac
Ni Media
NI Media is a C++ library for reading and writing audio streams.
Stars: ✭ 158 (-49.68%)
Mutual labels: mp3, mp4, flac
Mediafile
A unified reader of metadata from audio & video files.
Stars: ✭ 138 (-56.05%)
Mutual labels: mp3, mp4, flac
Av Converter
[av-converter.com] Audio and Video Converter, and YouTube downloader. Convert to MP3, MP4, AAC, FLAC, AC3, WAV, etc.
Stars: ✭ 97 (-69.11%)
Mutual labels: mp3, mp4, flac
Atldotnet
Fully managed, portable and easy-to-use C# library to read and edit audio data and metadata (tags) from various audio formats, playlists and CUE sheets
Stars: ✭ 180 (-42.68%)
Mutual labels: mp3, mp4, flac
Audioplayer
Audio Player for Nextcloud and ownCloud
Stars: ✭ 179 (-42.99%)
Mutual labels: mp3, mp4, flac
Symphonia
Pure Rust multimedia format demuxing, tag reading, and audio decoding library
Stars: ✭ 191 (-39.17%)
Mutual labels: mp3, mp4, flac
genshin-audio-exporter
Export audio files from Genshin Impact game data into different audio formats.
Stars: ✭ 83 (-73.57%)
Mutual labels: mp3, flac
acxi
acxi is an audio conversion tool that helps sync lossless to lossy formats.
Stars: ✭ 35 (-88.85%)
Mutual labels: mp3, flac
discogstagger
Console based audio-file metadata tagger that uses the Discogs.com API v2 (JSON based). Relies on the Mutagen and discogs-client libraries. Currently supports FLAC and MP3 file types.
Stars: ✭ 65 (-79.3%)
Mutual labels: mp3, flac
MP3/MP4/OGG/FLAC metadata parsing library
This package provides MP3 (ID3v1,2.{2,3,4}) and MP4 (ACC, M4A, ALAC), OGG and FLAC metadata detection, parsing and artwork extraction.
Detect and parse tag metadata from an io.ReadSeeker
(i.e. an *os.File
):
m, err := tag.ReadFrom(f)
if err != nil {
log.Fatal(err)
}
log.Print(m.Format()) // The detected format.
log.Print(m.Title()) // The title of the track (see Metadata interface for more details).
Parsed metadata is exported via a single interface (giving a consistent API for all supported metadata formats).
// Metadata is an interface which is used to describe metadata retrieved by this package.
type Metadata interface {
Format() Format
FileType() FileType
Title() string
Album() string
Artist() string
AlbumArtist() string
Composer() string
Genre() string
Year() int
Track() (int, int) // Number, Total
Disc() (int, int) // Number, Total
Picture() *Picture // Artwork
Lyrics() string
Comment() string
Raw() map[string]interface{} // NB: raw tag names are not consistent across formats.
}
Audio Data Checksum (SHA1)
This package also provides a metadata-invariant checksum for audio files: only the audio data is used to construct the checksum.
http://godoc.org/github.com/dhowden/tag#Sum
Tools
There are simple command-line tools which demonstrate basic tag extraction and summing:
$ go get github.com/dhowden/tag/...
$ cd $GOPATH/bin
$ ./tag 11\ High\ Hopes.m4a
Metadata Format: MP4
Title: High Hopes
Album: The Division Bell
Artist: Pink Floyd
Composer: Abbey Road Recording Studios/David Gilmour/Polly Samson
Year: 1994
Track: 11 of 11
Disc: 1 of 1
Picture: Picture{Ext: jpeg, MIMEType: image/jpeg, Type: , Description: , Data.Size: 606109}
$ ./sum 11\ High\ Hopes.m4a
2ae208c5f00a1f21f5fac9b7f6e0b8e52c06da29
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].