[feature request] Add DiscID in the web interface

Hi folks, I’m new and I’m sorry the first thing I do is requesting a feature, whose absence I consider a bug in fact:

In my opinion, it would be a HUGE advantage if one could add DiscIDs in the web interface.

Why? Here’s my story: I found my tagging/ripping program doesn’t find an album on MusicBrainz because there was only a ”Digital Media“ release in the db, no CD release with DiscIDs. So I created an account and tried to duplicate the release and add the DiscID my tagger (cdda2wav/abcde) generated. Only then I noticed that I cannot do this in the web interface and would have to install special software to do this. I’m sorry, but this is a show-stopper for me. I have an established workflow for ripping and tagging CDs and I probably won’t change it or search for a program which can somehow fit into it. It is no option to let e.g. picard extract the DiscID from the CD, because I rip CDs into a file first and add the tags later, to streamline multi-cd rips.

To me as a noob, it is really counterintuitive that I cannot add the DiscID in the web interface, and I won’t probably install and use special software for this purpose. If the web interface allowed me to do so, I would. If you want new people to participate, please make it easy.

For submitting a disc ID you need the complete TOC data in the form of e.g. 1 4 78465 150 20971 36350 54056 (first track number, last track number, lead out track offset, list of track offsets; for details see Disc ID calculation).

If you have this you can as a workaround generate the disc ID submission yourself, just append the TOC string to the URL https://musicbrainz.org/cdtoc/attach?toc= and replace spaces with a + sign. So e.g. for the above this becomes https://musicbrainz.org/cdtoc/attach?toc=1+4+78465+150+20971+36350+54056

If your ripper cannot give you this information you could also use a script for this. E.g. install python-discid and create yourself a script submit-discid.py with the following content:

#!/usr/bin/env python3
try:
    import discid
except ImportError:
    from libdiscid.compat import discid
        
disc = discid.read()
print("Disc ID: %s", disc.id)
print("Submission URL: %s", disc.submission_url)

Then run the above with python submit-discid.py or make it executable and put it somewhere in your PATH.

4 Likes

I rip with EAC which produces a log with a TOC in it. I then paste it into this page: https://eac-log-lookup.blogspot.com

Example chunk from an EAC log that works in that link

TOC of the extracted CD

 Track |   Start  |  Length  | Start sector | End sector 
---------------------------------------------------------
    1  |  0:00.32 |  4:00.40 |        32    |    18071   
    2  |  4:00.72 |  3:32.73 |     18072    |    34044   
    3  |  7:33.70 |  7:06.37 |     34045    |    66031   
    4  | 14:40.32 |  4:44.03 |     66032    |    87334   
    5  | 19:24.35 |  6:32.00 |     87335    |   116734   
    6  | 25:56.35 |  7:40.60 |    116735    |   151294   
    7  | 33:37.20 |  3:25.45 |    151295    |   166714   
    8  | 37:02.65 |  3:50.40 |    166715    |   184004   
    9  | 40:53.30 |  2:04.22 |    184005    |   193326
2 Likes

There is an in progress feature being developed to allow submitting Disc ID from abcde:
https://abcde.einval.com/bugzilla/show_bug.cgi?id=97

Allowing adding Disc ID from the web interface would mean… a text box where people could paste error-prone TOCs.
It’s better for our quality to allow only programs with access to the CD (like abcde) doing this.

6 Likes

Thank you very much! I will look again at the wiki page for adding DiscIDs and whether this workaround should have a place there. It is in my opinion more accessible than the collection of scripts the page refers to, which might possibly have the feature of DiscID submission, but you have to investigate that yourself.

Thanks for the hint!

Allowing adding Disc ID from the web interface would mean… a text box where people could paste error-prone TOCs.
It’s better for our quality to allow only programs with access to the CD (like abcde) doing this.

Isn’t there a preview of all the changes anyway? If I see the TOC changes by the new DiscID must add an edit note, and possible need to wait for review/votes, why isn’t this a sufficient integrity measure?

In my personal opinion I think in general adding the TOC via a small submission form would be fine. It would get verified anyway, and if one is tech-savvy enough it is already possible via the URL I showed you above. So if one wants to submit fake/made up disc IDs they can do so already.

But I could understand if the MB server devs would consider this low priority or not desirable even. Having these TOC numbers available is rather technical, and if a software does expose them and displays them it could rather easily just generate a submission URL directly. Most software uses libdiscid for disc ID calculation, and that even provides a function to directly generate that URL (see my script above, it is literally a single line of code to print the submission URL).

So if there would be a form to submit this TOC string you would probably end up with a feature request to your CD ripper to show the TOC string as needed for you to easily copy and paste it, at which point it is more sensible to ask them to display the submission URL as well.

2 Likes

Because a wrong Disc ID can look the same at seconds level but be wrong at milliseconds level and not matching any actual physical release.

For the record, I use musicbrainz-isrcsubmit to submit Disc ID (additionally to ISRC), or Picard both are in most Linux package repositories and on Windows).

1 Like