The definition of the ExternalVideoFrame struct.
◆ EGL_CONTEXT_TYPE
The EGL context type.
Enumerator |
---|
EGL_CONTEXT10 | 0: When using the OpenGL interface (javax.microedition.khronos.egl.*) defined by Khronos
|
EGL_CONTEXT14 | 0: When using the OpenGL interface (android.opengl.*) defined by Android
|
◆ VIDEO_BUFFER_TYPE
Video buffer types.
Enumerator |
---|
VIDEO_BUFFER_RAW_DATA | 1: Raw data.
|
VIDEO_BUFFER_ARRAY | 2: The same as VIDEO_BUFFER_RAW_DATA.
|
VIDEO_BUFFER_TEXTURE | 3: The video buffer in the format of texture.
|
◆ ExternalVideoFrame()
◆ type
◆ format
◆ buffer
◆ stride
The line spacing of the incoming video frame (px). For texture, it is the width of the texture.
◆ height
The height of the incoming video frame.
◆ cropLeft
[Raw data related parameter] The number of pixels trimmed from the left. The default value is 0.
◆ cropTop
[Raw data related parameter] The number of pixels trimmed from the top. The default value is 0.
◆ cropRight
[Raw data related parameter] The number of pixels trimmed from the right. The default value is 0.
◆ cropBottom
[Raw data related parameter] The number of pixels trimmed from the bottom. The default value is 0.
◆ rotation
[Raw data related parameter] The clockwise rotation information of the video frame. You can set the rotation angle as 0, 90, 180, or 270. The default value is 0.
◆ timestamp
The timestamp (ms) of the incoming video frame. An incorrect timestamp results in a frame loss or unsynchronized audio and video.
Please refer to getAgoraCurrentMonotonicTimeInMs or getCurrentMonotonicTimeInMs to determine how to fill this filed.
◆ eglContext
[Texture-related parameter] When using the OpenGL interface (javax.microedition.khronos.egl.*) defined by Khronos, set EGLContext to this field. When using the OpenGL interface (android.opengl.*) defined by Android, set EGLContext to this field.
◆ eglType
[Texture related parameter] Texture ID used by the video frame.
◆ textureId
[Texture related parameter] Incoming 4 × 4 transformational matrix. The typical value is a unit matrix.
◆ fenceObject
[Texture related parameter] The fence object related to the textureId parameter, indicating the synchronization status of the video data in Texture format. The default value is 0
◆ matrix
[Texture related parameter] Incoming 4 × 4 transformational matrix. The typical value is a unit matrix.
◆ metadataBuffer
[Texture related parameter] The MetaData buffer. The default value is NULL
◆ metadataSize
[Texture related parameter] The MetaData size. The default value is 0
◆ alphaBuffer
Indicates the alpha channel of current frame, which is consistent with the dimension of the video frame. The value range of each pixel is [0,255], where 0 represents the background; 255 represents the foreground. The default value is NULL.
◆ fillAlphaBuffer
[For bgra or rgba only] Extract alphaBuffer from bgra or rgba data. Set it true if you do not explicitly specify the alphabuffer. The default value is false
◆ alphaStitchMode
The relative position between alphabuffer and the frame. 0: Normal frame; 1: Alphabuffer is above the frame; 2: Alphabuffer is below the frame; 3: Alphabuffer is on the left of frame; 4: Alphabuffer is on the right of frame; The default value is 0.
◆ d3d11Texture2d
[For Windows only] The pointer of ID3D11Texture2D used by the video frame.
◆ textureSliceIndex
[For Windows only] The index of ID3D11Texture2D array used by the video frame.
◆ hdr10MetadataInfo
metadata info used for hdr video data
◆ colorSpace