【发布时间】:2016-04-28 20:17:36
【问题描述】:
在 iOS 上使用带有属性 kVTCompressionPropertyKey_AverageBitRate 的 VideoToolbox API 进行 H.264 硬件加速编码的比特率不受限制。
据观察,尽管编码器的比特率配置正确,但 H.264 硬件加速编码的比特率有时高达 4mbps(对于 1280x780、640x360)。 这个高比特率值不在可接受的范围内。 *有一个用于设置比特率的属性,即 videoToolbox 中可用的 kVTCompressionPropertyKey_AverageBitRate。文档说“这不是硬性限制;比特率可能会超过这个峰值”。
我尝试了以下两件事: 1. 将比特率和设置数据率设置为一些硬编码值,作为 init 中 VTCompressionSessionCreate 的 encoderSpec 属性的一部分。删除了初始化后比特率的任何重新配置/设置。 2. 使用 VTSessionSetProperty 运行时设置比特率和设置数据率
两者似乎都不起作用。
有没有办法将比特率限制在一定的范围内?非常感谢任何帮助。
【问题讨论】:
-
你有没有弄清楚这里发生了什么?我也面临同样的问题。
标签: encode hardware-acceleration encoder video-toolbox