LinuxCommandLibrary

id3tag

Display ID3 tag information from MP3 files

TLDR

Set artist and song title tag of an MP3 file

$ id3tag --artist [artist] --song [song_title] [path/to/file.mp3]
copy

Set album title of all MP3 files in the current directory
$ id3tag --album [album] [*.mp3]
copy

Display help
$ id3tag --help
copy

SYNOPSIS

id3tag [ -a artist ] [ -A album ] [ -t title ] [ -c comment ] [ -g genre ] [ -y year ] [ -T track ] [ -v | --version ] [ -L | --list-genres ] [ --remove-v1 ] [ --remove-v2 ] <file ...>

PARAMETERS

-a artist
    Sets the artist field of the ID3 tag.

-A album
    Sets the album field of the ID3 tag.

-t title
    Sets the title field of the ID3 tag.

-c comment
    Sets the comment field of the ID3 tag.

-g genre
    Sets the genre field. Can be a numeric ID (0-125 for ID3v1) or a string.

-y year
    Sets the year field of the ID3 tag.

-T track
    Sets the track number field of the ID3 tag.

-v, --version
    Displays the version information of the id3tag command.

-L, --list-genres
    Lists all recognized ID3v1 genre names and their corresponding numeric IDs.

--remove-v1
    Removes any existing ID3v1 tag from the specified MP3 files.

--remove-v2
    Removes any existing ID3v2 tag from the specified MP3 files.

<file ...>
    One or more MP3 files on which to perform tag operations. Wildcards are supported.

DESCRIPTION

id3tag is a command-line utility used for manipulating ID3 tags embedded within MP3 audio files.
These tags are essential metadata containers that store information such as the song's artist, title, album, year of release, genre, and comments.
This data is crucial for organizing music collections and enabling media players to display relevant song details.
The id3tag command empowers users to read existing tags, modify specific fields, or write entirely new tag data to MP3 files.
It supports both the older ID3v1 format and a subset of the more advanced ID3v2 frames, primarily focusing on common textual metadata.
It's particularly valuable in scripting environments or for users who prefer managing their music metadata through the command line, ensuring consistency and accuracy across large MP3 libraries.

CAVEATS

The id3tag command primarily offers basic ID3v1 and limited ID3v2 tag manipulation (common text frames like artist, title, album).
For advanced ID3v2 features such as embedded album art, synchronized lyrics, or custom frames, more comprehensive tools like mid3v2 or eyeD3 are generally required.
Operations are performed by overwriting existing tag data, so it's advisable to back up files if sensitive information is involved.
It operates strictly from the command line and does not provide an interactive mode.

ID3 TAG VERSIONS

ID3v1 tags are fixed-length (128 bytes) and typically appended to the end of an MP3 file. They support a limited set of fields: Title, Artist, Album, Year, Comment, and Genre (using numeric IDs).
ID3v2 tags are more flexible, variable-length, and are usually placed at the beginning of an MP3 file. They support a much wider array of 'frames' (fields), including multiple artists, album art, lyrics, and various other detailed metadata, overcoming the limitations of ID3v1.

GENRE HANDLING

When setting the genre using the -g option, you can provide either a numeric ID (corresponding to ID3v1 standard genres, which can be listed with --list-genres) or a text string.
If a text string is used, id3tag will typically write this information into an ID3v2 tag, as ID3v1 only supports numeric genre codes.
It's important to be aware of which tag version is being affected, especially if aiming for strict ID3v1 compatibility.

HISTORY

id3tag has been a long-standing utility in the Linux ecosystem for managing MP3 metadata, particularly useful before the widespread adoption of comprehensive graphical music managers.
Its development focused on providing a straightforward command-line interface for the then-prevalent ID3v1 standard, with incremental additions for basic ID3v2 support.
Its simplicity and efficiency made it a staple for shell scripting and batch processing of MP3 collections, remaining a solid choice for users who prefer minimalist, scriptable tools.

SEE ALSO

mid3v2(1), eyeD3(1), ffmpeg(1), mp3info(1)

Copied to clipboard