Как я могу применить гитарные эффекты, такие как погружение (смещение высоты тона) или вау-вау (сжатие), к сэмплам гитары, воспроизводимым в приложении для iOS?

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

Я хотел бы позволить пользователю применять смещение высоты тона или вау-вау (сжатие) к звучанию гитары.

В настоящее время я использую аудиосэмплы звука гитары.

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

Может ли кто-нибудь указать мне правильное направление для этого?

1 ответ

Вы можете использовать библиотеки обработки аудио с открытым исходным кодом. По сути, вы получаете аудиосэмплы, и вам нужно обрабатывать их и отправлять как сэмплы. Обработка может быть выполнена этими библиотеками, или вы используете одну из своих. Вот одна библиотека DSP (Disclaimer: я написал это). Посмотрите на метод process(float,float) для любого из классов, чтобы увидеть, как это делается.

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

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

Если вы еще этого не видели, посмотрите превосходную и всеобъемлющую книгу Джулиуса Смита " Физическая обработка звукового сигнала".

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