swift 在ios AVPlayer中切换HLS流的比特率

oknwwptz  于 2023-05-16  发布在  Swift
关注(0)|答案(2)|浏览(128)

我需要在HLS流中切换特定的比特率。为了设置比特率,我在初始化过程中使用了下面的属性。

let playerItem = AVPlayerItem(url: streamUrl)
playerItem.preferredPeakBitRate = 240
player = AVPlayer(playerItem: playerItem)

但在播放过程中,如果我试图设置另一个比特率使用下面的代码

self.playerController?.player?.currentItem?.preferredPeakBitRate = 1500

流未切换到720p。
流包含两个比特率和工程罚款与任何比特率我在初始化过程中提供。

wpx232ag

wpx232ag1#

如果我没有弄错的话,preferredPeakBitRate是以每秒的比特数而不是分辨率来衡量的。在查看了Apple开发人员的视频后,似乎它实际上是每秒千比特,但documentation另有说明。

f4t66c6m

f4t66c6m2#

SwiftpreferredPeakBitRate可以尝试

player?.currentItem?.preferredPeakBitRate = 700000 //for 240p

对于其他比特率//240 p = 700000 //360 p = 1500000 //480 p = 2000000 //720 p = 4000000 //1080 p = 6000000 // 2k = 16000000 // 4k = 45000000

相关问题