Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 27 июн 2019, 11:29

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: javax.sound to Android
СообщениеДобавлено: 13 сен 2013, 12:14 

Зарегистрирован: 06 апр 2013, 14:01
Сообщений: 131
Благодарил (а): 4 раз.
Поблагодарили: 17 раз.
Написал код на Java, и с печалью осознал, что Андроид не знаком с пакетом javax.sound.

Т.е. мне нужно загрузить звуковой mp3 файл в память и получить его byte массив.

Вот кусок кода на Java (я все функции в одну свалил, что бы было... понятнее), как тот же самый функционал сделать на Адроиде?
Код: [ Загрузить ] [ Скрыть ]
Using Java(TM) 2 Platform Standard Edition 5.0 Syntax Highlighting
  1.         private static float sampleRate = 0;
  2.          
  3.         public static byte[] decoding(File audioFile) throws IllegalArgumentException, UnsupportedAudioFileException, IOException {
  4.                
  5.                 AudioInputStream in = null;
  6.                
  7.                 if(audioFile.exists())
  8.                         in = AudioSystem.getAudioInputStream(audioFile);
  9.                
  10.                 .
  11.                 .
  12.                 .
  13.                
  14.                
  15.                 AudioInputStream din = null;
  16.                
  17.                 AudioFormat baseFormat = in.getFormat();
  18.                 sampleRate = baseFormat.getSampleRate();
  19.                
  20.                 AudioFormat decodedFormat = new AudioFormat(AudioFormat.Encoding.PCM_SIGNED,
  21.                                 baseFormat.getSampleRate(),
  22.                                 16, //16-bits
  23.                                 baseFormat.getChannels(),
  24.                                 baseFormat.getChannels() * 2,
  25.                                 baseFormat.getSampleRate(),
  26.                                 false);
  27.                                
  28.                 din = AudioSystem.getAudioInputStream(decodedFormat, in);
  29.                
  30.                 .
  31.                 .
  32.                 .
  33.                
  34.                
  35.                 ByteArrayOutputStream out = null;
  36.                
  37.                 try {
  38.                
  39.                         byte[] buffer = new byte[4096];
  40.                         out = new ByteArrayOutputStream();
  41.                         int length = -1;
  42.                
  43.                         while ((length = din.read(buffer, 0, buffer.length)) != -1) {
  44.                               out.write(buffer, 0, length);
  45.                         }
  46.                
  47.                         byte[] audio = out.toByteArray();
  48.                 }
  49.                 finally {
  50.                         din.close();
  51.                         out.close();
  52.                 }
  53.                
  54.                 return audio;
  55.         }
  56.  


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: javax.sound to Android
СообщениеДобавлено: 03 дек 2013, 18:01 

Зарегистрирован: 09 ноя 2013, 22:57
Сообщений: 14
Благодарил (а): 1 раз.
Поблагодарили: 3 раз.
http://developer.android.com/reference/packages.html - здесь можно посмотреть, какие классы входят в конкретное Андроид API.
Действительно, javax.sound не входит ни в один из них, однако ничего не мешает импортировать его в виде библиотеки.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 2 ] 

Часовой пояс: UTC + 3 часа


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

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB