KRTCSDK::KRtcClient类 参考abstract

Public 成员函数

virtual int32_t init (KRtcCallback *callback)=0
 
virtual void login (LoginParam *param)=0
 
virtual void logout ()=0
 
virtual int32_t renewToken (const char *token)=0
 
virtual void joinRoom (JoinRoomParam *param)=0
 
virtual void leaveRoom ()=0
 
virtual void replyCall (bool answerOrHanup, const char *roomId)=0
 
virtual int32_t startLocalPreview (winId displayWindowId)=0
 
virtual void stopLocalPreview (winId displayWindowId)=0
 
virtual int32_t setMirrorMode (winId displayWindowId, bool mirror)=0
 
virtual void publishMainVideoStream (uint8_t mediaIndex)=0
 
virtual void publishDualVideoStream (uint32_t captureScreenId)=0
 
virtual void publishAudioStream ()=0
 
virtual void setMainVideoStreamParam (MainVideoStreamParam *param)=0
 
virtual void setDualVideoStreamParam (DualVideoStreamParam *param)=0
 
virtual void subscribeStream (userId id, SubscribeStreamParam *param, winId displayWindowId)=0
 
virtual void updateStreamLayer (userId id, STREAM_TYPE type, uint8_t mediaIndex, uint8_t layerIndex)=0
 
virtual void unpublishStream (STREAM_TYPE type, uint8_t mediaIndex)=0
 
virtual void unsubscribeStream (userId id, STREAM_TYPE type, uint8_t mediaIndex)=0
 
virtual int32_t setPauseImage (ImageBuffer *image)=0
 
virtual void pausePublishStream (STREAM_TYPE type, uint8_t mediaIndex, bool pauseOrResume)=0
 
virtual void pauseSubscribeStream (userId id, STREAM_TYPE type, uint8_t mediaIndex, bool pauseOrResume)=0
 
virtual void requestKeyFrame (userId id, STREAM_TYPE type, uint8_t mediaIndex)=0
 
virtual void enableAudioLevelIndication (int32_t interval)=0
 
virtual int32_t sendVideoFrameData (STREAM_TYPE type, uint8_t mediaIndex, VideoFrameData *data)=0
 
virtual int32_t sendEncodedVideoData (STREAM_TYPE type, uint8_t mediaIndex, uint8_t layerIndex, EncodedVideoData *data)=0
 
virtual int32_t sendAudioFrameData (AudioFrameData *data)=0
 
virtual void enableLocalAudioCallback (bool enable, uint32_t channelCount, uint32_t sampleRate)=0
 
virtual void enableRemoteAudioCallback (bool enable, uint32_t channelCount, uint32_t sampleRate)=0
 
virtual void enableRemoteMixedAudioCallback (bool enable, uint32_t channelCount, uint32_t sampleRate)=0
 
virtual void setAudioDeviceCapability (AudioDeviceCapability *micCapability)=0
 
virtual void snapshotVideo (userId id, STREAM_TYPE type, uint8_t mediaIndex)=0
 
virtual void setAudioControlPlayoutMute (bool playoutMute)=0
 
virtual void setAudioControlRecordMute (bool recordMute)=0
 

详细描述

KRTCSDK主要接口类

成员函数说明

◆ init()

virtual int32_t KRTCSDK::KRtcClient::init ( KRtcCallback callback)
pure virtual

初始化实例

参数
callback回调函数指针

◆ login()

virtual void KRTCSDK::KRtcClient::login ( LoginParam param)
pure virtual

登录平台

参数
param注册参数

◆ logout()

virtual void KRTCSDK::KRtcClient::logout ( )
pure virtual

登出平台

◆ renewToken()

virtual int32_t KRTCSDK::KRtcClient::renewToken ( const char *  token)
pure virtual

更新 Token

参数
token新的 Token
返回
0:成功 -1:参数错误

◆ joinRoom()

virtual void KRTCSDK::KRtcClient::joinRoom ( JoinRoomParam param)
pure virtual

加入房间

参数
param加入房间参数

◆ leaveRoom()

virtual void KRTCSDK::KRtcClient::leaveRoom ( )
pure virtual

退出房间

◆ replyCall()

virtual void KRTCSDK::KRtcClient::replyCall ( bool  answerOrHanup,
const char *  roomId 
)
pure virtual

响应平台呼叫

参数
answerOrHanuptrue:应答 false:挂断
roomId房间id

◆ startLocalPreview()

virtual int32_t KRTCSDK::KRtcClient::startLocalPreview ( winId  displayWindowId)
pure virtual

开启本地预览

参数
displayWindowId回显窗口id
返回
0:成功 -1:摄像头开启失败

◆ stopLocalPreview()

virtual void KRTCSDK::KRtcClient::stopLocalPreview ( winId  displayWindowId)
pure virtual

停止本地预览

参数
deviceId设备id,nullptr表示currentDevice
displayWindowId回显窗口id

◆ setMirrorMode()

virtual int32_t KRTCSDK::KRtcClient::setMirrorMode ( winId  displayWindowId,
bool  mirror 
)
pure virtual

设置预览图像时的镜像模式

参数
mirrortrue:镜像显示 false:取消镜像显示
返回
0:成功 -1:参数错误

◆ publishMainVideoStream()

virtual void KRTCSDK::KRtcClient::publishMainVideoStream ( uint8_t  mediaIndex)
pure virtual

发布主视频流

参数
mediaIndex发布多条主流时每个视频源的索引号

◆ publishDualVideoStream()

virtual void KRTCSDK::KRtcClient::publishDualVideoStream ( uint32_t  captureScreenId)
pure virtual

发布辅视频流

参数
captureScreenId采集屏幕id
mediaIndex发布多条辅流时每条流的索引号
注解
此接口只支持 Windows 平台

◆ publishAudioStream()

virtual void KRTCSDK::KRtcClient::publishAudioStream ( )
pure virtual

发布音频流

◆ setMainVideoStreamParam()

virtual void KRTCSDK::KRtcClient::setMainVideoStreamParam ( MainVideoStreamParam param)
pure virtual

自定义主视频流参数

参数
param发布主流参数
注解
需要在发布主流之前调用

◆ setDualVideoStreamParam()

virtual void KRTCSDK::KRtcClient::setDualVideoStreamParam ( DualVideoStreamParam param)
pure virtual

自定义辅视频流参数

参数
param发布辅流参数
注解
需要在发布辅流之前调用

◆ subscribeStream()

virtual void KRTCSDK::KRtcClient::subscribeStream ( userId  id,
SubscribeStreamParam param,
winId  displayWindowId 
)
pure virtual

订阅远端用户码流

参数
id远端用户id,订阅合成器时无需此参数
param订阅流参数
displayWindowId本地回显窗口id,不需要则设0

◆ updateStreamLayer()

virtual void KRTCSDK::KRtcClient::updateStreamLayer ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
uint8_t  layerIndex 
)
pure virtual

设置订阅码流的优选分辨率层

注解
仅支持主流订阅
参数
id用户id
type码流类型
mediaIndex码流索引
layerIndex分辨率层

◆ unpublishStream()

virtual void KRTCSDK::KRtcClient::unpublishStream ( STREAM_TYPE  type,
uint8_t  mediaIndex 
)
pure virtual

取消发布码流

参数
type码流类型
mediaIndex码流索引,音频及辅流填0即可

◆ unsubscribeStream()

virtual void KRTCSDK::KRtcClient::unsubscribeStream ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex 
)
pure virtual

取消订阅

参数
id远端用户id
type码流类型
mediaIndex码流索引

◆ setPauseImage()

virtual int32_t KRTCSDK::KRtcClient::setPauseImage ( ImageBuffer image)
pure virtual

设置暂停发布主流时的静态图像(暂停流时远端将显示静态图像,不设置则远端显示黑屏)

参数
image图像缓存(BGRA格式)
返回
0:成功 -1:参数错误

◆ pausePublishStream()

virtual void KRTCSDK::KRtcClient::pausePublishStream ( STREAM_TYPE  type,
uint8_t  mediaIndex,
bool  pauseOrResume 
)
pure virtual

暂停、恢复发布(只影响本地)

参数
type码流类型
mediaIndex码流索引,音频和辅流填0即可
pauseOrResumetrue:暂停 false:恢复

◆ pauseSubscribeStream()

virtual void KRTCSDK::KRtcClient::pauseSubscribeStream ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex,
bool  pauseOrResume 
)
pure virtual

暂停、恢复订阅(将通知平台暂停发送码流)

参数
id远端用户id
type码流类型
mediaIndex码流索引,音频和辅流填0即可
pauseOrResumetrue:暂停 false:恢复

◆ requestKeyFrame()

virtual void KRTCSDK::KRtcClient::requestKeyFrame ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex 
)
pure virtual

手动请求关键帧

参数
id远端用户id
type码流类型
mediaIndex码流索引

◆ enableAudioLevelIndication()

virtual void KRTCSDK::KRtcClient::enableAudioLevelIndication ( int32_t  interval)
pure virtual

设置远端用户音频能量回调

注解
最小间隔为100ms,设0表示关闭回调,建议设置为300ms
参数
interval音频能量回调间隔

◆ sendVideoFrameData()

virtual int32_t KRTCSDK::KRtcClient::sendVideoFrameData ( STREAM_TYPE  type,
uint8_t  mediaIndex,
VideoFrameData data 
)
pure virtual

发送视频帧数据

注解
需要先调用 enableCustomVideoCapture 启用自定义视频采集
参数
type码流类型
mediaIndex码流索引,辅流填0即可
data帧数据(YUV420格式)
返回
0:成功 -1:参数错误

◆ sendEncodedVideoData()

virtual int32_t KRTCSDK::KRtcClient::sendEncodedVideoData ( STREAM_TYPE  type,
uint8_t  mediaIndex,
uint8_t  layerIndex,
EncodedVideoData data 
)
pure virtual

发送编码后的视频数据

注解
需要先调用 enableCustomVideoEncode 启用自定义视频编码
参数
type码流类型
mediaIndex码流索引,音频和辅流填0即可
layerIndex分辨率层
data编码后的视频数据
返回
0:成功 -1:参数错误

◆ sendAudioFrameData()

virtual int32_t KRTCSDK::KRtcClient::sendAudioFrameData ( AudioFrameData data)
pure virtual

发送音频数据

注解
需要先调用 enableCustomAudioCapture 启用自定义音频采集
参数
data音频帧数据(PCM格式)
返回
0:成功 -1:参数错误

◆ enableLocalAudioCallback()

virtual void KRTCSDK::KRtcClient::enableLocalAudioCallback ( bool  enable,
uint32_t  channelCount,
uint32_t  sampleRate 
)
pure virtual

启用或关闭本地采集音频回调(PCM格式)

参数
enabletrue:开启 false:关闭
channelCount通道数
sampleRate音频采样率

◆ enableRemoteAudioCallback()

virtual void KRTCSDK::KRtcClient::enableRemoteAudioCallback ( bool  enable,
uint32_t  channelCount,
uint32_t  sampleRate 
)
pure virtual

启用或关闭远端每一路音频数据回调(PCM格式)

参数
enabletrue:开启 false:关闭
channelCount通道数
sampleRate音频采样率

◆ enableRemoteMixedAudioCallback()

virtual void KRTCSDK::KRtcClient::enableRemoteMixedAudioCallback ( bool  enable,
uint32_t  channelCount,
uint32_t  sampleRate 
)
pure virtual

启用或关闭远端混音后音频数据回调(PCM格式)

参数
enabletrue:开启 false:关闭
channelCount通道数
sampleRate音频采样率

◆ setAudioDeviceCapability()

virtual void KRTCSDK::KRtcClient::setAudioDeviceCapability ( AudioDeviceCapability micCapability)
pure virtual

设置音频设备能力

参数
micCapability麦克风设备能力
注解
仅启用自定义音频采集时需设置

◆ snapshotVideo()

virtual void KRTCSDK::KRtcClient::snapshotVideo ( userId  id,
STREAM_TYPE  type,
uint8_t  mediaIndex 
)
pure virtual

设置截图事件的抽象接口

参数
id用户id,当用户id为""时表示为本地码流截图
type码流类型(主流,辅流,画面合成)
mediaIndex视频源索引号
注解
本地码流截图仅在未开启自定义采集的时候有效

◆ setAudioControlPlayoutMute()

virtual void KRTCSDK::KRtcClient::setAudioControlPlayoutMute ( bool  playoutMute)
pure virtual

设置终端静音状态

参数
playoutMutetrue为静音

◆ setAudioControlRecordMute()

virtual void KRTCSDK::KRtcClient::setAudioControlRecordMute ( bool  recordMute)
pure virtual

设置终端哑音状态

参数
playoutMutetrue为哑音