MediaFormat.KEY_I_FRAME_INTERVAL仅采用一个整数值,并且我认为这是控制编码器生成I帧频率的频率的原因吗?那是否意味着如果我使用MediaCodec,就可能无法更频繁地生成I帧?

最佳答案

您可以通过缩放时间戳来解决此问题。如果您例如将时间戳输入到编码器中时将其乘以2,然后在从编码器的输出缓冲区中获得的时间戳上除以2,则应该可以获得半秒的I帧间隔。然后,您还需要将比特率(和帧频)减半以使其匹配。这当然不是理想的,但是应该可以让您获得正确的效果。

10-08 07:20