Плавный переход между разными видео с помощью VideoView

Я пытаюсь добиться следующего:

  1. Воспроизведение длинного видео из Интернета с помощью VideoView
  2. В параллельном буфере короткое видео из Интернета
  3. Через X секунд приостановите длинное видео и воспроизведите короткое.
  4. Когда закончите воспроизведение короткого видео, я возобновляю длинное видео.

Мне нужно, чтобы переход между фильмами был как можно более плавным. Я попытался добиться этого несколькими способами с помощью ICS:

  1. Используйте два VideoView друг над другом и переключайтесь между ними, но у меня были проблемы с Z-порядком.

  2. Я взял код VideoView и изменил его, чтобы внутри него был еще один MediaPlay для буферизации и воспроизведения короткометражного фильма.

Вариант № 2 работает на ICS, но при попытке на Android 2.3 он не сработал. Я читал, что одновременная работа двух объектов MediaPlay не гарантируется.

У меня вопрос: как этого можно достичь с помощью Android 2.1 или выше?


person Oren Bengigi    schedule 05.03.2012    source источник


Ответы (1)


Вариант 1 невозможен, поскольку вы не можете разместить два SurfaceView / VideoView z на одном экране. PFB ссылка, в которой говорится то же самое:

Обработка двух SurfaceView

person Deva    schedule 05.03.2012
comment
Может быть, можно переместить один в отрицательную позицию (-1, -1) и установить его размер равным 1? - person Oren Bengigi; 06.03.2012
comment
Я думаю, что на уровне API 5 у вас может быть 2 вида поверхности и упорядочить их индекс z с помощью setZOrderMediaOverlay - person robd; 08.08.2013