Skip to content
/ id3-cli Public

CLI tool for batch editing ID3 tags of multiple MP3 files

License

Notifications You must be signed in to change notification settings

Leko/id3-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

id3-cli

npm

CLI tool for batch editing ID3 tags of multiple MP3 files

  • Batch fix garbled characters (non-UTF8 encoding) in old mp3 files
  • Batch editing of meta information such as album name and artist
  • Batch reassign track numbers from 1 to sequential numbers.

Install

npm install id3-cli-batch

CLI Usage

Usage: id3 <pattern> [...options]

Arguments:
  pattern: A glob pattern to specify the target file

ID3 options:
  --title           song title (TIT2)
  --artist          song artists (TPE1)
  --album           album title (TALB)
  --track           song number in album (TRCK)
  --genre           song genres (TCON)
  --picture         attached picture (APIC)
  --increment-track set a sequential number from 1 to the songs you specified. The order is ascending by file name

Output options: either one is required
  --overwrite       overwrite the original file
  --out-dir         output files to the specified directory

Other options:
  --help            show this help

Convert ID3 tags into UTF8

If no options are passed, the original value will be kept.

id3 'path/to/*' --overwrite

Change album name and artists

--artist can take multiple values

id3 'path/to/*' --album 'Name' --artist 'Artist1' --artist 'Artist2' --out-dir path/to/out

Set cover image

id3 'path/to/*' --picture 'path/to/image.jpg' --out-dir path/to/out

Node.js API

const { transformByPattern } = require('id3-cli-batch')

const options = {
  album: '...',
  artist: ['...'],
  genre: '...',
  incrementTrack: true,
  outDir: '/path/to/out',
  picture: '/path/to/picture.jpg',
  title: '...',
  track: 1,
}
transformByPattern('/path/to/audio/**/*', options)
  .then((outPaths) => console.log(outPaths))
  .catch((e) => {
    console.error(e)
  })

License

This package is under MIT license.

About

CLI tool for batch editing ID3 tags of multiple MP3 files

Topics

Resources

License

Stars

Watchers

Forks