Я пытаюсь сыграть гитарный аккорд из моего приложения на Python. Я знаю (или могу вычислить) частоты в аккорде, если это необходимо.
Я думаю, что даже если я проделаю низкоуровневую работу ног, создав несколько синусоидальных волн на нужных частотах, это не будет звучать правильно из-за того, что огибающая тоже должна быть правильной, иначе это не будет звучать как гитара, а скорее гул.
Как ни странно, команда play в linux sox может создать довольно убедительную индивидуальную ноту с помощью:
play -n synth 0 pluck E3
Итак, на самом деле я спрашиваю,
a) возможно ли вставьте команду play, чтобы сыграть весь аккорд (в идеале, со слегка различающимся временем начала, чтобы имитировать ход струны плектра) - я не смог этого сделать, но, возможно, есть какая-то феерическая пыль, которая разветвит процесс или что-то подобное, так что это звучит правильно. Если это возможно, я бы согласился просто вызвать команду bash из моего кода (я не люблю изобретать колесо).
b) (даже лучше) есть ли способ в python достичь этого (гитарный аккорд звук)? Я видел несколько доступных миди-библиотек python, но, откровенно говоря, миди не подходят для того звука, который я хочу, насколько я могу судить.