11

AVPlayer 无法播放视频

我有视频网格,AVPlayer 有时无法播放视频并显示此禁用图标并出现以下错误,

Domain=AVFoundationErrorDomain Code=-11850 "Operation Stopped" UserInfo={NSUnderlyingError=0x7f927ede4210
{Error Domain=NSOSStatusErrorDomain Code=-12939 "(null)"}
, NSLocalizedFailureReason=The server is not correctly configured., NSLocalizedDescription=Operation Stopped})

但是稍后会播放相同的视频,因此这是随机问题。对出了什么问题有任何帮助吗?

4

1 回答 1

15

搜索错误

我相信有很多人和我一样,正在寻找这个问题的解决方案。

花了整整一个下午的时间,终于解决了这个问题。

关于问题,视频开始播放时出现错误。

如:</p>

Domain=AVFoundationErrorDomain Code=-11850 "Operation Stopped"

然后我搜索这个错误号,找到它:

AVErrorServerIncorrectlyConfigured = -11850

在 Apple 的文档中,我找到了有关此错误的一些信息。

发送媒体资源的 HTTP 服务器未按预期配置。这可能意味着服务器不支持字节范围请求。

查找错误

所以,我们应该明白这是一个服务器问题。

现在,我们播放一个视频,并抓取所有 http 请求进行分析。

会发现 AVPlayerItem 发送了一个 HTTP 请求。

当 AVPlayerItem 收到视频 URL 时,它会执行以下任务:

  1. 发送字节请求 HTTP 请求,范围 = 0 -1
  2. 如果响应码为 206 并返回 1 个字节的数据,则执行第 3 项任务,如果不是,则发生 AVErrorServerIncorrectlyConfigured 错误。
  3. 继续发送其他 HTTP 请求,以下载所有持续时间的段。并且 VideoData 代码的响应必须是 206

在我的情况下,当发送 range[0-1] HTTP 请求时,服务器端给我一个 200 OK 响应,所以发生了错误。

结果

因此,您需要让您的服务器工程师检测所有返回的响应。

我希望它可以帮助你。

于 2017-02-15T09:08:44.643 回答