1Name 2 3 ANGLE_timestamp_surface_attribute 4 5Name Strings 6 7 EGL_ANGLE_timestamp_surface_attribute 8 9Contributors 10 11 Mohan Maiya 12 Ian Elliot 13 14Contacts 15 16 Mohan Maiya, Samsung (m.maiya 'at' samsung 'dot' com) 17 18Notice 19 20 Copyright (c) 2022 The Khronos Group Inc. Copyright terms at 21 http://www.khronos.org/registry/speccopyright.html 22 23Status 24 25 Draft. 26 27Version 28 29 Version 1, July 12, 2022 30 31Number 32 33 EGL Extension ### 34 35Dependencies 36 37 Requires support for EGL_ANDROID_get_frame_timestamps extension. 38 Refer to EGL_ANDROID_get_frame_timestamps specification for other 39 dependencies. 40 41Overview 42 43 On Android most of the functionality required by EGL_ANDROID_get_frame_timestamps 44 is handled by a wrapper outside of the EGL driver. However it is necessary 45 to be aware of EGL_TIMESTAMPS_ANDROID state on some drivers 46 (like ANGLE, which layers GLES APIs over Vulkan, which needs this information 47 to setup Vulkan swapchains appropriately). 48 49 This extension allows ANGLE's EGL implementation to rely on the Android EGL 50 loader to support and implement the EGL_ANDROID_get_frame_timestamps extension, 51 with the exception that ANGLE's EGL implementation will support caching 52 EGL_TIMESTAMPS_ANDROID state. 53 54 For details about EGL_TIMESTAMPS_ANDROID and other timestamp related terminology 55 please refer to the EGL_ANDROID_get_frame_timestamps specification. 56 57 58New Types 59 60 None. 61 62New Procedures and Functions 63 64 None. 65 66New Tokens 67 68 None. 69 70For clarity, restating the section of EGL_ANDROID_get_frame_timestamps specification 71that will be supported by this extension: 72 73Add to the list of supported tokens for eglSurfaceAttrib in section 3.5.6 74"Surface Attributes", page 43: 75 76 If attribute is EGL_TIMESTAMPS_ANDROID, then values specifies whether to 77 enable/disable timestamp collection for this surface. A value of EGL_TRUE 78 enables timestamp collection, while a value of EGL_FALSE disables it. The 79 initial value is false. If surface is not a window surface this has no 80 effect. 81 82Issues 83 84 None. 85 86Revision History 87 88 #2 - (August 23, 2022) Mohan Maiya 89 Added language to clarify that the extension will require support, 90 from an external module, of the EGL_ANDROID_get_frame_timestamps 91 extension for the most part with the exception of providing support 92 for caching EGL_TIMESTAMPS_ANDROID state. 93 94 #1 - (July 12, 2022) Mohan Maiya 95 Original draft 96