【问题标题】:An AVPlayerItem can occupy only one position in a player's queue at a time?AVPlayerItem 一次只能占据玩家队列中的一个位置?
【发布时间】:2019-06-11 20:12:00
【问题描述】:

我已经看到many questions 对此没有任何解决方案。我得到:

一个 AVPlayerItem 一次只能占据玩家队列中的一个位置

在快速点击视图按钮后的控制台中,该按钮应具有以下两种状态之一:

  1. 已成功预加载视频
  2. 只有一个 videoURL,然后将在另一个 VC 中加载。

为什么会发生这种情况,我该如何解决?

这是我在过渡到 VC 时处理此问题的代码:

if numberMedia == 0 {

            if selectedPost!.interimMedia[numberMedia].playerLayer != nil {
                playCurrentMediaVid(currentMedia: selectedPost!.interimMedia[numberMedia])
            } else {

                let videoURL = selectedPost!.interimMedia[numberMedia].videoURL

                if videoURL != nil {
                    //if we did not preload the video but have the cached vidURL
                    preloadVideo(media: selectedPost!.interimMedia[numberMedia])
                    playCurrentMediaVid(currentMedia: selectedPost!.interimMedia[numberMedia])
                } else {
                    //if we dont have the cached vid url
                    selectedPost!.interimMedia[numberMedia].videoURL = getVideoURL(stringUrl: selectedPost!.interimMedia[numberMedia].videoURLString)
                    preloadVideo(media: selectedPost!.interimMedia[numberMedia])
                    playCurrentMediaVid(currentMedia: selectedPost!.interimMedia[numberMedia])
                }
            }

        }

【问题讨论】:

    标签: ios swift avplayeritem avqueueplayer


    【解决方案1】:

    我查看了这个问题,发现如下问题:

    如果您打印 playerQueue 的 status.rawValue 和 AVPlayerQueue(AVPlayer 的子类)的 currentItem(AVPlayerItem),您会发现状态将为 0 或 1。参考:0 表示状态。 unknown 和 1 表示 status.readyToPlay(你想要的那个)。因此,如果两个打印件都是 0 则失败,这就是您收到错误的原因。位置未知,但您正在尝试 .play() playerQueue,这当然会导致错误。

    我对您的建议(修复)是找到一种方法来更快地加载 AVPlayerItem 内的媒体(可以将 URL 放入 AVAsset 中,而不是尝试立即将 URL 初始化到AVPlayer),或者可以使用 KVO 来检测它何时完成加载(有点像完成块式的解决方案)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-11-02
      • 2016-08-08
      • 1970-01-01
      • 1970-01-01
      • 2020-05-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多