Потоковое видео в реальном времени на Android 3.0+ (HLS и RTSP/RTP)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Потоковое видео в реальном времени на Android 3.0+ (HLS и RTSP/RTP)

Сообщение Anonymous »

Мне нужна помощь в начале работы с HLS и RTSP на Android.

Чтобы протестировать RTSP, я использую медиасервер LIVE555. На сервере есть файл примера bipbop-gear1-all.ts и индексный файл, загруженный с сайта live555.com. Итак, мой URL-адрес просто http://(myIP):80/bipbop-gear1-all.ts
На эмуляторе Android 3.0 браузер в течение нескольких минут показывает ход загрузки, а затем ничего. Никаких обновлений в окне браузера, никаких уведомлений о загрузке Android. Он просто останавливается.

На устройстве Android 3.2.1 он запускает видеопроигрыватель, но сразу же отображает: Невозможно воспроизвести видео. Извините, это видео невозможно воспроизвести.
В простом тестовом приложении (загруженном из системы отслеживания проблем Android для проблемы 17118: Android 3.1 не может воспроизводить потоковую передачу HTTP Live), MediaPlayer.prepare() ненадолго обращается к серверу и немедленно выдает исключение IOException с сообщение «Подготовка не удалась.: status=0x1». Logcat также показывает ошибку (1, -2147483648).

Это же тестовое приложение без проблем воспроизводит локальный mp4, так что я считаю, что это хорошо. На iPad видео воспроизводится по тому же URL-адресу, что, по крайней мере, доказывает, что мой сервер работает хорошо.

Чтобы протестировать HTTP Live Streaming (HLS), я использую образец bipbop, представленный на apple.com:
http://devimages.apple.com/iphone/sampl ... index.m3u8
httplive://devimages.apple.com/iphone/samples/bipbop/gear1/prog_index.m3u8

В эмуляторе Android 3 пример приложения начинает воспроизводить адрес по протоколу «httplive», но зависает. При использовании протокола «http» после MediaPlayer.start() он на мгновение зависает, но ничего не отображается. Затем logcat показывает:

Код: Выделить всё

W/AudioSystem(715): AudioFlinger server died!
W/IMediaDeathNotifier(715): media server died
E/MediaPlayer(715): error (100, 0)
E/MediaPlayer(715): Error (100,0)
и вызывается мой обработчик onCompletion().

На реальном устройстве 3.2.1 приложение, использующее протокол http, ведет себя так же, как и на эмуляторе 3.0. httplive выдает исключение IOException при подготовке с сообщением «Подготовка не удалась.: status=0x1».

В браузере эмулятора 3.0 по адресу http вызывается аудиоплеер, который останавливается, а затем отображает всплывающее сообщение: «Извините, проигрыватель не поддерживает этот тип аудиофайла». Адрес httplive просто переходит в поиск Google.

В браузере на реальном устройстве 3.2.1 адрес http вызывает диалоговое окно «Завершить действие с помощью» с вариантами выбора: «Музыка» и «Видеоплеер». Нажимаю «Видеоплеер», получаю: «Невозможно воспроизвести видео», «Извините, это видео невозможно воспроизвести». Нажимаю «Музыка» и получаю: «Не удалось воспроизвести запрошенную вами дорожку».. Опять же, этот адрес хорошо работает на iPad.

Будем очень благодарны за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/893 ... d-rtsp-rtp
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»