ZegoLiveRoom
Public Member Functions | List of all members
AVE::VideoCaptureTextureCallback Class Referenceabstract

#include <video_capture.h>

Public Member Functions

virtual void OnIncomingCapturedData (int texture_id, int width, int height, double reference_time_ms)=0
 通知SDK采集到视频数据,SDK会同步绘制到FBO,切换到内部线程进行编码,如果缓冲队列不够,SDK会自动丢帧 More...
 
virtual void SetFillMode (int mode)=0
 当时图像宽高和编码宽高的宽高比不一致时使用的填充模式,默认裁剪 More...
 
virtual void SetFlipMode (int mode)=0
 SDK默认垂直翻转,如果不需要,设置0,前处理的最后一步 More...
 
virtual void SetTransformMatrix (float matrix[16])=0
 transform可以包含旋转/翻转/缩放,SDK会先执行transform,再执行其他操作 More...
 
virtual void SetRotation (int rotation)=0
 用于修正图像的角度,rotation在transform后执行,注意不要重复计算rotation More...
 
virtual int SetROI (ROIRect *rects, int count)=0
 设置编码器感兴趣的区域,优化图像主观体验 More...
 
virtual void ResetTextureContext ()=0
 通知SDK纹理相关的上下文发生变化,用来清除缓存的上下文状态,比如EglContext,必须和OnIncomingCapturedData在同一个线程调用,不保证线程安全 More...
 

Member Function Documentation

◆ OnIncomingCapturedData()

virtual void AVE::VideoCaptureTextureCallback::OnIncomingCapturedData ( int  texture_id,
int  width,
int  height,
double  reference_time_ms 
)
pure virtual

通知SDK采集到视频数据,SDK会同步绘制到FBO,切换到内部线程进行编码,如果缓冲队列不够,SDK会自动丢帧

Parameters
texture_idGL_TEXTURE_2D/GL_TEXTURE_EXTERNAL_OES的纹理
width纹理宽,如果设置transform matrix,必须为执行transform之后的宽
height纹理高,如果设置transform matrix,必须为执行transform之后的高
reference_time_ms采集到该帧的时间戳,单位毫秒,不能超过2^52, 用于音画同步,如果采集实现是摄像头,最好使用系统采集回调的原始时间戳,如果不是,最好是生成该帧的UTC时间戳

◆ ResetTextureContext()

virtual void AVE::VideoCaptureTextureCallback::ResetTextureContext ( )
pure virtual

通知SDK纹理相关的上下文发生变化,用来清除缓存的上下文状态,比如EglContext,必须和OnIncomingCapturedData在同一个线程调用,不保证线程安全

◆ SetFillMode()

virtual void AVE::VideoCaptureTextureCallback::SetFillMode ( int  mode)
pure virtual

当时图像宽高和编码宽高的宽高比不一致时使用的填充模式,默认裁剪

Parameters
mode填充模式,参考VideoFillMode

◆ SetFlipMode()

virtual void AVE::VideoCaptureTextureCallback::SetFlipMode ( int  mode)
pure virtual

SDK默认垂直翻转,如果不需要,设置0,前处理的最后一步

Parameters
mode翻转模式,参考VideoFlipMode

◆ SetROI()

virtual int AVE::VideoCaptureTextureCallback::SetROI ( ROIRect rects,
int  count 
)
pure virtual

设置编码器感兴趣的区域,优化图像主观体验

Parameters
rects区域数组,设置NULL清空配置
count区域个数,最大支持6个,设置0清空配置

◆ SetRotation()

virtual void AVE::VideoCaptureTextureCallback::SetRotation ( int  rotation)
pure virtual

用于修正图像的角度,rotation在transform后执行,注意不要重复计算rotation

Parameters
rotation,顺时针角度

◆ SetTransformMatrix()

virtual void AVE::VideoCaptureTextureCallback::SetTransformMatrix ( float  matrix[16])
pure virtual

transform可以包含旋转/翻转/缩放,SDK会先执行transform,再执行其他操作

Parameters
matrix,4x4的变换矩阵

The documentation for this class was generated from the following file: