изменить высоту волнового файла в Android? - PullRequest
3 голосов
/ 08 января 2010

Может кто-нибудь сказать мне, как изменить высоту волнового файла в Android?

1 Ответ

0 голосов
/ 18 февраля 2011

Android не имеет таких встроенных функций, и процесс совсем не тривиален. Если вы хотите попробовать написать код самостоятельно, я предлагаю рассмотреть такие алгоритмы, как PSOLA, WSOLA и Phase Vocoder для изменения высоты тона. Книга DAFX Udo Zölzer обсуждает многие из них довольно подробно, и большинство из них довольно просты. Я считаю, что Phase Vocoder работает быстрее всего, но для его понимания требуется больше DSP и математических знаний. PSOLA, пожалуй, наименее математически сложный. Я лично предпочитаю WSOLA и Enhanced WSOLA (EWSOLA), но они требуют совсем немного вычислительной мощности.

Для методов корреляции (если вы используете WSOLA) я предлагаю делать это в частотной области (корреляция на основе Google FFT). Это намного быстрее.

Если бы большая часть этого только что прошла через вашу голову, вы, возможно, захотите пересмотреть все это, но я ни в коем случае не пытаюсь вас отговорить. =)

...