Just confirmed this. Release not yet in DB. Will add it later. Done
TOC
Hi there, yes, I used foobar2000 (1.5 b2) + foo_musicbrainz (0.3.9) + foo_input_sacd (1.1.3-2).
Sorry for the mess, Iām just feeling my way into all the possibilities of editing a release.
Edit: If there is a problem with calculating the hash, I could open a bug report on the SACD plugin authorās sourceforge page. Iād need some detailed info, though.
I should be able to prevent foo_musicbrainz from making these erroneous submissions. Iāll let you guys know when Iāve done it.
@marc2k3 What component is actually responsible for calculating the disc ID here? Is it foobar2000 itself, foo_musicbrainz, foo_input_sacd or something else? Could whatever does the calculation be changed to make use of actual libdiscid?
foo_musicbrainz does the DiscID calculation.
But Iām not even touching the code that does that. Iām just updating the code that wonāt even let you open the menu option unless all tracks meet certain criteria. For example, this selection of tracks is OKā¦
and this selection is notā¦
But probably based on (in the case of @Jorgosch, erroneous) data provided by foo_input_sacd?
Well itās just the exponentially larger number of samples per track that is the problem. Theyāre far too large to be from a normal audio CD rip.
Hereās an updated version which ensures the sample rate of all selected tracks is 44100 Hz for TOC submissions.
edit: there were already checks in place to make sure that samples % 588 == 0
.
Ok, now I get it. So the disc ID calculation is not actually done by directly reading the CD TOC, but by relying on the metadata foobar is passing along with the tracks for playback, right? I guess this could lead to other wrong calculations. E.g. there might be no info on the pregap. Is this taken care of?
I didnāt write the code but you can poke around at it hereā¦
IMO we could remove the Add Disc ID to MusicBrainz feature completely from foo_musicbrainz.
Itās always better to submit from Picard which uses the official lib.
I have lots of reasons why Iām not doing that.
The original developer released the component over 10 years ago and most people will be using that as itās still available for download.
Most people are lazy and use it to fetch tags only.
Hardly anyone will be aware that Iām updating it.
It correctly reads the PREGAP when you add a CD to a playlist like thisā¦
It correctly reads the PREGAP when you use a CUESHEET generated by EAC like thisā¦
It correctly generates the TOC for most CDs in my collection that are ripped to single files.
Yes there are instances where it wonāt account for non-standard PREGAPs but if you look at this exampleā¦
That is not caused by foo_musicbrainz!!
I think a better solution would be for foo_musicbrainz to use libdiscid rather than to remove its feature altogether. We want it to be easier for people to add data (incl. Disc IDs) to MusicBrainz, not harderābut we also want them to submit correct data. So either any bugs in foo_musicbrainz should be fixed (itās good to have multiple implementations of a standard!) or they should switch to use libdiscid for Disc ID calculation (itās the official and canonical implementation and itās good to support the upstream of that!).
Either way, as long as the lineage is observed via edit notes or some such, Iām fine with any outcome, as we can go back and determine ābad clientsā later. Only issue with that is that itās most often not given in edit notes what was used to calculate the Disc ID.
It would be nice that Add ISRCs edits could include Client parameter, like Add ISRCs edits do.
The reason why it canāt is that Disc ID adds canāt be done via the web service. You can only add a Disc ID by looking up a Disc ID and the editor then has to go from there to either add a new release or add the ID to an existing release. Any data submitted from the client generating the ID will have been long lost during this process before you actually get to the edit. Maybe there are ways of passing an URL parameter or something around until the edit, but it seems a bit hackish. But maybe. @Bitmap/@yvanzo/@reosarevok?
Oh yes youāre right!
I didnāt think of that.
I will just add that I really really donāt want anything to generate disc IDs based on anything other than a real TOC. They are supposed to be a source of truth.
I generally agree, but Iām OK with a few other generally-good sources too: ripper logs (such as EAC or whipper) and cue files come to mind.
Iād also love to see the TOC idea extended to DVD title/chaptering patternsā¦
It looks like mark2k3 has deleted his github repository along with the foobar2000 component, so I guess thatās that.
The development of foo_musicbrainz2 os being continued by @MordredKLB, see
Other code by marc actually seems to be lost, though