|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Sep 2005
Сообщений: 85
|
Преобразовать данные с микрофона с 11кгц в 44кгц
Записываю данные с микрофона:
mic = Microphone.getMicrophone(); mic.gain = 100; mic.rate = 11; mic.addEventListener(SampleDataEvent.SAMPLE_DATA, micSampleDataHandler); function micSampleDataHandler(event:SampleDataEvent):void { while(event.data.bytesAvailable) { var sample:Number = event.data.readFloat(); soundBytes.writeFloat(sample); } } В документации сказано что для проигрывания звука через обьект Sound нужен звук в формате 44кгц, но можно и преобразовать звук и из формата с меньшей частотой. Цитата: "Можно также преобразовать микрофонные сэмплы, захваченные при низкой частоте, в частоту 44 кГц, которая требуется объекту Sound." Сейчас если я пытаюсь проиграть звук то он просто сильно быстро играется, а мне требуется замедлить его до нормальной скорости. Вопрос: Как сделать это преобразование из 11 в 44кгц?
__________________
www.MegaLuckyPlay.com |
|
|||||
Регистрация: Aug 2008
Сообщений: 27
|
Самое тупое будет - продублировать каждый такт 4 раза.
По умному - сделать апроксимацию, линейную или сплайн. Но на сплайне флеш наверно умрёт, только если не выносить код в алхимию. |
|
|||||
Регистрация: Sep 2005
Сообщений: 85
|
продублировал вроде нормально, для микрофона соёдет.
__________________
www.MegaLuckyPlay.com |
Часовой пояс GMT +4, время: 21:19. |
|
« Предыдущая тема | Следующая тема » |
|
|