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
,instruments
andrecordings
include 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
works
contains a list of works that the composer has written.lyric_works
are 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.
artists
includes 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
taksims
andgazels
lists 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.
artists
includes 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.
artists
includes 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
taksims
andgazels
lists 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