使用带有createInputSurface的mediacodec时强制使用i-frame

时间:2014-04-10 12:17:40

标签: android mediacodec

当使用曲面作为输入时,是否可以触发编码器发送i帧? 我知道排队输入缓冲区的可能性,但在使用createInputSurface时我没有找到办法。

1 个答案:

答案 0 :(得分:3)

您无法在缓冲区上设置标记。这也会影响BUFFER_FLAG_END_OF_STREAM,但为此您需要signalEndOfInputStream()来电。

每个KEY_FRAME_RATE * KEY_I_FRAME_INTERVAL个缓冲区都会发送一帧。 (我不知道那是多么坚定 - 我怀疑他们在实践中可能会或多或少地出现。)