Генерируйте звуки музыкального инструмента алгоритмически

Действительно ли возможно генерировать звуки музыкального инструмента с помощью только алгоритмы? или это может только быть сделано через записанные заранее звуковые образцы?

21
задан Matthieu Brucher 30 December 2018 в 20:13
поделиться

5 ответов

Волновой синтез (PDF) - это наиболее реалистичный метод синтеза реального инструмента, поскольку он берет образцы и слегка изменяет их (например, добавляет вибрато, экспрессию и т.д.).

Формы волны, генерируемые большинством музыкальных инструментов (особенно духовыми и духовыми), настолько сложны, что чисто алгоритмический синтез еще не достаточно оптимизирован для работы на современном оборудовании - даже если бы это было так, технические сложности написания такого алгоритма огромны.

Интересный сайт здесь.

9
ответ дан 29 November 2019 в 20:55
поделиться

Это, безусловно, так, и есть много подходов. Wolfram недавно выпустила WolframTones, который (неудивительно, если вы знаете Wolfram) использует клеточные автоматы. Подробное описание того, как он функционирует, здесь.

4
ответ дан 29 November 2019 в 20:55
поделиться

Это вполне возможно - это одна из вещей, которые делают синтезаторы.

То, что это возможно, не означает, что это просто. Синтезаторы обычно дороги, а количество используемых алгоритмов сложно - на странице Википедии, на которую я уже ссылался, есть ссылки на некоторые из них.

Предварительно записанные звуки проще и дешевле в использовании, но и у них есть свои ограничения - например, они звучат более "повторяющимися".

7
ответ дан 29 November 2019 в 20:55
поделиться

В дополнение к приведенным здесь ответам существуют также структуры синтеза анализа, которые создают математические модели (часто основанные на захвате траекторий синусоидальных или шумовых компонентов) входного звука, позволяя преобразовывать и ресинтезировать . Вот несколько хорошо известных фреймворков: SMS (доступен в проекте CLAM C ++) и Loris.

Физические модели инструментов также являются опцией - они моделируют физические свойства инструмента, такие как жесткость язычка, апертура дыхательного отверстия, нажатие клавиш, и часто создают реалистичные эффекты, включая нелинейные эффекты, такие как выдувание. STK - одна из таких структур на C ++.

Эти фреймворки обычно тяжелее, чем вариант синтеза волновых таблиц, но могут предоставить больше параметров для манипуляции.

2
ответ дан 29 November 2019 в 20:55
поделиться

Несколько лет назад журнал Sound on Sound выпустил отличную серию под названием «Synth Secrets», которую теперь можно посмотреть онлайн бесплатно. Они дают хорошее представление о типах методов, используемых в аппаратных синтезаторах (как аналоговых, так и цифровых), и включают в себя некоторые статьи, в которых обсуждаются трудности воспроизведения определенных звуков реальных инструментов, таких как щипковые и смычковые струнные, духовые, малые барабаны, акустические пианино. и т. д.

5
ответ дан 29 November 2019 в 20:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: