2013-02-26 6 views
0

Я создаю приложение радио в BB 5. У меня есть URL-адрес .pls, где я нахожу свои URL-адреса для воспроизведения потока. Моя проблема. Мне нужно создать буфер для воспроизведения этого потока, потому что загруженный файл слишком велик, чтобы играть его по-разному, но я не знаю, как построить этот буфер. Есть идеи? Я думаю, что это должно быть что-то подобное, чтоBlackberry radio app streaming audio

Streaming media BB

Но я хочу что-то более простое, только запускать и останавливать воспроизведение радио потокового видео.

+0

Эта ссылка выглядит многообещающей. Вы пробовали предложения в нем? Вы заметили [ссылку на образец кода] (http://supportforums.blackberry.com/rim/attachments/rim/[email protected]/398/2/StreamingPlayer.zip)? Я бы порекомендовал попробовать его, и если это не сработает для вас, разместив используемый вами потоковый код и попросите помочь его исправить. – Nate

+0

Да Нейт, я видел эти вещи. Но проблема здесь следующая. Существует объект CyclicBufferReader, который не существует в BB 5, и я не могу запустить проект .... завтра я увижу, могу ли я запустить его. – Mun0n

+0

В этом проекте не используется 'CyclicBufferReader'. – Nate

ответ

0

Хорошо, я решил это, используя пакет потоковой передачи из кода, указанного в ссылке выше. Я добавил CircularByteBuffer из небольшой ссылки, показанной в статье. В пакете патчей есть класс, который нуждается в некоторых исправлениях (в некоторых BufferOverflowException и способе изменения размера от CircularByteBuffer). И теперь мой проект работает! Большой!

ADD

Исправления были в StreamingPlayer классе, есть вызов метода изменения размера с некоторым параметром ИНТ. В коде CircularByteBuffer метод равен resize(), поэтому для него не требуются параметры int, он удваивает пропускную способность буфера. Поэтому я меняю этот вызов, используя параметр resize() без параметров int. Другое исправление составляет около BufferOverflowException. В коде этот объект имеет String, но он дает ошибку. Я удаляю этот Strings.

+0

Если вы можете опубликовать * исправления *, которые вы сделали для этого класса, я уверен, что некоторые будущие читатели выиграют от этого. Благодаря! – Nate

+0

есть длинная задержка до начала потоковой передачи, эта проблема возникает с вами? Если вы не можете опубликовать исправления, которые вы внесли в класс? Thanks; – Ahmad

+0

Да, у меня такая же проблема, потоковая передача занимает 20 секунд, чтобы начать – Mun0n