Воспроизведение множества видео без одновременного проигрывания видео в Swift - PullRequest
0 голосов
/ 26 ноября 2018

У меня массив видео-роликов, воспроизводимых в полноэкранном режиме.Я провел влево и вправо в контроллере вида.Проблема в том, что когда я начинаю проигрывать видео и смахиваю влево или вправо, текущее видео не прекращается, а начинается воспроизведение следующего.Старое видео воспроизводится вместе с новым видео аудио.

Ниже приведен мой исходный код воспроизведения видео.

avPlayer = AVQueuePlayer.init()
let item = AVPlayerItem(url: url!)
avPlayer!.replaceCurrentItem(with: item)
avPlayerLayer = AVPlayerLayer(player: avPlayer)
avPlayerLayer.videoGravity = AVLayerVideoGravity.resizeAspectFill
avPlayer?.actionAtItemEnd = AVPlayerActionAtItemEnd.none

avPlayerLayer.frame = videoView.layer.bounds
view.backgroundColor = UIColor.clear;
view.layer.insertSublayer(avPlayerLayer, at: 0)

avPlayer?.play()

При проведении влево / вправо.

if avPlayer != nil
{
    if (avPlayer?.rate != 0 && avPlayer?.error == nil)
    {
         avPlayer!.pause()
         avPlayer!.advanceToNextItem()
         avPlayerLayer.removeFromSuperlayer()
    }
 }

После этого снова выполняется первая часть кода.

...