Public 成员函数

boolean onInitialize (IVideoFrameConsumer consumer)
 
boolean onStart ()
 
void onStop ()
 
void onDispose ()
 
int getBufferType ()
 
int getCaptureType ()
 
int getContentHint ()
 

详细描述

IVideoSource 类。用于调用 setVideoSource 设置自定义的视频源。

成员函数说明

◆ onInitialize()

boolean io.agora.rtc.mediaio.IVideoSource.onInitialize ( IVideoFrameConsumer  consumer)

初始化视频源回调。

SDK 触发该回调提醒你初始化自定义视频源。你可以在这个回调中做一些准备工作,例如打开摄像头,并通过返回值告知 SDK 自定义的视频源是否已经准备完毕。

自定义视频源时,你需要通过 getBufferType 来指定一种 Buffer 类型,并在自定义视频源中只使用与其对应的方法来传递视频帧数据。

参数
consumerSDK 传递给你的一个 IVideoFrameConsumer 对象。你需要保存该对象,并在视频源启动后,通过这个对象把视频帧输入给 SDK。
返回
  • true: 自定义的视频源已经完成了初始化工作。
  • false: 自定义的视频源设备没准备好或者初始化失败,SDK 会停下来并上报错误。

◆ onStart()

boolean io.agora.rtc.mediaio.IVideoSource.onStart ( )

启动视频源回调。

SDK 触发该回调提醒你启动视频帧采集。启动成功后,SDK 会打开 IVideoFrameConsumer 的开关,接收你采集的视频帧。你需要通过返回值告知 SDK 自定义的视频源是否已经成功启动。

返回
  • true: 自定义的视频源启动成功。
  • false: 自定义的视频源启动失败,SDK 会停下来并上报错误。

◆ onStop()

void io.agora.rtc.mediaio.IVideoSource.onStop ( )

停止视频源回调。 SDK 触发该回调提醒你停止视频帧采集。该回调通知你 IVideoFrameConsumer 的开关的即将关闭,SDK 不会接收你之后采集的视频帧。

◆ onDispose()

void io.agora.rtc.mediaio.IVideoSource.onDispose ( )

释放视频源回调。

SDK 触发该回调提醒你关闭视频源设备。该回调通知你 SDK 即将销毁 IVideoFrameConsumer 对象。收到该回调后,请你确保不再使用 IVideoFrameConsumer

◆ getBufferType()

int io.agora.rtc.mediaio.IVideoSource.getBufferType ( )

获取 Buffer 类型。

SDK 在初始化的时候,会调用这个方法来查询该视频源所使用的 Buffer 类型。开发者必须指定且只能指定一种 Buffer 类型并通过返回值告诉 SDK。

返回
Buffer 类型

◆ getCaptureType()

int io.agora.rtc.mediaio.IVideoSource.getCaptureType ( )

指定自采集的视频源类型。

自从
3.1.0

在你初始化自定义视频源之前,SDK 会触发该回调查询自采集的视频源类型。你必须在返回值中指定一种视频源类型来告知 SDK。SDK 会在接收到视频帧后根据视频源的类型对启用相应的视频处理策略。

返回
自采集视频源类型

◆ getContentHint()

int io.agora.rtc.mediaio.IVideoSource.getContentHint ( )

指定自采集屏幕共享视频的内容类型。

自从
3.1.0

如果指定自定义视频源为屏幕共享的视频,那么在你初始化自定义视频源之前,SDK 会触发该回调查询屏幕共享视频源的内容类型。你必须在返回值中指定一种内容类型来告知 SDK。SDK 会在接收到视频帧后根据屏幕共享视频的内容类型启用相应的视频处理策略。

返回
内容类型