Я понимаю, что есть некоторые проблемы с точки зрения уровня поддержки HLS в Android. Я пытаюсь написать небольшую демонстрацию видеопроигрывателя (чтобы работать как можно больше устройств); предпочтительно без использования сторонней библиотеки; который может передавать видео HLS.
ПРИМЕЧАНИЕ. В настоящее время я тестирую JellyBean 4.2.2, но имею доступ к другим версиям
Мне удалось использовать класс MediaPlayer, чтобы мое приложение могло начать воспроизведение потока (например, тестовое видео Apple BipBopAll), но похоже загрузите неправильную часть потока, поскольку видео, кажется, начинается через 29 минут (и так заканчивается через приблизительно тридцать секунд).
Код, который я использовал, довольно простой:
private void playTrack()
{
player = new MediaPlayer();
try
{
player.setDisplay(holder);
player.setDataSource("http://devimages.apple.com/iphone/samples/bipbop
/bipbopall.m3u8");
player.prepare();
}
catch (...)
{
}
player.start();
}
Обновление: Я тестировал один и тот же код на ICS 4.0.4, и он работает правильно. Тестирование в версии 3.0.1 загружает поток через 15 минут, а затем выполняется корректно.
Что можно сделать, чтобы поток начинался с самого начала и правильно воспроизводился на нескольких версиях Android?
Или, есть ли лучшая реализация, которую я должен использовать?