def test_recording_mbid_metadata():
    # get the recording metadata
    audio_metadata = AudioMetadata(get_work_attributes=True,
                                   print_warnings=True)
    mbid = '5cbd1b2d-d1ef-4627-a4d4-135a95de2b69'

    mbid_meta = audio_metadata.from_musicbrainz(mbid)

    # load the metadata computed earlier
    saved_meta = _get_saved_meta(mbid + '.json')

    assert mbid_meta == saved_meta, 'test_recording_mbid_metadata failed'
def test_audio_metadata():
    # get the recording metadata
    audio_metadata = AudioMetadata(get_work_attributes=True,
                                   print_warnings=True)
    mp3file = os.path.join(_curr_folder, '..', '..', 'sampledata',
                           'huzzam_fasil.mp3')
    audio_meta = audio_metadata.from_musicbrainz(mp3file)

    # load the metadata computed earlier
    saved_meta = _get_saved_meta('audio_meta.json')

    # remove paths since they are both relative to something else
    audio_meta.pop("path", None)
    saved_meta.pop("path", None)

    assert audio_meta == saved_meta, 'test_audio_metadata failed'
Exemple #3
0
def get_meter_from_rec(recording_ID):
    '''
    automatically extract the meter from the metadata of the recording by ID (MusicBrainzID)
    '''

    # otherwise for makam
    from makammusicbrainz.audiometadata import AudioMetadata
    audioMetadata = AudioMetadata(get_work_attributes=True,
                                  print_warnings=True)

    audio_meta = audioMetadata.from_musicbrainz(recording_ID)
    try:
        usul_type = audio_meta['usul'][0]['attribute_key']

    except:
        if recording_ID == '7aec9833-6482-4917-87bd-e60c7c1dae3c':
            usul_type = 'kapali_curcuna'
        else:
            sys.exit('no usul type can be automatically fetched')

    return usul_type
 def __init__(self, get_recording_rels=False):
     self._audioMetadata = AudioMetadata(
         get_work_attributes=False, print_warnings=False)
     self._workMetadata = WorkMetadata(
         get_recording_rels=get_recording_rels, print_warnings=False)