четверг, июля 31, 2008

Прокол с микрофоном

Хотелось поиграться со спектром звука, снятого с микрофона. Сам класс Microphone ничего более-менее полезного не предоставляет. А SoundMixer на звуки от микрофона не реагирует.

Порыв интернет, нашел статейку "Sound Spectrum + Microphone = Disappointment", которая подтвердила мои опасения. Одно обнадеживает - 10й Flash будет поддерживать эту возможность.

А пока остается одно - сохранять запись на сервер, затем считывать и обрабатывать.
Как это сделать - разберемся позже.

* * *

И тут тоже подстерегает засада: в статье "SoundMixer.computeSpectrum + Microphone?" , в комментариях есть такая фраза: "Flash Media Server ... That's why the mic input and video input go into black boxes -- so you can't get the raw data from it and transmit or save the bytes. Otherwise there would be no need for Media Server. ... " Это значит, что нужен FMS или Red5. То есть задача усложняется на порядки. Эхх. Ждем Астру.

* * *

Кстати говоря, чтобы отправить звук с микрофона на сервер (лайвдоки) используется класс NetStream и метод public function attachAudio(microphone:Microphone):void.

3 комментария:

Const комментирует...

С этим вполне себе справится haxeVideo http://haxevideo.org/

Павел комментирует...

Ага. Некоторое время назад тоже пытался реализовать прямую работу с микрофоном.
Результаты:
1) Во Flash/Flex невозможно. Только через отправку звука на сервер. Слухи про FP10 ходят, но пока это просто слухи. Никто ничего на 100% не обещал.
2) В silverlight невозможно. И не известно будет ли возможно.
3) В javaFX невозможно. И не известно будет ли возможно.
4) В Java 1.1 невозможно.
5) В Java 5 возможно, но нужна цифровая подпись. Минимальная стоимость сертификата на год - 200$.

Racer комментирует...

Супер! Спасибо за наводочку. Вот и появился повод браться за haxe...