AVQueuePlayer воспроизводит элементы одновременно, а не последовательно

Я пытаюсь собрать простое приложение для воспроизведения видео перед просмотром, за которым следует видео с контентом.

В настоящее время я пытаюсь использовать класс AVQueuePlayer, чтобы сделать это. К сожалению, кажется, что он хочет правильно воспроизводить видео по порядку.

Например, предварительная прокрутка воспроизводится сама по себе в течение нескольких секунд, а затем (до завершения предварительной прокрутки) начинается попытка воспроизведения видеоконтента. В течение нескольких секунд проигрыватель, кажется, воюет сам с собой и переключается между двумя видео (ни одно из них не воспроизводится очень хорошо). Наконец, когда предварительная прокрутка завершена, видеоконтент воспроизводит остальную часть пути в обычном режиме.

Я просмотрел документацию для AVQueuePlayer и не вижу ничего очевидного, что мне не хватает.

Мой код довольно простой:

AVPlayerItem *preRollItem = [AVPlayerItem playerItemWithURL: preRollUrl];
AVPlayerItem *contentItem = [AVPlayerItem playerItemWithURL: contentUrl];

self.player = [AVQueuePlayer queuePlayerWithItems:[NSArray arrayWithObjects:preRollItem, contentItem, nil]];

[self.player play];

В чем хитрость, чтобы видео воспроизводилось последовательно.


person jbrunken    schedule 28.12.2011    source источник
comment
Вы говорите, что AVQueuePlayer одновременно воспроизводит оба последовательно поставленных в очередь видео, видимых для пользователя?   -  person Till    schedule 28.12.2011
comment
По сути да. Похоже, что проигрыватель одновременно воспроизводит последние несколько секунд первого видео и первые несколько секунд второго видео. Излишне говорить, что это плохо работает.   -  person jbrunken    schedule 29.12.2011


Ответы (1)


Убедитесь, что вы действительно тестируете устройство. По моему опыту, симулятор iOS5 имеет большие проблемы с AVQueuePlayer и делает странные вещи.

Я обнаружил, что симулятор iOS4.3 гораздо лучше справляется с тестированием AVFoundation.

person Till    schedule 31.12.2011
comment
Я думал об этом, но, как ни странно, на телефоне происходит то же самое. - person jbrunken; 03.01.2012
comment
Пробовали ли вы использовать разные видео? Кроме того, ваш код не может быть полным - улучшите его до минимальной, полностью работающей версии. Если возможно, добавьте URL-адреса, с которыми вы тестируете. - person Till; 03.01.2012