My new music library is all nicely ripped Apple Lossless files in .m4a containers. These contain metadata, but it’s not id3v2 and the universe of mp3 tools mostly don’t work. ffmpeg’s ffprobe sort of works but doesn’t show all tags.
What does work for displaying m4a metadta is mp4v2, installable via Homebrew. Docs here. It seems pretty stable but still gets some updates.
(imac) = mp4file --list test.m4a BRAND COMPAT SIZING FILE ---------------------------------------------------------------------- M4A M4A,isom,mp42 32-bit test.m4a (imac) = mp4info test.m4a mp4info version 1.9.1 test.m4a: Track Type Info 1 audio alac, 260.806 secs, 562 kbps, 44100 Hz Name: Pastourelle (E passo de dossai: Ah! viens pres de moi), folksong for voice & orchestra (Chants d'Auvergne, Series 2, No. 1) Artist: Dawn Upshaw Composer: Joseph Canteloube Release Date: 1994 Album: Canteloube: Songs of the Auvergne Track: 1 of 15 Disk: 1 of 1 Genre: Vocal Music BPM: 0 Part of Compilation: no Cover Art pieces: 1 Album Artist: Kent Nagano Media Type: Movie TV Episode: 0 TV Season: 0 (imac) = mp4track --list test.m4a track[0] id=1 type = audio enabled = true inMovie = true inPreview = true layer = 0 alternateGroup = 0 volume = 1.0000 width = 0.00000000 height = 0.00000000 language = UNDEFINED(0) handlerName = userDataName = <absent> (imac) = mp4art --list test.m4a IDX BYTES CRC32 TYPE FILE ---------------------------------------------------------------------- 0 11255 299646cd jpeg test.m4a (imac) = mp4tags mp4tags: You must specify at least one MP4 file. usage mp4tags OPTION... FILE... Adds or modifies iTunes-compatible tags on MP4 files. -help Display this help text and exit -version Display version information and exit -A, -album STR Set the album title -a, -artist STR Set the artist information -b, -tempo NUM Set the tempo (beats per minute) -c, -comment STR Set a general comment -C, -copyright STR Set the copyright information -d, -disk NUM Set the disk number -D, -disks NUM Set the number of disks -e, -encodedby STR Set the name of the person or company who encoded the file -E, -tool STR Set the software used for encoding -g, -genre STR Set the genre name -G, -grouping STR Set the grouping name -H, -hdvideo NUM Set the HD flag (1\0) -i, -type STR Set the Media Type(tvshow, movie, music, ...) -I, -cnid NUM Set the cnID -l, -longdesc NUM Set the short description -L, -lyrics NUM Set the lyrics -m, -description STR Set the short description -M, -episode NUM Set the episode number -n, -season NUM Set the season number -N, -network STR Set the TV network -o, -episodeid STR Set the TV episode ID -P, -picture PTH Set the picture as a .png -s, -song STR Set the song title -S -show STR Set the TV show -t, -track NUM Set the track number -T, -tracks NUM Set the number of tracks -w, -writer STR Set the composer information -y, -year NUM Set the release date -R, -albumartist STR Set the album artist -r, -remove STR Remove tags by code (e.g. "-r cs" removes the comment and song tags)