如何在 iOS 9+ 中使用 AVPlayer 实现 'Adaptive Bit Rate' (HLS)

How to implement 'Adaptive Bit Rate' (HLS) with AVPlayer in iOS 9+

我正在尝试使用 AVPlayer 实现自适应比特率,但我不知道如何在 low/high 流之间切换。我有点困惑,有几个问题:

  1. 服务器是否独自负责在其端实施 HLS 客户端也必须对此做些什么客户端自动处理?

  2. 我从服务器得到以下 URLs,谁能告诉我如何根据网络速度在它们之间切换以及涉及哪些其他步骤?

{ "VideoStreamUrl": "http://50.7.149.74:1935/pitvlive/aplus3.stream/playlist.m3u8?", "VideoStreamUrlLow": "http://50.7.149.74:1935/pitvlive/aplus3_240p.stream/playlist.m3u8?", "VideoStreamUrlHD": null }

AVPlayer 从框架中原生支持 HLS,因此您不需要做任何事情来支持它。

框架会根据当前可用带宽自动切换低流和高流,无需实际选择流