Merge "Initial draft of EGL_ANDROID_image_native_buffer"
This commit is contained in:
commit
530c0cf76c
107
opengl/specs/EGL_ANDROID_image_native_buffer.txt
Normal file
107
opengl/specs/EGL_ANDROID_image_native_buffer.txt
Normal file
@ -0,0 +1,107 @@
|
||||
Name
|
||||
|
||||
ANDROID_image_native_buffer
|
||||
|
||||
Name Strings
|
||||
|
||||
EGL_ANDROID_image_native_buffer
|
||||
|
||||
Contributors
|
||||
|
||||
Jamie Gennis
|
||||
Jesse Hall
|
||||
|
||||
Contact
|
||||
|
||||
Jesse Hall, Google Inc. (jessehall 'at' google.com)
|
||||
|
||||
Status
|
||||
|
||||
Draft.
|
||||
|
||||
Version
|
||||
|
||||
Version 1, November 28, 2012
|
||||
|
||||
Number
|
||||
|
||||
EGL Extension #XXX
|
||||
|
||||
Dependencies
|
||||
|
||||
EGL 1.2 is required.
|
||||
|
||||
EGL_KHR_image_base is required.
|
||||
|
||||
This extension is written against the wording of the EGL 1.2
|
||||
Specification.
|
||||
|
||||
Overview
|
||||
|
||||
This extension enables using an Android window buffer (struct
|
||||
ANativeWindowBuffer) as an EGLImage source.
|
||||
|
||||
New Types
|
||||
|
||||
None.
|
||||
|
||||
New Procedures and Functions
|
||||
|
||||
None.
|
||||
|
||||
New Tokens
|
||||
|
||||
Accepted by the <target> parameter of eglCreateImageKHR:
|
||||
|
||||
EGL_NATIVE_BUFFER_ANDROID 0x3140
|
||||
|
||||
Changes to Chapter 3 of the EGL 1.2 Specification (EGL Functions and Errors)
|
||||
|
||||
Add to section 2.5.1 "EGLImage Specification" (as defined by the
|
||||
EGL_KHR_image_base specification), in the description of
|
||||
eglCreateImageKHR:
|
||||
|
||||
"Values accepted for <target> are listed in Table aaa, below.
|
||||
|
||||
+----------------------------+-----------------------------------------+
|
||||
| <target> | Notes |
|
||||
+----------------------------+-----------------------------------------+
|
||||
| EGL_NATIVE_BUFFER_ANDROID | Used for ANativeWindowBuffer objects |
|
||||
+----------------------------+-----------------------------------------+
|
||||
Table aaa. Legal values for eglCreateImageKHR <target> parameter
|
||||
|
||||
...
|
||||
|
||||
If <target> is EGL_NATIVE_BUFFER_ANDROID, <dpy> must be a valid display,
|
||||
<ctx> must be EGL_NO_CONTEXT, <buffer> must be a pointer to a valid
|
||||
ANativeWindowBuffer object (cast into the type EGLClientBuffer), and
|
||||
attributes other than EGL_IMAGE_PRESERVED_KHR are ignored."
|
||||
|
||||
Add to the list of error conditions for eglCreateImageKHR:
|
||||
|
||||
"* If <target> is EGL_NATIVE_BUFFER_ANDROID and <buffer> is not a
|
||||
pointer to a valid ANativeWindowBuffer, the error EGL_BAD_PARAMETER
|
||||
is generated.
|
||||
|
||||
* If <target> is EGL_NATIVE_BUFFER_ANDROID and <ctx> is not
|
||||
EGL_NO_CONTEXT, the error EGL_BAD_CONTEXT is generated.
|
||||
|
||||
* If <target> is EGL_NATIVE_BUFFER_ANDROID and <buffer> was created
|
||||
with properties (format, usage, dimensions, etc.) not supported by
|
||||
the EGL implementation, the error EGL_BAD_PARAMETER is generated."
|
||||
|
||||
Issues
|
||||
|
||||
1. Should this extension define what combinations of ANativeWindowBuffer
|
||||
properties implementations are required to support?
|
||||
|
||||
RESOLVED: No.
|
||||
|
||||
The requirements have evolved over time and will continue to change with
|
||||
future Android releases. The minimum requirements for a given Android
|
||||
version should be documented by that version.
|
||||
|
||||
Revision History
|
||||
|
||||
#1 (Jesse Hall, November 28, 2012)
|
||||
- Initial draft.
|
Loading…
Reference in New Issue
Block a user