小编Jos*_*tos的帖子

带有 AWS Cookie 的 AVPlayer 使用 AirPlay

我尝试播放 CloudFront 提供的 HLS 流。

它在应用程序中运行良好。我只是在 AVURLAsset 中设置了 cookie,然后一切顺利。

当我在 AirPlay 提供的列表中选择一个设备(Apple TV)时出现问题。流没有开始。

我得到了错误:

Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo={NSLocalizedFailureReason=An unknown error occurred (-12926), NSLocalizedDescription=The operation could not be completed, NSUnderlyingError=0x28312ed90 {Error Domain=NSOSStatusErrorDomain Code=-12926 "(null)"}}
Run Code Online (Sandbox Code Playgroud)

我正在使用此代码来设置 cookie:

let url = URL(string: "https://YOUR_VIDEO_URL.m3u8");
var cookies = [HTTPCookie]()
    if let cookie = json["cookie"] as? [String: String] {
    for key in cookie.keys {
        let cookieField = ["Set-Cookie": "\(key)=\(cookie[key] ?? "")"]
        let cookie = HTTPCookie.cookies(withResponseHeaderFields: cookieField, for: url)
        cookies.append(contentsOf: cookie) …
Run Code Online (Sandbox Code Playgroud)

http-live-streaming avplayer airplay amazon-cloudfront swift

7
推荐指数
1
解决办法
460
查看次数