关于GL_TEXTURE_2D和GL_TEXTURE_EXTERNAL_OES纹理类型的选择问题

读取相册视频->解封装->解码->OpenGL ES处理,其中解码后的数据通过NativeImage中对应的生产者端NativeWindow来接收,NativeImage和OpenGL ES纹理绑定,发现解码输出的内容并没有更新到OpenGL ES纹理上去,没有获取到OpenGL ES纹理数据。

可能原因

创建OH_NativeImage并关联OpenGL ES的时候,纹理目标选用的是GL_TEXTURE_2D。但实际上通过NativeImage关联的OpenGL ES纹理会绑定到GL_TEXTURE_EXTERNAL_OES目标上。

HarmonyOS
2024-09-18 11:59:10
浏览
已于2024-9-18 11:59:56修改
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

创建OH_NativeImage时关联的OpenGL纹理目标选用GL_TEXTURE_EXTERNAL_OES。

GL_TEXTURE_2D和GL_TEXTURE_EXTERNAL_OES使用场景区别:

  • GL_TEXTURE_2D纹理类型:适用于大多数场景,可以用于展示静态贴图、渲染2D图形和进行图像处理等操作。
  • GL_TEXTURE_EXTERNAL_OS纹理类型:专门用于对外部图像或实时视频流进行处理,可以直接从BufferQueue中接收的数据渲染纹理多边形,从而提高更高效的视频处理和渲染性能。例如:从Camera或外部视频源读取数据帧进行处理时,就要选用该纹理类型。
分享
微博
QQ
微信
回复
2024-09-18 16:03:08
相关问题
如何选择PolarDB迁移类型迁移对象?
2983浏览 • 1回复 待解决
关于HAP包entryfeature类型
10858浏览 • 1回复 待解决
关于routerNavigation要选择哪个使用
472浏览 • 2回复 待解决
HarmonyOS Path2DaddPath方法报错
125浏览 • 1回复 待解决
ArkGraphics 2D有什么优势?
250浏览 • 1回复 待解决
使用Drawing进行2d图像绘制
786浏览 • 1回复 待解决
XComponent、NativeDrawing实现2D图形绘制
908浏览 • 1回复 待解决
ArkGraphics 2D都有哪些使用场景?
381浏览 • 1回复 待解决
关于Mysql主从读写分离问题
2202浏览 • 1回复 待解决
HarmonyOS Sm2DES加解密问题
271浏览 • 1回复 待解决
关于导入图片使用权限问题
1597浏览 • 1回复 待解决
关于Grid容器WaterFlow使用上问题
763浏览 • 1回复 待解决
关于clogdata问题有知道吗?
3085浏览 • 1回复 待解决
HarmonyOS Record HashMap map类型选择
594浏览 • 2回复 待解决