Android ndk AMediaCodec_releaseOutputBufferAtTime()时会发生什么[详细信息]

Android ndk AMediaCodec_releaseOutputBufferAtTime()时会发生什么[详细信息],android-ndk,android-mediacodec,vsync,surfaceflinger,Android Ndk,Android Mediacodec,Vsync,Surfaceflinger,当解码输出缓冲区可用并且您希望将其渲染到屏幕上时。使用MediaCodec NDK API,如果已经注册了要渲染的本机窗口,则可以选择调用AMediaCodec_releaseOutputBufferAtTime() 我的问题是,调用AMediaCodec_releaseOutputBufferAtTime()直到框架显示在屏幕上时,代码流是什么。我对水流知之甚少。就像这里提到的函数一样,调用带有时间戳的queueBuffer()并在本机窗口上对缓冲区进行排队。然后在下一个VSYNC事件中获取,

当解码输出缓冲区可用并且您希望将其渲染到屏幕上时。使用MediaCodec NDK API,如果已经注册了要渲染的本机窗口,则可以选择调用AMediaCodec_releaseOutputBufferAtTime()

我的问题是,调用AMediaCodec_releaseOutputBufferAtTime()直到框架显示在屏幕上时,代码流是什么。我对水流知之甚少。就像这里提到的函数一样,调用带有时间戳的queueBuffer()并在本机窗口上对缓冲区进行排队。然后在下一个VSYNC事件中获取,并在下一个VSYNC事件中显示。我的理解正确吗

另外,我想知道在ANativeWindow上调用queueBuffer()后会发生什么,直到帧显示在屏幕上