Как мне создать звук на определенной частоте (приложение для гитарного аккорда) в C#

Я работаю над приложением инструментов для гитары, компонентом которого является словарь аккордов и гамм.

Мои вопросы:

  1. Если я знаю частоту / высоту звука в кГц для данной ноты, как я могу генерировать приемлемый звук (возможно, миди) на этом уровне?

  2. Мой второй вопрос заключается в том, что аккорды состоят из 2 или более нот, как мне перейти к наложению 2 или более нот в appregio (сыгранных 1 за другой и удерживаемых для формирования аккорда)?

Если есть какие-либо указатели о том, что я искал и пропустил, пожалуйста, укажите мне в правильном направлении.

2 ответа

Решение

Попробуйте взглянуть на это и посмотреть, поможет ли это: http://blogs.msdn.com/b/dawate/archive/2009/06/24/intro-to-audio-programming-part-3-synthesizing-simple-wave-audio-using-c.aspx

Во-первых, арпеджио - это одна нота, сыгранная в октавах, или аккорд, сыгранный по одной ноте за раз. Итак, концепция арпеджио из двух нот живет в том же месте, что и Единорог. Нет такого понятия.

Вы можете смотреть на так называемые "мощные аккорды", которые используют две ноты, обычно на соседних струнах, и одну ладу отдельно.

Для генерации своих тонов используйте бесплатное приложение "Audacity", и оно может дать вам все стандартные тоны только для запроса. Однажды я сделал двухчасовой тональный сигнал с частотой всего 440 Гц для эксперимента по определению вариаций струны гитары с течением времени, чтобы определить, как настройка реагирует на изменения температуры.

Вы можете легко сделать тоны любой длины, которую вы предпочитаете.

Другие вопросы по тегам