Talk SDK for win32 开发指引
概述
游密视频通话SDK(Talk SDK)为开发者提供完整的音视频社交通话服务,开发者无需关注视频通话复杂的内部工作流程,只需调用Talk SDK提供的接口,即可快速拥有多人实时视频通话的能力。
四步集成Talk SDK
第一步 注册账号
在游密官网注册游密账号。
第二步 添加游戏,获取Appkey
在控制台添加游戏,获得接入需要的Appkey、Appsecret。
第三步 下载Talk SDK包体
第四步 开发环境配置
单频道自由通话基本流程
先注册回调,初始化返回成功后等待初始化成功事件,再加入频道;收到进房成功后设置麦克风、扬声器及音量增益。同步返回失败或收到失败事件时停止后续步骤。退出时先离房,等待完成后反初始化。
下面的示例代码演示单频道自由通话。替换 AppKey、AppSecret、用户和频道 ID,并完成本平台 SDK 导入及权限配置;回调对象应保持存活。
#include "IYouMeVoiceEngine.h"
class TalkQuickStart : public IYouMeEventCallback {
public:
YouMeErrorCode Start() {
return IYouMeVoiceEngine::getInstance()->init(this, "YOUR_APP_KEY", "YOUR_APP_SECRET",
RTC_DEFAULT_SERVER, "");
}
void onEvent(YouMeEvent event, YouMeErrorCode error,
const char *channel, const char *param) override {
auto *api = IYouMeVoiceEngine::getInstance();
if (event == YOUME_EVENT_INIT_OK) {
YouMeErrorCode ret = api->joinChannel("user1", "team1", YOUME_USER_TALKER_FREE, true, false);
if (ret != YOUME_SUCCESS) { /* 处理同步进房错误。 */ }
} else if (event == YOUME_EVENT_JOIN_OK) {
api->setMicrophoneMute(false);
api->setSpeakerMute(false);
api->setVolume(70);
} else if (event == YOUME_EVENT_INIT_FAILED || event == YOUME_EVENT_JOIN_FAILED) {
// 处理 error 后停止后续流程。
}
}
};
// 在应用生命周期内保存该回调对象。
// TalkQuickStart talk; YouMeErrorCode ret = talk.Start(); 检查 ret 后等待回调。
// 离开时调用 leaveChannelAll,等待离房完成后再 unInit。