tencent cloud

游戏多媒体引擎

产品动态
产品介绍
产品概述
优势特性
产品功能
应用场景
安全合规认证
新手指引
产品计费
免费额度
购买指南
SDK 下载指引
产品功能体验
基本功能演示
场景化 Demo 体验
控制台指南
用量查看
服务开通
快速入门
快速接入 SDK
快速接入 Sample Project
基础功能开发指南
鉴权密钥
实时语音角色设置
音质选择
进阶功能开发指南
服务端录制
万人范围语音
3D 音效
音效与伴奏
网络音频流转发路由
自定义消息通道
如何应对公司防火墙限制
语言参数参考列表
房间管理功能
客户端 API
Unity SDK
Unreal Engine SDK
Cocos2D SDK
Windows SDK
iOS SDK
Android SDK
macOS SDK
H5SDK
Electron SDK
Flutter SDK
SDK 版本升级指引
错误码
编译工具链文档
服务端 API
History
Introduction
API Category
Usage APIs
Recording APIs
Making API Requests
Voice Chat APIs
Application APIs
Data Types
Error Codes
常见问题
产品功能问题
问题解决指南
计费相关问题
Sample Project 使用问题
一般性问题
鉴权相关问题
实时语音进房失败问题
实时语音无声及音频问题
网络问题
语音转文本问题
工程导出问题
服务协议
服务等级协议
联系我们
词汇表
GME 政策
数据处理和安全协议
隐私协议

接口文档

PDF
聚焦模式
字号
最后更新时间: 2026-01-27 16:47:02
注意:
H5 SDK 仅支持 GME 部分产品能力,支持的接口以此文档为准。请您阅读此文档并评估 H5 SDK 是否适用于您的业务场景。
接口
接口含义
Init
初始化接口
SetTMGDelegate
设置委托
EnterRoom
进入语音房间
EnableMic
开启或关闭采集设备
EnableSpeaker
开启或关闭播放设备
SetMicVolume
设置麦克风音量
ExitRoom
退出语音房间
说明:
GME 的接口调用成功后返回值为 QAVError.OK,数值为0。
GME 加入房间需要鉴权,请参考文档关于鉴权部分内容。
设备的操作要在进房成功之后。
Chrome74 以后严格限制 navigator.mediaDevices 在 HTTPS 环境下访问,所以请使用 HTTPS 环境。

接入 JQ

使用 Demo 需要接入 JQ。
<!--Step 2: 添加Audio容器-->
<!--容器,用来承接Audio标签, 请务必留意,不能忽略-->
<div id="gme-audio-wrap"></div>

初始化相关接口

未初始化前,SDK 处于未初始化阶段,需要初始化鉴权后,通过初始化 SDK,才可以进房。

初始化 SDK

参数获取请参考 接入指引
此接口需要来自腾讯云控制台的 SDKAppID 号码作为参数,再加上 openId,这个 openId 是唯一标识一个用户,规则由 App 开发者自行制定,App 内不重复即可(目前只支持 INT64)。
注意:
初始化 SDK 之后才可以进房。

函数原型

WebGMEAPI.fn.Init = function (document, SdkAppId, openId) {...}
参数
意义
document
HTML DOM Document 对象
SdkAppId
来自腾讯云控制台的 SdkAppId 号码
openId
用户的账号,由开发者定义,必须大于10000,用于标识用户

示例代码

const cSdkAppId = () => document.getElementById("input-SdkAppId").value;
const cOpenID = () => document.getElementById("input-OpenID").value;
gmeAPI.Init(document, cSdkAppId(), cOpenID());

设置回调

接口类采用 Delegate 方法用于向应用程序发送回调通知。将回调函数注册给 SDK,用于接受回调的信息。将回调函数注册给 SDK,要在进房之前设置。

函数原型

WebGMEAPI.fn.SetTMGDelegate = function (delegate){...}
参数
意义
onEvent
SDK 回调事件

示例代码

gmeAPI.SetTMGDelegate(onEvent);

实时语音相关接口

初始化之后,SDK 调用进房后进去了房间,才可以进行实时语音通话。

加入房间

用生成的鉴权信息进房,会收到消息为 ITMG_MAIN_EVENT_TYPE_ENTER_ROOM 的回调。加入房间默认不打开麦克风及扬声器。

函数原型

WebGMEAPI.fn.EnterRoom = function (roomId, roomType, authBuffer) {...}
参数
意义
roomId
房间号,最大支持127字符
roomType
房间音频类型
authBuffer
鉴权码,获取方式请参考 工程配置

示例代码

function bindButtonEvents() {
$("#start_btn").click(function () {
console.log('start!');
//步骤1, 获取 AuthBuffer
var FetchSigCgi = 'http://134.175.146.244:10005/';
$.ajax({
type: "POST",
url: FetchSigCgi,
dataType: 'json',
data: {
sdkappid: cSdkAppId(),
roomid: cRoomNum(),
openid: cOpenID(),
},
success: function (json) {
//步骤2, 获取 AuthBuffer 成功
if (json && json.errorCode === 0) {
let userSig = json.userSig;
gmeAPI.Init(document, cSdkAppId(), cOpenID());
gmeAPI.SetTMGDelegate(onEvent);
gmeAPI.EnterRoom(cRoomNum(), 1, userSig);
} else {
console.error(json);
}
},
error: function (err) {
console.error(err);
}
});
});

事件回调

加入房间完成后会发送信息 ITMG_MAIN_EVENT_TYPE_ENTER_ROOM,在 OnEvent 函数中进行判断。

示例代码

onEvent = function (eventType, result) {
if (eventType === gmeAPI.event.ITMG_MAIN_EVENT_TYPE_ENTER_ROOM)
{
//进房成功
}
else if (eventType === gmeAPI.event.ITMG_MAIN_EVENT_TYPE_USER_UPDATE)
{
app._data.downStreamInfoList = result.PeerInfo;//接收的对端的信息 ,参见下表
app._data.brSend = result.UploadBRSend;//上传语音数据的码率
app._data.rtt = result.UploadRTT;//上传 RTT
}
else if (eventType === gmeAPI.event.ITMG_MAIN_EVENT_TYPE_EXIT_ROOM)
{
//退房成功
}
else if (eventType === gmeAPI.event.ITMG_MAIN_EVENT_TYPE_ROOM_DISCONNECT)
{
//房间断开连接
}
};
接收的对端的信息如下 downStreamInfoList:
参数
意义
brRecv
接收的码率
delay
接收的延迟
jitterBufferMs
抖动延迟
jitterReceived
接收 jitter

退出房间

通过调用此接口可以退出所在房间。这是一个异步接口,退房之后有回调,返回值为 AV_OK 的时候代表异步投递成功。

函数原型

WebGMEAPI.fn.ExitRoom = function (){...}

示例代码

gmeAPI.ExitRoom();

开启关闭麦克风

此接口用来开启关闭麦克风。加入房间默认不打开麦克风及扬声器。

函数原型

WebGMEAPI.fn.EnableMic = function (bEnable) {...}
参数
意义
isEnabled
如果需要打开麦克风,则传入的参数为 true,如果关闭麦克风,则参数为 false

示例代码

gmeAPI.EnableMic(false);

设置麦克风的音量

此接口用于设置麦克风的音量。参数 volume 用于设置麦克风的音量,当数值为0的时候表示静音,当数值为100的时候表示音量不增不减,默认数值为100。

函数原型

WebGMEAPI.fn.SetMicVolume = function (volume){...}
参数
意义
volume
设置音量,范围0到100

示例代码

gmeAPI.SetMicVolume(100);

开启关闭扬声器

此接口用于开启关闭扬声器。

函数原型

WebGMEAPI.fn.EnableSpeaker = function (bEnable){...}
参数
意义
isEnabled
如果需要关闭扬声器,则传入的参数为 false,如果打开扬声器,则参数为 true

示例代码

gmeAPI.EnableSpeaker(true);


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈