[Mesa-dev] Query GL extensions (“GL_OES_EGL_image_external” ) RE: Create texture2D from NV12

Zong, Wei wei.zong at intel.com
Tue Apr 17 10:30:21 UTC 2018


Hi Marek,

Thanks for your help. Now I can use GL extension “GL_OES_EGL_image_external” to load and render NV12 image, it works well on my platform (Broxton).

To ensure using this extension correctly on any platform, I checked for supported OpenGL extensions by glGetString() function, and printed out the list of supported extensions. Unfortunately, I did not find “GL_OES_EGL_image_external” in the list.

GL EXTENSIONS:
GL_EXT_debug_marker GL_ANDROID_extension_pack_es31a GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_APPLE_texture_max_level GL_EXT_blend_func_extended GL_EXT_blend_minmax GL_EXT_buffer_storage GL_EXT_clip_cull_distance GL_EXT_color_buffer_float GL_EXT_compressed_ETC1_RGB8_sub_texture GL_EXT_copy_image GL_EXT_discard_framebuffer GL_EXT_disjoint_timer_query GL_EXT_draw_buffers GL_EXT_draw_buffers_indexed GL_EXT_draw_elements_base_vertex GL_EXT_frag_depth GL_EXT_geometry_point_size GL_EXT_geometry_shader GL_EXT_gpu_shader5 GL_EXT_map_buffer_range GL_EXT_multi_draw_arrays GL_EXT_occlusion_query_boolean GL_EXT_polygon_offset_clamp GL_EXT_primitive_bounding_box GL_EXT_read_format_bgra GL_EXT_robustness      GL_EXT_separate_shader_objects GL_EXT_shader_framebuffer_fetch GL_EXT_shader_framebuffer_fetch_non_coherent GL_EXT_shader_integer_mix GL_EXT_shader_io_blocks GL_EXT_shader_ samples_identical GL_EXT_tessellation_point_size GL_EXT_tessellation_shader GL_EXT_texture_border_clamp

I also printed out the GL information of my platform I’m using:
GL_VENDOR: Intel Open Source Technology Center
GL_RENDERER: Mesa DRI Intel(R) HD Graphics 505 (Broxton)
GL_VERSION: OpenGL ES 3.2 Mesa 18.1.0-devel (git-d63719023b)
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.20

Could you please give me a hint if I made something wrong to query the extension name string “GL_OES_EGL_image_external” from GL?


Thanks,
Zong Wei

From: Marek Olšák [mailto:maraeo at gmail.com]
Sent: Tuesday, March 20, 2018 9:42 AM
To: Zong, Wei <wei.zong at intel.com>
Cc: mesa-dev at lists.freedesktop.org
Subject: Re: [Mesa-dev] Create texture2D from NV12

The only way is to use GL_OES_EGL_image_external to load an NV12 image. kmscube does that.
Marek

On Fri, Mar 16, 2018 at 4:10 AM, Zong, Wei <wei.zong at intel.com<mailto:wei.zong at intel.com>> wrote:
Hello,

May I ask a question? I got a NV12 image buffer and I want to render it with OpenGL. I know a method to do this is to bind Y/UV planes as two separate textures, then perform YUV to RGB conversion in fragment shader.

But I want to know if Mesa provide APIs to create and bind a texture 2D image with NV12 format directly?

Thanks,
Zong Wei



_______________________________________________
mesa-dev mailing list
mesa-dev at lists.freedesktop.org<mailto:mesa-dev at lists.freedesktop.org>
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180417/e3d05569/attachment.html>


More information about the mesa-dev mailing list