iOS: AVQueuePlayer/AVPlayerItem "一个AVPlayerItem在播放器队列中只能占据一个位置。"

5
我一直在遇到这个错误:
'一个 AVPlayerItem 只能占据播放器队列中的一个位置。'
我使用 NSLog 打印了播放器的项目,但没有一个相等。进一步地,为了确认,我添加了以下代码:
if([player canInsertItem:itemToAdd afterItem:nil])
 [player insertItem:itemToAdd afterItem:nil];

当我不确定是否可以在不同的内存位置中拥有两个相同的项目时,我编写了一个类方法来测试玩家是否包含一个项目或与其相同的东西。然而,我仍然得到错误信息。
我看过几篇帖子,关于使用MPMoviePlayerController出现此错误的人,但我没有使用该自定义类,只是使用了开箱即用的AVQueuePlayer。
有任何修复错误的想法吗?
2个回答

0

这里有一个类似的问题

它目前还没有被采纳的答案,但是看起来很多人都遇到了相同的问题。
此外,可以查看苹果开发者论坛上的这篇帖子


0

我遇到了类似的问题。我猜你可能使用了AVPlayerLooper和AVQueuePlayer?在描述中写道:

指定的AVPlayerItem将用作模板,生成至少3个AVPlayerItem副本,并将这些副本插入到指定的AVQueuePlayer的播放队列中以完成循环播放。

在这种情况下,当您调用replaceCurrentItem等函数时,可能会出现错误。

目前我只能猜测这种错误的原因,等进一步测试后我会更新。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接