Показать сообщение отдельно
Старый 23.01.2014, 17:56
TribunaL вне форума Посмотреть профиль Отправить личное сообщение для TribunaL Найти все сообщения от TribunaL
  № 1  
Ответить с цитированием
TribunaL

Регистрация: Jan 2014
Сообщений: 2
Melody Аудио поток через сокет

Доброго времени суток.
Собственно как воспроизвести аудио поток (mpeg) полученый через Socket?
Что я делаю:
1. Устанавливаю соединение с сервером через сокет.
2. Отправляю HTTP запрос
3. Получаю ответ и записываю его в ByteArray.
4. Обрабатываю ответ, исключая заголовок и метаданные.
5. Подписываюсь на событие SampleDataEvent и выполняю audio.play().
6. Пишу байты порциями из ByteArray в even.data в обработчике события SampleDataEvent.

Звук конечно есть, но это просто какой-то шум.

Пробовал вместо ByteArray объявлять еще один Sound и в него подгружать этот поток, работает.
Пробовал в этот дополнительный Sound подгружать mp3-файл и делать extract, в итоге получилось что длина ByteArray в 8 раз привышает размер файла.

Где-то вычитал что нужно как-то декодировать данные и ресэмплировать их, но вот как нигде не нашел.

Что мне нужно сделать с моим массивом аудио данных чтобы Sound их нормально воспроизвел?


Последний раз редактировалось TribunaL; 23.01.2014 в 18:37.