Reuse texture cache in ios_external_texture_gl (#11524)
In current implementation, external texture data flow is a producer-consumer model. When painting external texture, it always asks registered external texture object to produce new CVPixelBuffer, then transforms it to texture. `MarkNewFrameAvailable` function is ignored. This commit changes the dataflow. Now ios_external_texture_gl caches previous opengl texture, if no new frame are available, it do not `copyPixelBuffer` method, just uses cached opengl texture to draw. This is a re-land of flutter/engine#9806, which was previously reverted in flutter/engine#11522.
Showing
想要评论请 注册 或 登录