A simple tracklist generator

Tags: #<Tag:0x00007f2a5454dcf8> #<Tag:0x00007f2a5454dbb8>

Hello all,

I have been wanting to learn the Ruby programming language for some time, and I needed a way to generate a tracklist on my Linux/OS X machines in my terminal. I created the Ruby gem track_list as a hobby project to learn the language and also make me more productive on MusicBrainz. You can customize the output of your tracklist as well. Please see the instructions at my GitLab repo if you are interested in trying this program out. And if you need help, please ask.

Please note that I am sure that there are better tools out there to get the job done, but I wanted a simple and fast way of getting a tracklist while I manually added metadata to MusicBrainz. If you have any suggestions or run into any issues, please let me know. Thanks for reading.


Hello Retro,
It reads some media file (mp3, flac) tags?

1 Like

Yes, exactly! It can currently read track, title, length, artist, album, year, genre, and comment. I plan to extend this in the future if needed, but that should be more than enough for generating a tracklist :slight_smile:.

1 Like

Maybe consider opening a seeded release (add) editor instead of “just” making a text blurb for the track list parser? This would enable you to submit track lengths with millisecond accuracy instead of “just” second accuracy. It would also likely reduce a fair amount of typing as it could also handle adding the release title and the release artist and would remove the need for copying and pasting the track list blurb at all as well.

You can see an example implementation of this (in Python) here:

(Of course, this will only work easily for new releases, so if you use your script for editing existing ones, then feel free to disregard this. :slight_smile: )


I will look into making a seeded release editor, however, I don’t know if millisecond accuracy will be possible, at least with the library that I’m using for getting audio file information.

It seems that you can use audio_properties.lengthInMilliseconds() instead of audio_properties.length(). :slight_smile: