MTG / dunya

The Dunya music browser
http://dunya.compmusic.upf.edu
GNU Affero General Public License v3.0
29 stars 20 forks source link

Clean up makam instruments #175

Closed sertansenturk closed 9 years ago

sertansenturk commented 9 years ago

I stumbled upon some examples where compmusic.dunya.makam.get_recording(mbid) returns empty performer information while the data is available in Musicbrainz. An example:

from compmusic import dunya as dn
import compmusic

dn.set_token...
compmusic.mb.auth...
compmusic.mb.set_hostname...

mbid = "2ec806b4-7df2-4fd4-9752-140a0bcc9730"
compmusic.mb.get_recording_by_id(mbid, includes = ["artists"])['recording']
dn.makam.get_recording(mbid)
alastair commented 9 years ago

Almost certainly because this is a vocal relationship, and for some reason I don't have the "vocal" instrument in the database. I'll add it, then we'll have to reimport everything

alastair commented 9 years ago

Some more questions about makam instruments: In the makam lists file: https://docs.google.com/a/upf.edu/spreadsheet/ccc?key=0Aswz5KkuLnI3dDRYZHVUNzl2dllHVlBSVDVNek5YcWc#gid=3 we list all of the instrument types that we have in relationships in musicbrainz, but some of these are not specific instruments. See for example

(don't worry about ney/nei, we have to fix that separately)

So, these "instruments" are not really real instruments, so we shouldn't have an instrument entry for them. However, there are relationships that use these instruments. What should we do? Our options are to

  1. delete the instrument reference (and so the relationship will be lost)
  2. add an alias so that the reference is added somewhere
  3. change/fix the relationships in musicbrainz
  4. store these relationships without actually linking them to a "real" instrument (a nicer idea but requires lots of work in dunya)
georgid commented 9 years ago

@sertansenturk: by compmusic.mb do you mean musicbrainzngs? If so then I tested the given MBID: if I say with musicbrainzngs rec = mb.get_recording_by_id(mbid, includes = ["artist-rels"])['recording'] then the I have relationship of type vocal in:
rec["artist-relation-list"]

in general I am not sure what is the difference between mb.get_recording_by_id() and dunya.makam.get_recording(). Would appreciate if you explain me.

sertansenturk commented 9 years ago

@alastair I have corrected most of the instruments. However, I was unsure of some examples. Please check my doubts in the google docs...

@georgid Alastair fixed the vocal issue explained above. That's why you should see it correctly. We are trying to fix some related things now. Related to your question Alastair can explain it much better but I don't think it is relevant to the issue here and it should be discussed elsewhere.

alastair commented 9 years ago

OK, I'm happy with the list now. One final question - should we rename "double bass / contrabass / acoustic upright bass" to something smaller?

In hindustani and carnatic we have an english name and a local name for raaga and taala names. Do you want the same for turkish instruments?

We should leave the three "other" instruments. I'll set them up as these "hidden" instruments that we discussed. That is, a release will show "Person played other percussion" but there will be no instrument page for "other percussion" and you can't search for people who played "other percussion"

alastair commented 9 years ago

strings will be hidden as well.

Finally, do we want to merge the three violas together? They should probably all be listed under "Viola", but we could say "x played Viola da gamba" and then link to a single page for viola.

alastair commented 9 years ago
alastair commented 9 years ago

If people select "percussion" as an instrument, we should consider showing all sub-instruments that are also percussion when we show lists of artists. We'll wait until we implement this page to see if it looks nice.

sertansenturk commented 9 years ago

@xserra (as a musician) stated the viola, viola d'amor and viola de gamba are very different from each other, so no need to merge them.

sertansenturk commented 9 years ago

http://dunya.compmusic.upf.edu/dashboard/release/3850 shows some unknown instruments, some of which should be in the list (violin), some is already in the list (oud) and some should be merged in Dunya (Spanish acoustic guitar). Can there be something missing when you are accumulating the instrument list?

alastair commented 9 years ago

This might be a problem with the verification script - I think I might not be comparing both upper and lower case names (e.g. Violin vs violin).

Spanish acoustic guitar definitely isn't in the list. Our options are

  1. add it to the instrument list
  2. change it to guitar in musicbrainz
  3. leave it in musicbrainz, but change it to guitar during import into dunya

On 10 February 2015 at 23:28, Sertan Senturk notifications@github.com wrote:

http://dunya.compmusic.upf.edu/dashboard/release/3850 shows some unknown instruments, some of which should be in the list (violin), some is already in the list (oud) and some should be merged in Dunya (Spanish acoustic guitar). Can there be something missing when you are accumulating the instrument list?

— Reply to this email directly or view it on GitHub https://github.com/MTG/dunya/issues/175#issuecomment-73797975.

alastair commented 9 years ago

Actually, I didn't realise that we /are/ missing violin. I'll add it

On 11 February 2015 at 11:43, Alastair Porter alastair.porter@upf.edu wrote:

This might be a problem with the verification script - I think I might not be comparing both upper and lower case names (e.g. Violin vs violin).

Spanish acoustic guitar definitely isn't in the list. Our options are

  1. add it to the instrument list
  2. change it to guitar in musicbrainz
  3. leave it in musicbrainz, but change it to guitar during import into dunya

On 10 February 2015 at 23:28, Sertan Senturk notifications@github.com wrote:

http://dunya.compmusic.upf.edu/dashboard/release/3850 shows some unknown instruments, some of which should be in the list (violin), some is already in the list (oud) and some should be merged in Dunya (Spanish acoustic guitar). Can there be something missing when you are accumulating the instrument list?

— Reply to this email directly or view it on GitHub https://github.com/MTG/dunya/issues/175#issuecomment-73797975.

sertansenturk commented 9 years ago

The funny part is it says oud and kanun are missing. I guess when the "solo" attribute is around something is going wrong.

I listened to the track with the Spanish acoustic guitar, it is correct. I think it's better to be specific in MusicBrainz. Let's change it to guitar during import.

alastair commented 9 years ago

oud an kanun are because they are named Oud and Kanun in dunya. I need to make it ignore case.

On 11 February 2015 at 12:07, Sertan Senturk notifications@github.com wrote:

The funny part is it says oud and kanun are missing. I guess when the "solo" attribute is around something is going wrong.

I listened to the track with the Spanish acoustic guitar, it is correct. I think it's better to be specific in MusicBrainz. Let's change it to guitar during import.

— Reply to this email directly or view it on GitHub https://github.com/MTG/dunya/issues/175#issuecomment-73864932.

alastair commented 9 years ago

Instruments are done. I need to add a few more aliases - instead of adding these to the database I am directly creating the alias in the import code. Will close when the aliases are created.