Skip to main content

ISRC codes in Discogs (part 2)

It is time to dive into ISRC codes a bit more. If you don't know what these codes are, then it is probably good to read part 1 first.

In this article I will not really look at ISRC codes in Discogs (OK, just a tiny bit), but instead look at how to extract ISRC codes on a Linux machine using Python. For this I will use libdiscid and its Python bindings.

What you need for this:
  1. a computer with a CD/DVD drive (which is getting surprisingly hard with laptops these days)
  2. a Linux distribution (in my case Fedora 27, but any recent Linux distribution will do)
  3. libdiscid with associated Python bindings (either Python 2 or Python 3)
It is actually very simple and can be done from either the Python prompt or from a simple script.

It is literally as simple as this (Python 3 code, I stored it in a file called isrc.py):

import libdiscid
disc = libdiscid.read()

try:
    track_isrcs = disc.track_isrcs
    for i in range(0,len(track_isrcs)):
        print("Track %d: %s" % (i + 1, track_isrcs[i]))
except:
    pass

And that will give me a nice list of ISRC codes per track, for example:

$ python3 isrc.py 
Track 1: GBAYE1601693
Track 2: GBAYE1601694
Track 3: GBAYE1601695
Track 4: GBAYE1601696
Track 5: GBAYE1601697
Track 6: GBAYE1601698
Track 7: GBAYE1601699
Track 8: GBAYE1601700
Track 9: GBAYE1601701
Track 10: GBAYE1601702

The CD in this case is from the 2017 reissue of Marillion's "Misplaced Childhood".

Storing ISRC codes in Discogs: challenges

If you look through the booklet of the CD that I scanned you will not find a single mention of any ISRC code. The codes really can only be found if you read the CD and search for the codes. Currently there is no way in Discogs to tag ISRC codes as "printed on release" or "extracted from release", which is a significant difference. It could for example happen that there is a release on a CD where both variants exist and then it matters.

If the ISRC codes would have been stored per track in the Discogs database, instead of in the "Barcode and Other Identifiers" section per release this might have been easier.

How to solve this I don't know. I guess it is time to hit the Discogs forums again.

Comments

Popular posts from this blog

SID codes (part 1)

One thing that I only learned about after using Discogs is the so called Source Identification Code, or SID. These codes were introduced in 1994 to combat piracy and to find out on which machines a CD was made. It was introduced by Philips and adopted by IFPI, and specifications are publicly available which clearly describe the two available SID codes (mastering SID code and mould SID code). Since quite a few months Discogs has two fields available in the " Barcode and Other Identifiers " (BaOI) section: Mould SID code Mastering SID code A few questions immediately popped up in my mind: how many releases don't have a SID field defined when there should be (for example, the free text field indicates it is a SID field)? how many releases have a SID field with values that should not be in the SID field? how many release have a SID field, but a wrong year (as SID codes were only introduced in 1994) how many vinyl releases have a SID code defined (which is impossi

SPARS codes (part 1)

Let's talk about SPARS codes used on CDs (or CD-like formats). You have most likely seen it used, but maybe don't know its name. The SPARS code is a three letter code indicating if recording, mixing and mastering were analogue or digital. For example they could look like the ones below. There is not a fixed format, so there are other variants as well. Personally I am not paying too much attention to these codes (I simply do not care), but in the classical music world if something was labeled as DDD (so everything digital) companies could ask premium prices. That makes it interesting information to mine and unlock, which is something that Discogs does not allow people to do when searching (yet!) even though it could be a helpful filter. I wanted to see if it can be used as an identifier to tell releases apart (are there similar releases where the only difference is the SPARS code?). SPARS code in Discogs Since a few months SPARS is a separate field in the Discogs

Country statistics (part 2)

One thing I wondered about: for how many releases is the country field changed? I looked at the two most recent data dumps (covering February and March 2019) and see where they differed. In total 5274 releases "moved". The top 20 moves are: unknown -> US: 454 Germany -> Europe: 319 UK & Europe -> Europe: 217 unknown -> UK: 178 UK -> Europe: 149 Netherlands -> Europe: 147 unknown -> Europe: 139 unknown -> Germany: 120 UK -> US: 118 Europe -> Germany: 84 US -> UK: 79 USA & Canada -> US: 76 US -> Canada: 65 unknown -> France: 64 UK -> UK & Europe: 62 UK & Europe -> UK: 51 France -> Europe: 51 Saudi Arabia -> United Arab Emirates: 49 US -> Europe: 46 unknown -> Japan: 45 When you think about it these all make sense (there was a big consolidation in Europe in the 1980s and releases for multiple countries were made in a single pressing plant) but there are also a few weird changes: