native_image.h

Overview

The native_image.h file declares the functions for obtaining and using NativeImage.

Library: libnative_image.so

Since: 9

Related module: OH_NativeImage

Summary

Structs

Name Description
OH_OnFrameAvailableListener Defines an OH_NativeImage listener, which is registered through OH_NativeImage_SetOnFrameAvailableListener. The listener triggers a callback when a frame is available.

Types

Name Description
OH_NativeImage Provides the declaration of an OH_NativeImage struct.
OHNativeWindow Provides the capability of accessing the NativeWindow.
OH_OnFrameAvailable Defines the callback function triggered when a frame is available.
OH_OnFrameAvailableListener Defines an OH_NativeImage listener, which is registered through OH_NativeImage_SetOnFrameAvailableListener. The listener triggers a callback when a frame is available.

Functions

Name Description
OH_NativeImage_Create (uint32_t textureId, uint32_t textureTarget) Creates an OH_NativeImage instance to be associated with the OpenGL ES texture ID and target.
OH_NativeImage_AcquireNativeWindow (OH_NativeImage *image) Obtains an OHNativeWindow instance associated with an OH_NativeImage instance. You need to call OH_NativeWindow_DestroyNativeWindow to release the OHNativeWindow instance when it is no longer required.
OH_NativeImage_AttachContext (OH_NativeImage *image, uint32_t textureId) Attaches an OH_NativeImage instance to the current OpenGL ES context.
The OpenGL ES texture will be bound to an GL_TEXTURE_EXTERNAL_OES instance and updated through the OH_NativeImage instance.
OH_NativeImage_DetachContext (OH_NativeImage *image) Detaches an OH_NativeImage instance from the current OpenGL ES context.
OH_NativeImage_UpdateSurfaceImage (OH_NativeImage *image) Updates the OpenGL ES texture associated with the latest frame through an OH_NativeImage instance.
OH_NativeImage_GetTimestamp (OH_NativeImage *image) Obtains the timestamp of the texture image that recently called the OH_NativeImage_UpdateSurfaceImage function.
OH_NativeImage_GetTransformMatrix (OH_NativeImage *image, float matrix[16]) Obtains the transform matrix of the texture image that recently called the OH_NativeImage_UpdateSurfaceImage function.
OH_NativeImage_GetSurfaceId (OH_NativeImage *image, uint64_t *surfaceId) Obtains the surface ID of an OH_NativeImage instance.
OH_NativeImage_SetOnFrameAvailableListener (OH_NativeImage *image, OH_OnFrameAvailableListener listener) Registers a listener to listen for frame availability events.
OH_NativeImage_UnsetOnFrameAvailableListener (OH_NativeImage *image) Deregisters the listener used to listen for frame availability events.
OH_NativeImage_Destroy (OH_NativeImage **image) Destroys an OH_NativeImage instance created by calling OH_NativeImage_Create. After the instance is destroyed, the pointer to the OH_NativeImage instance is assigned NULL.