Обобщение задачи:
В настоящее время я анализирую пару инструмент / нота, используя pretty_midi и fluidsynth в python. Иногда, когда я вызываю fluidsynth на своем объекте инструмента, я получаю сообщение об ошибке вроде:
fluidsynth: error: There is no preset with bank number x and preset number z in SoundFont 1
Поиск:
Из того, что я понимаю, проблема в том, что мне нужен файл звукового шрифта. Который я также нашел от кого-то еще с подобным вопросом здесь:
Запуск демоверсии pyfluidsynth + pyaudio, много проблем с alsa и jack
К сожалению, это без ответа ...
Что бы я хотел из этого поста ... (пожалуйста и спасибо):
- Я хотел бы знать, как загрузить несколько шрифтов песни / как они хранятся.
- Когда ошибка все-таки возникает, как мне лучше ее прервать, чтобы я мог найти файл шрифта песни в Интернете или посмотреть, нет ли уже на моем локальном компьютере.
- Почему я все еще получаю вывод из fluidsynth, если он выдает ошибку ??? Опять же, я анализирую пары инструмент / нота, сравнивая синтезированные сигналы, повлияет ли это на все, что я делаю?
Код картинки: (Использование картинок, потому что проблема скорее в бэкэнде / у меня много другого кода, который заставляет винтики этой работы работать правильно.)
Как я обрабатываю вывод:
![](https://i.stack.imgur.com/9iJ1K.png)
Извлечение атрибутов пары нот инструмента. Чтобы заставить fluidsynth работать с другим файлом шрифтов, я бы передавал его как параметр внутри fluidsynth.
![](https://i.stack.imgur.com/PUuqD.png)
Общий выход:
![](https://i.stack.imgur.com/PTcAn.png)
Я хотел бы заранее поблагодарить всех за то, что вы даже просмотрели это. В последнем посте все сообщество было очень полезным, поэтому еще раз спасибо всем.