101

Which application would you recommend for Linux to tag MP3s? Under Windows I used to use Tag&Rename and liked it a lot; it works well under Wine, but I want something that runs natively.

2

12 Answers 12

91

There are various:

  • easytag has a lot of options
  • kid3 if you're on a Qt/KDE environment
  • id3v2 or eyeD3 for the command line
  • Generally music players can also edit common tags, f.e. banshee, rhythmbox or amarok

and a lot others, try searching your distributions repository and test some of them.

3
  • 9
    Caution using id3v2 as it does not support unicode and will corrupt the tags of any modern mp3s which use unicode (as mentioned by @user495470 in his answer suggesting mid3v2 instead)
    – gene_wood
    Aug 13, 2016 at 22:02
  • 10
    id3v2 now supports unicode Aug 10, 2017 at 7:57
  • +1 for eyeD3 - also a Python library by the same name which powers it, and gives you access to more flexibility if you need to drop down a level; also nice Plugin and ad-hoc Python module support.
    – dsz
    Jan 2 at 23:04
78

I mostly use mid3v2. You can install it with sudo apt-get install python-mutagen in Ubuntu or with sudo easy_install pip;sudo pip install mutagen in OS X.

$ mid3v2 -h
Usage: mid3v2 [OPTION] [FILE]...

Mutagen-based replacement for id3lib's id3v2.

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -v, --verbose         be verbose
  -q, --quiet           be quiet (the default)
  -e, --escape          enable interpretation of backslash escapes
  -f, --list-frames     Display all possible frames for ID3v2.3 / ID3v2.4
  --list-frames-v2.2    Display all possible frames for ID3v2.2
  -L, --list-genres     Lists all ID3v1 genres
  -l, --list            Lists the tag(s) on the open(s)
  --list-raw            Lists the tag(s) on the open(s) in Python format
  -d, --delete-v2       Deletes ID3v2 tags
  -s, --delete-v1       Deletes ID3v1 tags
  -D, --delete-all      Deletes ID3v1 and ID3v2 tags
  --delete-frames=FID1,FID2,...
                        Delete the given frames
  -C, --convert         Convert tags to ID3v2.4 (any editing will do this)
  -a "ARTIST", --artist="ARTIST"
                        Set the artist information
  -A "ALBUM", --album="ALBUM"
                        Set the album title information
  -t "SONG", --song="SONG"
                        Set the song title information
  -c "DESCRIPTION":"COMMENT":"LANGUAGE", --comment="DESCRIPTION":"COMMENT":"LANGUAGE"
                        Set the comment information
  -g "GENRE", --genre="GENRE"
                        Set the genre or genre number
  -y YYYY[-MM-DD], --year=YYYY[-MM-DD], --date=YYYY[-MM-DD]
                        Set the year/date
  -T "num/num", --track="num/num"
                        Set the track number/(optional) total tracks
You can set the value for any ID3v2 frame by using '--' and then a frame ID.
For example:
        mid3v2 --TIT3 "Monkey!" file.mp3
would set the "Subtitle/Description" frame to "Monkey!".

Any editing operation will cause the ID3 tag to be upgraded to ID3v2.4.

id3v2 and id3tag don't support Unicode and id3tool and mp3info don't support ID3v2.

4
  • 4
    I agree that mid3v2 is the most reliable and modern command line tagging tool mentioned here. Should be voted up. Jul 15, 2014 at 14:02
  • 1
    Agreed. Neither iTunes nor my car player would recognize the tags created by the other tools. This one did it. Sep 19, 2014 at 12:46
  • any idea how to add Publisher tag with it
    – user889030
    Nov 22, 2016 at 18:10
  • Note that, for whatever reason, on Debian you have to install python-mutagen to get the binaries - python3-mutagen doesn't put anything in the path. Sep 18, 2019 at 0:25
11

I just discovered this little program called puddletag. It is not as wonderful as Tag & Rename, but it's close enough.

From the website:

puddletag is an audio tag editor (primarily created) for GNU/Linux similar to the Windows program, Mp3tag. Unlike most taggers for GNU/Linux, it uses a spreadsheet-like layout so that all the tags you want to edit by hand are visible and easily editable.

The usual tag editor features are supported like extracting tag information from filenames, renaming files based on their tags by using patterns and basic tag editing.

Then there’re Functions, which can do things like replace text, trim it, do case conversions, etc. Actions can automate repetitive tasks. Doing web lookups using Amazon (including cover art), Discogs (does cover art too!), FreeDB and MusicBrainz is also supported. There’s quite a bit more, but I’ve reached my comma quota.

Supported formats: ID3v1, ID3v2 (mp3), MP4 (mp4, m4a, etc.), VorbisComments (ogg, flac), Musepack (mpc), Monkey’s Audio (.ape) and WavPack (wv).

1
  • 3
    Consider including some further explanation of your suggestions or, at least, links to them.
    – HalosGhost
    Oct 13, 2014 at 6:40
10

I've been a dedicated user of Picard for quite some time. The only cross-platform tagger that feels truly solid. Don't forget MusicBrainz's huge music database.

10

I use Ex Falso. It was installed with QuodLibet music player, so I gave it a shot.

I've used it with single files, batches of files... It's pretty intuitive, and best of all, works very well.

1
  • 2
    People should be warned that ex falso and quod libet have a non-standart approach to "Album artist" tag. This tag, created in this editor, may be invisible to other players. Apr 6, 2017 at 20:25
10

I found this thread and decided to use id3tool. I was only interested in a very light-weight tool, command-line was fine. Trying to keep my system free of clutter brought on occasionally by weighty GUI-intensive tools.

Installing was super easy on Linux Mint:

sudo apt-get install id3tool

As far as I remember it didn't require any additional libraries or anything. To get a full list of the available options:

man id3tool

To see the current metadata for an mp3 file:

id3tool <filename.mp3>

Here is the command I used to update quite afew mp3's:

id3tool -t "<song title>" -a "<album name>" -r "<artist name>" -y "<year>" -c <track number, no quotes, just the number, like 1> <filename.mp3>

After doing this, I told Banshee to rescan my music library and there were no longer any files in the "Unknown" Category. Thanks to strangeronyourtrain for this tip!

2
  • I tried id3tool but had some problems. Tags written by id3tool don't seem to be readable by the MAD library in most cases (fails in about 80% of cases).
    – user39248
    Aug 6, 2014 at 16:41
  • 7
    id3tool doesn't support the normal id3v2 tags, only the old v1 tags. And it is no longer developed.
    – mivk
    Feb 21, 2017 at 16:29
7

For GUI, I suggest easytag, and you can lookup more alternatives here. For the command line check out id3v2, but the alternatives are endless.

6

I like eyeD3.

But install it from python pip not from apt. apt currently installs 0.6 version but pip installs latest I think. Docs here: https://eyed3.readthedocs.io/en/latest/ . eyeD3 has good documentation so it's easy to start. Also it has a bunch of useful plugins - try it!

$ pip install eyeD3

1
  • 1
    Works perfect! Thanks!
    – ambigus9
    Aug 19, 2021 at 14:19
4

I like TagTool and id3tool. Both are for the command line. I also find Picard useful for music files that exist in the MusicBrainz database.

4

I would also suggest lltag.

Works on the command line, rather easy and fast. It also supports CDDB.

1
  • 1
    It supports reading vorbiscomment and metaflac too.
    – 0xcaff
    Aug 7, 2015 at 0:40
3

Audacity has a metadata editing tool, which can be shown when exporting files or by going to 'File'>'Edit metadata':

enter image description here

Note I think this uses ID3v2.4 tags (in Mp3), which are not compatible with some devices (and flippin Windows, even Win8...). Easytag however does have an options to use ID3v2.3, which should be compatible.

See also:

5
  • There are many options available which will do batch editing. Unless you want to write the album artist, name, etc. in each of the songs...
    – Rodrigo
    Apr 11, 2018 at 1:40
  • @Rodrigo yes, you can save it as a template, then you just have to edit the title etc for each one
    – Wilf
    Apr 11, 2018 at 14:52
  • Please try puddletag and see the difference for yourself. When you have lots of subfolders in need of revision, puddletag is much faster than what you're suggesting.
    – Rodrigo
    Apr 11, 2018 at 17:32
  • @Rodrigo I think I just added this as an alternative to which people might already have! Saying this as I usually use easytag (you can upvote the puddletag answer btw)
    – Wilf
    Apr 11, 2018 at 20:51
  • Audacity 2.4.1 writes ID3v2.3, which is the most common and "safest" version. You don't have to worry about v2.4 incompatibility. (I verified it by using eyed3 to read the metadata tags.)
    – wisbucky
    Jan 9, 2022 at 10:21
1
#!/bin/bash
for i in *.mp3 ; do
resto=$(echo "${i}" | sed 's/.mp3$//')
mid3v2 -t "${resto}" "${i}"
echo "${i}"
done

Not the answer you're looking for? Browse other questions tagged .