如何知道 AVPlayer 何时使用仅音频比特率?

Posted

技术标签:

【中文标题】如何知道 AVPlayer 何时使用仅音频比特率?【英文标题】:How to know when AVPlayer uses the audio only bit-rate? 【发布时间】:2012-02-26 06:24:45 【问题描述】:

当遇到慢速连接时流式传输时,AVPlayer 可能会选择在 HTTP Live Streaming 播放列表中播放最低比特率。

有没有办法识别这种转变?

我尝试通过 KVO 观察 AVPlayerItem “tracks”属性以查看它何时仅包含音频,但在大多数情况下,即使播放器切换到仅音频流,tracks 属性也不会更改。

【问题讨论】:

【参考方案1】:

我发现 AVPlayerItem tracks 属性在模拟器上并不可靠,但在实际设备上更可靠(大约有 5 秒的偏差)。

每当tracks 属性发生变化时(您可以通过KVO 了解何时),您应该遍历轨道并查看是否有任何轨道将'mediaType' 设置为AVMediaTypeVideo。 如果没有,那么您可以断定您处于仅音频状态。

【讨论】:

以上是关于如何知道 AVPlayer 何时使用仅音频比特率?的主要内容,如果未能解决你的问题,请参考以下文章

iOS mp3 (AVaudioPlayer) 的比特率值

如何在可可中获取音频文件的比特率

ffmpeg转换增加比特率

音频中采样位数,采样率,比特率的名词解释(转)

使用 ffmpeg 批量降低 mp3 音频文件的比特率和大小

SceneKit AVPlayer 仅播放音频