Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод звука в J2ME 
:(
    Опции темы
qqqq1961
Дата 13.7.2014, 15:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 24.8.2013

Репутация: нет
Всего: нет



Пишу управлялку через аудиоканал. Источник будет универсальный - смартфон, планшет, десктоп, ноут. Мне нужно выводить на динамик тоны разной частоты (2000-4000 Гц, длительностью несколько периодов.) Пока я вывожу вот так (картинка в аттаче):
Код

int[] wav_hdr = {0x52,0x49,0x46,0x46,0x66,0x1F,0,0,0x57,0x41,0x56,0x45,0x66,0x6D,0x74,0x20,0x12,0,0,0,1,0,1,0,0x40,0x1F,0,0,0x40,0x1F,0,0,1,0,8,0,0,0,0x64,0x61,0x74,0x61,0x40,0x1F,0,0};// хедер файла для частоты дискр. 8 КГц

byte[]d = new byte[wav_hdr.length+100];
int n=46;// длина аудиохедера

// пишем в массив команды (два звука разной частоты)
for(int i=0;i<15;i++){d[n++]=0; d[n++]=(byte)255;}// 4 КГц
for(int i=0;i<8;i++){d[n++]=0;d[n++]=0; d[n++]=(byte)255;d[n++]=(byte)255;} // 2 КГц (кстати, как избавиться от приведения к (byte) ?)
Эти прямоугольные колебания становятся синусоидами после динамика.

// по нажатию кнопки воспроизводим аудиомассив с командами
    InputStream stream = new ByteArrayInputStream(d);
    Player player = Manager.createPlayer(stream, "audio/x-wav");
    player.start(); 
ЭТО РАБОТАЕТ ОТЛИЧНО (передается и принимается) для КРАТНЫХ частот, но хотелось бы для произвольных частот и не очень удобно заполнять массив, хотелось бы просто генерить в поток проигрывателя без промежуточного файла определенного размера. 

Есть ли у кого пример  - Как на яве синтезировать звуки?
Если скажете: "Юзай Только PlayTone", то как там вместо разных красявошных семплов сделать простые периодические сигналы (прямоугольники, треугольники или синусоиду)?


Это сообщение отредактировал(а) qqqq1961 - 13.7.2014, 15:34

Присоединённый файл ( Кол-во скачиваний: 4 )
Присоединённый файл  Манчестер_II_вариант_2.JPG 72,82 Kb
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.1022 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.