I use mp3report to extract that info. I don't use the id3 tag info tho, so you'd have to check out the man page to get the exact information for that. This is my little note to myself for remembering syntax for my needs.
First you set up a template for the info you want extracted following the instructions in the docs, then:
Code:
mp3report --template=./mp3rpt_template.html --outfile=marchive.html ./MP3Archives/
That produces an HTML formatted report of which the 'body' includes the spreadsheet information I want. I copy that 'body' of marchive.html to archive.txt, then...
Code:
sed -e 's/ - /|/' -e 's/\.\/MP3Archives\/Archive//' -e 's/\.\/MP3Archives\/MP3SeriousMusic/SM/' -e 's/\.mp3//g' archive.txt > mp3.txt
That section writes the info to a delimited file that can be imported into gnumeric or calc or whatever spreadsheet you like.
This is not pulling information from freedb ... only from the mp3 file and it's id3 tags.