не может разделить файл на части, используя partitionByInstrument - PullRequest
0 голосов
/ 05 мая 2018

При использовании музыки21 невозможно разделить файл на части, используя partitionByInstrument.

from music21 import *

song = converter.parse("/Nottingham/train/ashover_simple_chords_12.mid")
print(len(song.parts)) # prints 2
parts = instrument.partitionByInstrument(song)
print(parts.parts[0].id)

Показывает следующую ошибку

print(parts.parts[0].id)
AttributeError: 'NoneType' object has no attribute 'parts'

Также, когда я проверяю, какой объект песни содержит song.show("text"), я вижу, что есть части. Сырая паста здесь .

Эта проблема возникает на всех наборе данных Midi Nottingham . Когда я пробовал разные миди-файлы, все было в порядке и partitionByInstrument работал как надо

1 Ответ

0 голосов
/ 05 мая 2018

Документация гласит:

разбиение на части для каждого уникального инструмента

Но в этом файле не указан какой-либо инструмент, поэтому нет раздела, в который можно поместить данные. В этом случае partitionByInstrument() явно возвращает None.

...