Изменение частоты звука, воспроизводимого в данный момент (Android) - PullRequest
2 голосов
/ 04 июля 2011

Я пытаюсь создать приложение для Android, которое воспроизводит звук гитары одним нажатием на экран. Чем больше вы проводите пальцем по правой стороне дисплея, тем больше должна повышаться частота тона. Например: Я нажимаю на левую сторону экрана и слышу нормальный гитарный тон (скажем, нота «G»). Теперь, если вы проведете пальцем вправо, он не должен воспроизводить звук снова, но текущий воспроизводимый звук должен повернуться выше (например, нота "D"). Надеюсь, понятно, чего я хочу. Как виртуальный инструмент с каким-то «виброэффектом».

Кто-нибудь знает, как это реализовать?

Thx Chriz

1 Ответ

0 голосов
/ 04 июля 2011

Обычно такого рода действия выполняются с помощью таблицы поиска формы сигнала, а затем вы просто перебираете таблицу с любой скоростью, необходимой для получения требуемой выходной частоты.Ключевым моментом является то, что вы используете индекс таблицы с фиксированной точкой, чтобы вы могли указать точную дельту для каждой выборки - вы используете целочисленную часть, чтобы получить индексы таблицы, а затем при необходимости интерполировать между смежными выборками, используя дробную часть индекса.Если вы выберете размер таблицы, равный 2 ^ N, то перенос по модулю в конце таблицы будет очень прост в обращении.

...