io.agora.rtc.ExternalVideoFrame类 参考
- Java
更新时间不可用
ExternalVideoFrame 类。
类成员变量说明
alphaBuffer
ByteBuffer io.agora.rtc.ExternalVideoFrame.alphaBuffer采用人像分割算法输出的 Alpha 通道数据。该数据跟视频帧的尺寸一致,每个像素点的取值范围为 [0,255],其中 0 代表背景;255 代表前景(人像)。你可以通过设置该参数,实现将视频背景自渲染为各种效果,例如:透明、纯色、图片、视频等。
alphaMode
int io.agora.rtc.ExternalVideoFrame.alphaMode当视频祯中包含 Alpha 通道数据时,设置 alphaBuffer 和视频祯的相对位置:
- 0: (默认)仅视频祯,即 alphaBuffer 不和视频祯拼接。
- 1: alphaBuffer 位于视频帧的上方。
- 2: alphaBuffer 位于视频帧的下方。
- 3: alphaBuffer 位于视频帧的左侧。
- 4: alphaBuffer 位于视频帧的右侧。
buffer
java.nio.ByteBuffer io.agora.rtc.ExternalVideoFrame.buffer视频 buffer。
colorSpace
ColorSpace io.agora.rtc.ExternalVideoFrame.colorSpace视频帧的色彩空间属性,默认情况下会应用 Full Range 和 BT.709 标准配置。你可以根据自定义采集、自定义渲染的业务需求进行自定义设置,详见 ColorSpaceType。
cropBottom
int io.agora.rtc.ExternalVideoFrame.cropBottom[原始数据相关字段] 指定底边裁剪掉的像素数量。默认为 0。
cropLeft
int io.agora.rtc.ExternalVideoFrame.cropLeft[原始数据相关字段] 指定左边裁剪掉的像素数量。默认为 0。
cropRight
int io.agora.rtc.ExternalVideoFrame.cropRight[原始数据相关字段] 指定右边裁剪掉的像素数量。默认为 0。
cropTop
int io.agora.rtc.ExternalVideoFrame.cropTop[原始数据相关字段] 指定顶边裁剪掉的像素数量。默认为 0。
eglContext
Object io.agora.rtc.ExternalVideoFrame.eglContext该参数仅适用于 Texture 格式的视频数据。
- 当使用 Khronos 定义的 OpenGL 接口 (javax.microedition.khronos.egl.*)时,需要将 eglContext 设置给这个字段。
- 当使用 Android 定义的 OpenGL 接口 (android.opengl.*)时,需要将 eglContext 设置给这个字段。
eglType
int io.agora.rtc.ExternalVideoFrame.eglTypeEGL 类型。该参数仅适用于 Texture 格式的视频数据。
fillAlphaBuffer
int io.agora.rtc.ExternalVideoFrame.fillAlphaBuffer该参数仅适用于 BGRA 或 RGBA 格式的视频数据。设置提取视频祯中的 Alpha 通道数据并自动填入到 alphaBuffer 中。
- true: 提取并填充 Alpha 通道数据。
- false: (默认)不提取填充 Alpha 通道数据。
对于 BGRA 或 RGBA 格式的视频数据,你可以任选一种方式设置 Alpha 通道数据:
- 通过将该参数设置为 true 自动填写。
- 通过 alphaBuffer 参数设置。
format
int io.agora.rtc.ExternalVideoFrame.format像素格式。
height
int io.agora.rtc.ExternalVideoFrame.height传入视频帧的高度。
matrix
float io.agora.rtc.ExternalVideoFrame.matrix该参数仅适用于 Texture 格式的视频数据。为一个输入的 4x4 变换矩阵,典型值为一个单位矩阵。
metadataBuffer
ByteBuffer io.agora.rtc.ExternalVideoFrame.metadataBuffer该参数仅适用于 Texture 格式的视频数据。指 MetaData 的数据缓冲区,默认值为 nil。
rotation
int io.agora.rtc.ExternalVideoFrame.rotation[原始数据相关字段] 指定是否对传入的视频组做顺时针旋转操作,可选值为 0,90,180,270。默认为 0。
stride
int io.agora.rtc.ExternalVideoFrame.stride传入视频帧的行间距(像素)。对于 Texture,该值指的是 Texture 的宽度。
textureId
int io.agora.rtc.ExternalVideoFrame.textureId该帧的 Texture ID。该参数仅适用于 Texture 格式的视频数据。
timestamp
long io.agora.rtc.ExternalVideoFrame.timestamp传入的视频帧的时间戳(毫秒)。不正确的时间戳会导致丢帧或者音视频不同步。
type
int io.agora.rtc.ExternalVideoFrame.type视频帧的数据类型。
- 1:视频帧类型为原始数据。
- 2:与 1 相同。
- 3:视频帧类型为 Texture。
该类的文档由以下文件生成:
- ExternalVideoFrame.java