publishvideo
-
简要描述
发布本地视频 需在进入房间成功后,调用生效。 用户发布视频成功后,收到成功的回调函数:on_roomuservideostatus
-
函数原型
重载的函数:
int publishvideo(struct roomclient* client)
int publishvideobyid(struct roomclient* client, const char* deviceId)
有多个设备的时候,需要调用publishvideobyid
传入设备的ID来发布使用的设备的视频 设备的ID可以调用getvideo来获取所有的摄像头设备的ID和名称 -
使用示例
1 2 3 4 5 6 7
int camCount = getvideocount(); for (int i = 0; i < camCount; i++) { char cameraname[], deviceid[]; getvideo(client, i, cameraname, deviceid); publishvideobyid(client, deviceid); }
unpublishvideo
-
简要描述
需在进入房间成功后,调用生效。 用户停止发布视频成功后,收到成功的回调函数:on_roomuservideostatus
-
函数原型
重载的函数:
unpublishvideo(struct roomclient* client)
unpublishvideobyid(struct roomclient* client, const char* deviceId)
有多个设备的时候,需要调用重载函数传入设备的ID来停止发布使用的设备的视频 当前使用的设备ID可以调用getvideo来获取 -
使用示例
1 2 3 4 5
TKVideo *video = 0; m_sdk->getInterface(TK_IID_VIDEO_DEVICE, (void**)(&video)); std::string currentDeviceID; video->getVideo(currentDeviceID); m_sdk->publishVideo(currentDeviceID);
publishaudio
-
简要描述
发布本地音频 需在进入房间成功后,调用生效。 用户发布音频成功后,收到成功的回调函数:on_roomuseraudiostatus()
-
函数原型
int publishaudio(struct roomclient* client)
unpublishaudio
-
简要描述
停止发布本地音频 需在进入房间成功后,调用生效。 用户停止发布音频成功后,收到成功的回调函数:on_roomuseraudiostatus()
-
函数原型
int unpublishaudio(struct roomclient* client)
playvideo
-
简要描述
播放用户视频 需在调用
init
后,调用生效。 对同一个用户ID,可以调用多次此函数。多次调用: 1、当对传入相同peerID,相同view时,函数不执行任何操作,直接返回成功; 2、当对传入相同peerID,不同view时,会在新的view上渲染视频,之前播放视频的view将停止渲染视频; 3、须都在主线程调用。 调用此接口后,会有播放视频的相关回调通知: 1、收到第一帧数据的回调 on_firstvideoframe 2、播放视频的过程中,出现视频状态的回调 on_videostatechanged
-
函数原型
int playvideo(struct roomclient* client, const char* peerID, void* windowid);
本地多流无效int playVideo(struct roomclient* client, void* windowid, const char* peerID, const char* sourceId)
参数 | 说明 |
---|---|
windowid | windows下的窗口句柄 |
peerID | 用户ID |
sourceId | 多流情况下的设备ID |
unplayvideo
-
简要描述
停止播放用户视频 须在主线程调用。
-
函数原型
int unplayvideo(struct roomclient* client, const char* peerID)
本地多流无效int unplayVideo(struct roomclient* client, const char* peerID, const char* sourceId)
参数 | 说明 |
---|---|
peerID | 用户ID |
sourceId | 设备ID(多流模式下) |
- 使用示例
1 2 3 4
//停止播放自己的 char currentDeviceID[]; getvideoex(currentDeviceID); unplayVideo(client, peerid, currentDeviceID);
playaudio
-
简要描述
播放用户音频 无需播放自己的音频,若playaudio传入参数是自己的ID,函数会直接return。
调用此接口后,会有播放音频的相关回调通知: 1、收到第一帧数据的回调 on_firstaudioframe 2、播放视频的过程中,出现音频中断的回调 on_audiostatechanged 3、播放用户音频时,音量大小变化的回调(远端音频的音量): on_roomremoteaudiovolume
-
函数原型
int playaudio(struct roomclient* client, const char* peerID)
返回值:return 0 success 参数 peerID: 用户ID
unPlayAudio
-
简要描述
停止播放用户音频
-
函数原型
int unplayAudio(tk_uid peerID)
返回值:return 0 success 参数peerID :用户ID
✌