MID3V2(1)

πŸ“¦
version 1.48.1 Β· 6 versions
, in alpine 3.24, arch rolling, epel 9, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable

✨ NAME ✨

mid3v2 β€” it's an audio tag editor, and it's basically the cooler sibling of id3v2. Same energy, better vibes πŸ’…


🌸 SYNOPSIS 🌸

mid3v2 [options] filename ...

πŸ¦‹ DESCRIPTION πŸ¦‹

Okay so bestie, here's the tea: mid3v2 is a Mutagen-based glow-up replacement for id3lib's id3v2. She supports ID3v2.4 and way more frames, and also β€” huge β€” she does not have the numerous bugs that plague id3v2. No cap. ✨

Real talk though: this program exists mostly for compatibility with other programs that wanna tag files using id3v2. So if you're here for a friendlier interface, the manpage itself is recommending Ex Falso. She said go get a better UI, periodt. 🫢


πŸŽ€ OPTIONS πŸŽ€

  • -q, --quiet β€” be quiet mode πŸŒ™ don't mention the file operations that do what the user asked for. Warnings will still be printed though, because safety first bestie.
  • -v, --verbose β€” be verbose mode πŸ“’ state all the operations performed. This is the literal opposite of --quiet. Also? This is the default. She's chatty by nature πŸ’–
  • -e, --escape β€” turn on interpretation of backslash escapes for tag values πŸ”“ makes it possible to escape the colon-separator in TXXX, WXXX, COMM values like '\:' and insert escape sequences like '\n', '\t' etc. iykyk.
  • -f, --list-frames β€” display all supported ID3v2.3/2.4 frames and their meanings πŸ“œ a whole menu of frames, slay.
  • -L, --list-genres β€” list all ID3v1 numeric genres πŸ”’ these can be used to set TCON frames, but it is not recommended πŸ™ˆ
  • -l, --list β€” list all tags in the files πŸ‘‘ the output format is not the same as id3v2's; instead, it is easily parsable and readable. Some tags may not have human-readable representations. it's giving ✨data✨
  • --list-raw β€” list all tags in the files, in raw format 🧚 although this format is nominally human-readable, it may be very long if the tag contains embedded binary data. fair warning bestie πŸ’€
  • -d, --delete-v2 β€” delete ID3v2 tags πŸ—‘οΈ
  • -s, --delete-v1 β€” delete ID3v1 tags πŸ—‘οΈ
  • -D, --delete-all β€” delete all ID3 tags πŸ’€ full clear, no survivors
  • --delete-frames=FRAMES β€” delete specific ID3v2 frames (or groups of frames) from the files. FRAMES is a "," separated list of frame names e.g. "TPE1,TALB" βœ‚οΈ
  • -C, --convert β€” convert ID3v1 tags to ID3v2 tags πŸ”„ this will also happen automatically during any editing, so like, it's happening whether you ask or not
  • -a,--artist=ARTIST β€” set the artist information (TPE1) 🎀 main character credit
  • -A,--album=ALBUM β€” set the album information (TALB) πŸ’Ώ
  • -t,--song=TITLE β€” set the title information (TIT2) 🎡
  • -c,--comment=<DESCRIPTION:COMMENT:LANGUAGE> β€” set a comment (COMM) πŸ’¬ the language and description may be omitted, in which case the language defaults to English, and the description to an empty string.
  • -p,--picture=<FILENAME:DESCRIPTION:IMAGE-TYPE:MIME-TYPE> β€” set the attached picture (APIC) πŸ–ΌοΈ everything except the filename can be omitted, in which case default values will be used.
  • -g,--genre=GENRE β€” set the genre information (TCON) 🌈
  • -y,--year=<YYYY>, --date=<YYYY-[MM-DD]> β€” set the year/date information (TDRC) πŸ“…
  • -T,--track=<NUM/NUM> β€” set the track number (TRCK) πŸ”’

🫢 setting any frame you want

Any text or URL frame (those beginning with T or W) can be modified or added by prefixing the name of the frame with "--". For example, --TIT3 "Monkey!" will set the TIT3 (subtitle) frame to Monkey!. πŸ’

The TXXX frame has the format <DESCRIPTION:TEXT>; many TXXX frames may be set in the file as long as they have different keys. To set this key, just separate the text with a colon, e.g. --TXXX "ALBUMARTISTSORT:Examples, The". The description can be omitted, in which case it defaults to an empty string.

The WXXX frame has the same format as TXXX but since URLs usually contain a ":" you have provide a description or enable escaping (-e):

--WXXX "desc:http://foo.bar"

or

-e --WXXX "http\\://foo.bar"

The USLT frame has the format <DESCRIPTION:TEXT:LANGUAGE>. The language and description may be omitted, in which case the language defaults to English, and the description to an empty string.

The special POPM frame can be set in a similar way: --POPM "bob@example.com:128:2" to set Bob's rating to 128/255 with 2 plays. Bob is thriving, we love that for him πŸ’œ


πŸ’€ BUGS πŸ’€

No sanity checking is done on the editing operations you perform, so mid3v2 will happily accept --TSIZ when editing an ID3v2.4 frame. However, it will also automatically throw it out during the next edit operation. So like... she lets you do it, but she remembers, and she cleans up after you 😭

πŸ‘‘ AUTHOR πŸ‘‘

Joe Wreschnig</purl> is the author of mid3v2, but he doesn't like to admit it. iconic behavior honestly πŸ™ˆ


okay that's the whole page bestie, mwah πŸ’‹ this was MID3V2(1) β€” the mid3v2 manual page, section 1 β€” catch you in the terminal βœ¨πŸŽ€πŸ’–