All Projects → eidoriantan → mp3tag.js

eidoriantan / mp3tag.js

Licence: MIT license
MP3 tagging library written in pure JavaScript for Node.js and browsers

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to mp3tag.js

dart-tags
ID3 Tag parser written on the pure dart language.
Stars: ✭ 35 (-10.26%)
Mutual labels:  mp3, id3v2, id3v1, id3
audio-metadata
A library for reading and, in the future, writing audio metadata. https://audio-metadata.readthedocs.io/
Stars: ✭ 41 (+5.13%)
Mutual labels:  mp3, id3v2, id3v1, id3
Mp3Info
The fastest PHP library to extract mp3 meta information (duration, bitrate, samplerate and so on) and tags (id3v1, id3v2).
Stars: ✭ 114 (+192.31%)
Mutual labels:  mp3, mp3tag, id3v2, id3v1
Mp3ID3Tagger
🎶🎵A macOS application to edit the ID3 tag of your mp3 files. Developed with RxSwift and RxCocoa. 🎸🎼
Stars: ✭ 17 (-56.41%)
Mutual labels:  mp3, id3v2, id3v1, id3
laravel-getid3
A Laravel package to extract metadata from media files. mp3, aac, etc. It can be used with files stored on different disks such as local disk, S3 etc.
Stars: ✭ 50 (+28.21%)
Mutual labels:  id3v2, id3v1, id3
meta-audio
A PHP library to read and write metadata tags to audio files (MP3, ID3, APE, etc)
Stars: ✭ 32 (-17.95%)
Mutual labels:  mp3, id3v2, id3v1
rust-id3
A rust library for reading and writing ID3 metadata
Stars: ✭ 161 (+312.82%)
Mutual labels:  id3v2, id3
audio-tag-analyzer
Extracts metadata music metadata found in audio files
Stars: ✭ 18 (-53.85%)
Mutual labels:  mp3, id3
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 (+225.64%)
Mutual labels:  mp3, id3v2
Id3
Library to read, modify and write ID3 & Lyrics3 tags in MP3 files. Provides an extensible framework for retrieving ID3 information from online services.
Stars: ✭ 27 (-30.77%)
Mutual labels:  mp3, id3
go-xmp
A native Go SDK for the Extensible Metadata Platform (XMP)
Stars: ✭ 36 (-7.69%)
Mutual labels:  mp3, id3
audius
🎧 A cross-platform app for downloading songs from YouTube and Spotify
Stars: ✭ 19 (-51.28%)
Mutual labels:  mp3, id3
tagtool
Mass Clean MP3 Tags
Stars: ✭ 22 (-43.59%)
Mutual labels:  mp3, id3
Ytmdl
A simple app to get songs from YouTube in mp3 format with artist name, album name etc from sources like iTunes, Spotify, LastFM, Deezer, Gaana etc.
Stars: ✭ 2,070 (+5207.69%)
Mutual labels:  mp3, id3
vuetify-audio
A Vue audio player base on Vuetify UI framework: https://wilsonwu.github.io/dist/index.html#/vuetifyaudio
Stars: ✭ 137 (+251.28%)
Mutual labels:  mp3
klangsynthese
Waveform and Audio Synthesis library in Go
Stars: ✭ 57 (+46.15%)
Mutual labels:  mp3
MusicDownloader
It is a tool to download the music files such as .mp3 from netease cloud
Stars: ✭ 63 (+61.54%)
Mutual labels:  mp3
retro-winamp-block
A Winamp-styled audio block for all your retro music player needs.
Stars: ✭ 14 (-64.1%)
Mutual labels:  mp3
cover4mp3
[Deprecated] Fetching album covers for your songs.
Stars: ✭ 12 (-69.23%)
Mutual labels:  mp3
audio-player
🎵 Music player with custom controls, playlist, filters, and search.
Stars: ✭ 137 (+251.28%)
Mutual labels:  mp3

mp3tag.js Banner

Node.js CI npm Maintenance

mp3tag.js is an open sourced JavaScript library used to edit the metadata of audio files. It currently supports ID3v1, ID3v2.3, and ID3v2.4 tags.

Visit https://mp3tag.js.org to learn more about the library and view it in action through an editor. You can also explore the examples directory.

The website is also open sourced and can be viewed at the gh-pages branch.

Features

  • Read, write, and remove ID3 tags
  • Supports unsynchronisation
  • Standards compliant. See id3.org

Installation

You can download the ready-to-use script at GitHub releases or you can build your own by cloning this repository using git then build it.

git clone https://github.com/eidoriantan/mp3tag.js
cd ./mp3tag.js
npm install
npm run build

You can also install this package by using npm:

npm install --save mp3tag.js@latest

If you are using browser, you can just install the library through a CDN:

<script src="https://cdn.jsdelivr.net/npm/mp3tag.js@latest/dist/mp3tag.min.js">

Usage

For browsers:

<input type="file" id="input-file" accept="audio/mpeg">
<script>
const inputFile = document.getElementById('input-file')
inputFile.onchange = function () {
  const reader = new FileReader()
  reader.onload = function () {
    const buffer = this.result

    // MP3Tag Usage
    const mp3tag = new MP3Tag(buffer)
    mp3tag.read()

    // Handle error if there's any
    if (mp3tag.error !== '') throw new Error(mp3tag.error)
    else console.log(mp3tag.tags)
  }

  if (this.files.length > 0) {
    reader.readAsArrayBuffer(this.files[0])
  }
}
</script>

For Node.js:

const MP3Tag = require('mp3tag.js')
const fs = require('fs')

const buffer = fs.readFileSync('/path/to/audio.mp3')
const mp3tag = new MP3Tag(buffer)

mp3tag.read()

// Handle error if there's any
if (mp3tag.error !== '') throw new Error(mp3tag.error)
else console.log(mp3tag.tags)

If you want a detailed documentations, please visit the documentations page at mp3tag.js.org.

Support

If you had found a bug or any unexpected behavior, you can submit an issue through GitHub issues. If you wanted to contribute to this repository, please refer to CONTRIBUTING.md.

You can also show your support by becoming a patron!

Patreon

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].