Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.08.2010, 16:13
RonEXI вне форума Посмотреть профиль Отправить личное сообщение для RonEXI Найти все сообщения от RonEXI
  № 1  
Ответить с цитированием
RonEXI

Регистрация: Sep 2005
Сообщений: 85
По умолчанию Преобразовать данные с микрофона с 11кгц в 44кгц

Записываю данные с микрофона:

Код AS3:
 
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); 
    } 
}
Получается обьект soundBytes с бинарными данными со звуком с частотой 11кгц (11кгц ставлю специально чтобы меньше весило при отправке на сервер).
В документации сказано что для проигрывания звука через обьект Sound нужен звук в формате 44кгц, но можно и преобразовать звук и из формата с меньшей частотой.

Цитата: "Можно также преобразовать микрофонные сэмплы, захваченные при низкой частоте, в частоту 44 кГц, которая требуется объекту Sound."

Сейчас если я пытаюсь проиграть звук то он просто сильно быстро играется, а мне требуется замедлить его до нормальной скорости.

Вопрос: Как сделать это преобразование из 11 в 44кгц?
__________________
www.MegaLuckyPlay.com

Старый 21.08.2010, 16:42
LOS2008 вне форума Посмотреть профиль Отправить личное сообщение для LOS2008 Найти все сообщения от LOS2008
  № 2  
Ответить с цитированием
LOS2008

Регистрация: Aug 2008
Сообщений: 27
Самое тупое будет - продублировать каждый такт 4 раза.
По умному - сделать апроксимацию, линейную или сплайн. Но на сплайне флеш наверно умрёт, только если не выносить код в алхимию.

Старый 21.08.2010, 16:50
RonEXI вне форума Посмотреть профиль Отправить личное сообщение для RonEXI Найти все сообщения от RonEXI
  № 3  
Ответить с цитированием
RonEXI

Регистрация: Sep 2005
Сообщений: 85
продублировал вроде нормально, для микрофона соёдет.
__________________
www.MegaLuckyPlay.com

Создать новую тему Ответ Часовой пояс GMT +4, время: 10:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 10:39.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.