Live Stream перестает играть на Google TV и планшете Motorola Xoom на Android - PullRequest
1 голос
/ 18 января 2012

Прошу прощения, если я отправляю один и тот же вопрос дважды ... но я в отчаянии и ужасно застрял.

Я создаю приложение для Android, которое будет первоначально развернуто на устройствах и планшетах Google TV. Мое приложение Android воспроизводит прямые трансляции различных телеканалов.

Информация о потоке канала:

Кодек: H264 - MPEG-4 AVC (я определил информацию кодека при воспроизведении потока в проигрывателе VLC) URL-адрес потока: начинается с rtsp: //

Я использовал пример VideoPlayer_demo , представленный на сайте разработчика Android, с некоторыми изменениями для асинхронной загрузки потока и обнаружения ошибок.

Я проверил свое приложение на Logitech Устройство Google TV и Планшет Motorola Xoom , и проблема в обоих случаях.

Оба устройства начинают воспроизводить поток правильно ... затем зависают на несколько секунд, а затем начинают воспроизводить его ( я думаю, что он загружает поток ??? ) .. он делает это два / три раза, а затем зависает полностью. И видео не воспроизводится вообще.

Наши серверы также предоставляют потоки в формате Windows Media Video 9 (WMV3) ... но он вообще не работал. Я думаю, что этот формат не поддерживается в Google TV / Android.

Пожалуйста, помогите мне решить эту проблему ИЛИ скажите мне альтернативный способ сделать это.

Edit:

LogCat не показывает никаких ошибок. Единственные предупреждения, которые он показывает, следующие:

01-19 13:32:13.319: W/MediaPlayer(678): info/warning (701, 0)
01-19 13:32:13.328: I/MediaPlayer(678): Info (701,0)
01-19 13:32:15.428: W/MediaPlayer(678): info/warning (702, 0)
01-19 13:32:15.428: I/MediaPlayer(678): Info (702,0)
01-19 13:47:26.148: D/MediaPlayerDemo(678): onCompletion called

Последняя строка немного подозрительна, поскольку она записана в событии onCompletion MediaPlayer , которое вызывается, когда во время воспроизведения достигается конец источника мультимедиа. Я думаю, что это событие показывает, что MediaPlayer считает, что видео завершено, и после этого видео перестает воспроизводиться.

Я загрузил небольшой демонстрационный проект здесь , который пытается транслировать демонстрационный прямой эфир. Его ссылка в проекте. Это демо также зависает и вызывает ту же проблему. Так что, запустив эту демонстрацию на своем планшете / устройстве Google TV, вы бы точно знали, с какой проблемой я сталкиваюсь.

Спасибо

1 Ответ

0 голосов
/ 25 февраля 2013

У меня тоже точно такая же проблема. Я думаю, что проблема не в типе потоковой передачи.

У меня такая же проблема при потоковой передаче по Wi-Fi / Ethernet и http / rtmp / smb. Я даже загружаю файл и копирую его в память, но при воспроизведении файл останавливается. Этот файл корректно воспроизводится при потоковой передаче по HTTP проигрывателями Windows / VLC Media.

Я думаю, что это проблема с кодеком или контейнером файла. Мой файл имеет следующий заголовок: ftypmp42 isommp42) moov lmvhd

Пример файла можно найти в следующем месте:

http://marjaaftp.http.internapcdn.net/MARJAAFTP/Images/GMAAssets/Video/299.mov

...