Аудиовизуальные эффекты iPhone

#iphone #ios #audio #visualization #effects

#iPhone #iOS #Аудио #визуализация #эффекты

Вопрос:

Я разрабатываю приложение, в котором пользователь может записать некоторый звук (свой голос) и применить к нему визуальный эффект. Я использую FMOD для обработки всего аудио и добавления звуковых эффектов и всего такого. Мой вопрос, существуют ли какие-либо API, которые обрабатывают визуализацию звука в iOS? Я имел в виду возможность записывать что-либо, а затем анимировать «говорящую руку» для записи.

Я также думал о возможности отображения «визуализации» записи, я знаю, что вы можете получить волновую информацию и прочее из FMOD, но как бы вы использовали эти данные для создания визуализации?

Спасибо.

Ответ №1:

Перво-наперво: для того, что вы хотите, нет библиотеки. Я думаю, это просто слишком специфично.

Хорошая новость в том, что это не так уж сложно сделать — нужно просто направить свою голову в нужное русло.

Вместо того, чтобы думать о звуке, давайте подумаем о чем-нибудь другом, например, об акселерометре. Если я хочу UIView перемещаться в ответ на акселерометр, я мог бы просто взять выведенное значение для оси Z (от -1 до 1) и преобразовать его в координаты на экране (например, от 0 до 480).

Если я просто подключу измерения акселерометра непосредственно к моей формуле преобразования, это, вероятно, будет немного отрывисто. UIView Могут отскакивать повсюду. Это связано с тем, что измерения акселерометра могут сильно различаться. Поэтому, возможно, я добавлю какой-нибудь простой фильтр, чтобы сделать изменения между измерениями более постепенными.

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

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

Комментарии:

1. Спасибо за объяснение! Я собираюсь попытаться реализовать это в ближайшее время.