Makam API¶
-
compmusic.dunya.makam.download_mp3(recordingid, location, slugify=False)[source]¶ Download the mp3 of a document and save it to the specificed directory.
- Parameters
recordingid – The MBID of the recording
location – Where to save the mp3 to
slugify – Boolean specifying whether to slugify the filepath or not
-
compmusic.dunya.makam.download_release(releaseid, location, slugify=False)[source]¶ Download the mp3s of all recordings in a release and save them to the specificed directory.
- Parameters
releaseid – The MBID of the release
location – Where to save the mp3s to
slugify – Boolean specifying whether to slugify the filepath or not
-
compmusic.dunya.makam.get_artist(ambid)[source]¶ Get specific information about an artist.
- Parameters
ambid – An artist mbid
- Returns
mbid, name, releases, instruments.
releases,instrumentsandrecordingsinclude information from recording- and release-level relationships, as well as release artists
-
compmusic.dunya.makam.get_artists()[source]¶ Get a list of makam artists in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing artist information:
{"mbid": MusicBrainz artist id, "name": Name of the artist}
For additional information about each artist use
get_artist()
-
compmusic.dunya.makam.get_composer(cmbid)[source]¶ Get specific information about an composer.
- Parameters
cmbid – A composer mbid
- Returns
mbid, name, works, lyric_works
workscontains a list of works that the composer has written.lyric_worksare works where they were lyricist.
-
compmusic.dunya.makam.get_composers()[source]¶ Get a list of makam composers in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing composers information:
{"mbid": MusicBrainz artist id, "name": Name of the composer}
For additional information about each composer use
get_composer()
-
compmusic.dunya.makam.get_form(fid)[source]¶ Get specific information about a form.
- Parameters
fid – A form id or uuid
- Returns
uuid, name, works.
-
compmusic.dunya.makam.get_forms()[source]¶ Get a list of makam forms in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing form information:
{"uuid": form uuid, "name": Name of the form}
For additional information about each form use
get_form()
-
compmusic.dunya.makam.get_instrument(iid)[source]¶ Get specific information about an instrument.
- Parameters
iid – An instrument id
- Returns
id, name, artists.
artistsincludes artists with recording- and release- level performance relationships of this instrument.
-
compmusic.dunya.makam.get_instruments()[source]¶ Get a list of makam instruments in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing instrument information:
{"id": instrument id, "name": Name of the instrument}
For additional information about each instrument use
get_instrument()
-
compmusic.dunya.makam.get_makam(mid)[source]¶ Get specific information about a makam.
- Parameters
mid – A makam id or uuid
- Returns
uuid, name, works, taksims, gazels.
the
taksimsandgazelslists are of recordings.
-
compmusic.dunya.makam.get_makams()[source]¶ Get a list of makam makams in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing makam information:
{"uuid": makam uuid, "name": Name of the makam}
For additional information about each makam use
get_makam()
-
compmusic.dunya.makam.get_recording(rmbid)[source]¶ Get specific information about a recording.
- Parameters
rmbid – A recording mbid
- Returns
mbid, title, releases, performers, work.
artistsincludes performance relationships attached to the recording, the release, and the release artists.
-
compmusic.dunya.makam.get_recordings(recording_detail=False)[source]¶ Get a list of makam recordings in the database. This function will automatically page through API results.
- Parameters
recording_detail – if True, return full details for each recording like
get_recording()- Returns
A list of dictionaries containing recording information:
{"mbid": MusicBrainz recording id, "title": Title of the recording}
For additional information about each recording use
get_recording().
-
compmusic.dunya.makam.get_release(cmbid)[source]¶ Get specific information about a release.
- Parameters
cmbid – A release mbid
- Returns
mbid, title, artists, tracks.
artistsincludes performance relationships attached to the recordings, the release, and the release artists.
-
compmusic.dunya.makam.get_releases()[source]¶ Get a list of makam releases in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing release information:
{"mbid": MusicBrainz release id, "title": title of the release}
For additional information about each release use
get_release()
-
compmusic.dunya.makam.get_symbtr(uuid)[source]¶ Get a symbtr file info from id This function will automatically page through API results.
- Parameters
uuid – A symbtr id
returns: name and id of the symbtr file
-
compmusic.dunya.makam.get_symbtrs()[source]¶ Get a list of MusicBrainz id - symbtr mappings in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing symbtr information:
{"uuid": MusicBrainz uuid (work id or recording id), "name": Name of the symbtr track}
-
compmusic.dunya.makam.get_usul(uid)[source]¶ Get specific information about a usul.
- Parameters
uid – An usul id or uuid
- Returns
uuid, name, works, taksims, gazels.
the
taksimsandgazelslists are of recordings. They are only valid for the usulserbest
-
compmusic.dunya.makam.get_usuls()[source]¶ Get a list of makam usuls in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing usul information:
{"uuid": usul uuid, "name": Name of the usul}
For additional information about each usul use
get_usul()
-
compmusic.dunya.makam.get_work(wmbid)[source]¶ Get specific information about a work.
- Parameters
wmbid – A work mbid
- Returns
mbid, title, composers, makams, forms, usuls, recordings
-
compmusic.dunya.makam.get_works()[source]¶ Get a list of makam works in the database. This function will automatically page through API results.
- Returns
A list of dictionaries containing work information:
{"mbid": MusicBrainz work id, "name": work name}
For additional information about each work use
get_work().
-
compmusic.dunya.makam.get_works_by_query(mid='', uid='', fid='', cmbid='', ambid='')[source]¶ Get the works filtered according to the input makam uuid, usul uuid form uuid, composer mbid and artist mbid
- Parameters
mid – A makam id or uuid
uid – An usul id or uuid
fid – A form id or uuid
cmbid – A composer mbid
ambid – An artist mbid
- Returns
A list of dictionaries containing work/s