EGL_EXT_buffer_age

Supported Hardware

Series6, Series6XE, Series6XT

Valid APIs

EGL 1.4

Description

This extension lets applications query the age of the back buffer contents for an EGL surface as the number of frames elapsed since the contents were most recently defined. The back buffer can either be reported as invalid (has an age of 0) or it may be reported to contain the contents from n frames prior to the current frame.

Once the application has queried the buffer age, the age of contents remains valid until the end of the frame for all pixels that continue to pass the pixel ownership test.

For many use-cases this extension can provide an efficient alternative to using the EGL_BUFFER_PRESERVED swap behaviour. The EGL_BUFFER_PRESERVED swap behaviour adds a direct dependency for any frame n on frame n - 1 which can affect the pipelining of multiple frames but also implies a costly copy-back of data to initialize the back-buffer at the start of each frame.

Note

Requires EGL 1.4

This extension is written against the wording of the EGL 1.4 Specification.

Registry Link

https://www.khronos.org/registry/egl/extensions/EXT/EGL_EXT_buffer_age.txt

Example

EGLint iBufferAge; 
eglQuerySurface(eglDisplay, eglSurface, EGL_BUFFER_AGE_EXT, &iBufferAge);