【问题标题】:IOS AVPlayer dosent play video from serverIOS AVPlayer 不播放来自服务器的视频
【发布时间】:2016-06-12 08:06:47
【问题描述】:

我有一个用 Play Framework 编写的 Web 服务器,它通过 http 请求服务器视频文件,我正在构建一个小型 IOS 应用程序来播放从服务器下载的视频。

let fileURL: NSURL? = NSURL(string: "video url")
player = AVPlayer(URL: fileURL!)

使用上面的代码,AVPlayer 可以播放来自http://www.kolor.com/360-videos-files/noa-neal-graffiti-360-music-video-full-hd.mp4 的 mp4 视频,但是它不能播放从我自己的服务器返回的相同视频。到目前为止,我没有看到任何错误。 (我从 kolor.com 下载了视频,放到自己的服务器上)

在请求视频时,我确实比较了 kolor.com 的 http 响应标头和我自己的服务器,并且我确实确保我的服务器可以处理远程请求,以便我的服务器能够返回特定范围的视频。目前 chrome 自己的视频播放器能够播放从我的服务器下载的视频(通过直接在 chrome 的地址栏中输入视频 url),但是我无法让 IOS AVPlayer 工作......

我需要在自己的服务器中进行任何特定设置吗?还是我在 http 标头中遗漏了什么?

以下是 IOS 应用程序从我的服务器请求视频时的一系列 http 请求和响应(ETag 是我选择的随机字符串,我添加它是因为来自 kolor.com 的 http 响应也有这个标头):

【问题讨论】:

  • 如果您的文件是.mp4,为什么您的服务器返回“video/webm”Content-Type?
  • 我尝试了不同的视频类型,对于这个特定的例子,实际返回的文件是 webm
  • 其实,服务端需要对视频进行编码,然后再交给客户端吗?我注意到developer.apple.com/library/ios/documentation/…,它与我的场景相关吗?

标签: ios video-streaming avplayer


【解决方案1】:

问题已解决...我没有在视频服务器中为来自 IOS 的每个子序列字节范围请求返回正确的字节缓冲区长度

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-27
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    • 2015-10-16
    • 1970-01-01
    • 2013-07-02
    • 1970-01-01
    相关资源
    最近更新 更多