接口文档

为方便 Cocos Creator 开发者调试和接入腾讯云游戏多媒体引擎产品 API,本文为通过 Cocos Service 服务面板,接入腾讯云 GME 的接口文档。

  • 此文档对应 GME SDK 的版本为 2.5.2
  • 函数原型为 GME Cocos SDK 接口文档 中定义的接口,Cocos Service 接入时设置了一个全局变量 tencentGME.tencentGMEInst,可参考示例代码接入。

GME 的重要接口

重要接口 接口含义
init 初始化 GME
poll 触发事件回调
enterRoom 加入房间
enableMic 开启/关闭麦克风
enableSpeaker 开启/关闭扬声器

说明

  • GME 使用前请对工程进行配置,否则 SDK 不生效。

  • GME 的接口调用成功后返回值为 GME SDK 定义的枚举值 AV_OK,数值为 0

  • GME 的接口调用要在同一个线程下,任意 JS 线程均可,JSB 层封装和回调的消息均在 JS 线程完成。

  • GME 加入房间需要鉴权,请参考文档关于 鉴权初始化 内容。

  • GME 需要周期性的调用 poll 接口触发事件回调。

  • GME 回调信息,请参考 回调消息 列表。

  • 设备的操作要在进房成功之后。

  • 错误码详情可参考腾讯云官方文档 错误码

实时语音流程图

初始化相关接口

未初始化前,SDK 处于未初始化阶段,需要通过接口 init 进行初始化,才可以使用实时语音及离线语音。

使用问题可参考腾讯云官方文档 一般性问题

接口 接口含义
init 初始化 SDK
poll 触发事件回调
pause 系统暂停
resume 系统恢复
uninit 反初始化 SDK

init

此接口用于初始化 SDK。参数获取请查看腾讯云官方文档 接入指引

此接口需要来自腾讯云控制台的 AppIDKeyopenId 作为参数。这里的 openId 是唯一标识一个用户,规则由 App 开发者自行制定,App 内不重复即可(目前只支持 INT64)。

初始化 SDK 之后才可以进房。

函数原型

TencentGME.fn.init = function(appId: string, key: string, openId: string) {...}
参数 类型 含义
appId string 来自腾讯云控制台的 AppID
key string 来自腾讯云 控制台 的密钥
openId string openId 只支持 INT64 类型(转为 string 传入),必须大于 10000,用于标识用户

示例代码

var appId = '1400089356';
var key = '1cfbfxxxxx03a53e';
var openId = '123456';
tencentGME.tencentGMEInst.init(appId, key, openId);

poll

此接口用于触发事件回调。通过在 update 里面周期的调用 poll 可以触发事件回调。

函数原型

TencentGME.fn.poll = function() {...}

示例代码

tencentGME.tencentGMEInst.poll();

pause

此接口用于系统暂停。当系统发生 pause 事件时,需要同时通知引擎进行 pause

函数原型

TencentGME.fn.pause = function() {...}

示例代码

tencentGME.tencentGMEInst.pause();

resume

此接口用于系统恢复。当系统发生 resume 事件时,需要同时通知引擎进行 resumeresume 接口只恢复实时语音。

函数原型

TencentGME.fn.resume = function() {...}

示例代码

tencentGME.tencentGMEInst.resume();

uninit

此接口用于反初始化 SDK,进入未初始化状态。切换账号需要反初始化。

函数原型

TencentGME.fn.uninit = function() {...}

示例代码

tencentGME.tencentGMEInst.uninit();

实时语音房间相关接口

初始化 完毕,SDK 调用 enterRoom 进入房间后,才可以进行实时语音通话。

使用问题可参考腾讯云官方文档 实时语音相关问题

接口 接口含义
enterRoom 加入房间
isRoomEntered 判断是否已经进入房间
exitRoom 退出房间
changeRoomType 修改用户房间音频类型
getRoomType 获取用户房间音频类型

enterRoom

此接口用于加入房间。如果普通语音进房,业务方面无涉及范围语音需求,则使用普通进房接口。详细信息请查看腾讯云官方文档 范围语音

若需要使用离线语音功能,通过生成的 鉴权信息 进房,会收到消息为 ITMG_MAIN_EVENT_TYPE_ENTER_ROOM 的回调。加入房间默认不开启麦克风及扬声器。返回值为 AV_OK 的时候代表成功。

函数原型

TencentGME.fn.enterRoom = function(roomId: string, type: number) {...}
参数 类型 含义
roomID string 房间号,最大支持 127 字符
roomType ITMG_ROOM_TYPE 房间音频类型

房间音频类型请参考腾讯云官方文档 音质选择

示例代码

var roomId = '123';
tencentGME.tencentGMEInst.enterRoom(roomId, 1);

isRoomEntered

通过调用此接口可以判断是否已经进入房间,返回值为 boolean 类型。

函数原型

TencentGME.fn.isRoomEntered = function() {...}

示例代码

var isRoomEntered = tencentGME.tencentGMEInst.isRoomEntered();

exitRoom

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

如果应用中有退房后立即进房的场景,在接口调用流程上,开发者不需要等待 exitRoom 的回调 RoomExitComplete 通知,直接调用接口即可。

函数原型

TencentGME.fn.exitRoom = function() {...}

示例代码

tencentGME.tencentGMEInst.exitRoom();

changeRoomType

此接口用于修改用户房间音频类型,结果参见回调事件,事件类型为 ITMG_MAIN_EVENT_TYPE_CHANGE_ROOM_TYPE

函数原型

TencentGME.fn.changeRoomType = function(roomType: number) {...}
参数 类型 含义
roomType ITMG_ROOM_TYPE 希望房间切换成的类型,房间音频类型参考 enterRoom 接口。

示例代码

tencentGME.tencentGMEInst.changeRoomType(4);

getRoomType

此接口用于获取用户房间音频类型,返回值为房间音频类型。当返回值为 0 时,代表获取用户房间音频类型发生错误,房间音频类型参考 enterRoom 接口。

函数原型

TencentGME.fn.getRoomType = function() {...}

示例代码

var roomType = tencentGME.tencentGMEInst.getRoomType();

实时语音音频接口

初始化 SDK 之后进房,在房间中,才可以调用实时音频语音相关接口。

当用户在界面单击开启/关闭麦克风/扬声器的按钮时:

  • 对于大部分的 游戏类 App,推荐调用 enableMicenableSpeaker 接口,相当于同时调用enableAudioCaptureDevice/EnableAudioSendenableAudioPlayDevice/enableAudioRecv 接口。

  • 其他类型的 移动端 App,例如社交类型 App,开启或者关闭采集设备,会伴随整个设备(采集及播放)重启,如果此时 App 正在播放背景音乐,那么背景音乐的播放也会被中断。利用控制上下行的方式来实现开关麦克风效果,不会中断播放设备。

    具体调用方式为:在进房的时候调用 enableAudioCaptureDevice(true) && enableAudioPlayDevice(true) 一次,单击开关麦克风时只调用 enableAudioSend/enableAudioRecv 来控制音频流是否发送/接收。

  • 如果想 单独释放采集/播放设备,请参考下方的 enableAudioCaptureDeviceenableAudioPlayDevice 接口介绍。

  • 调用 pause 暂停音频,调用 resume 恢复音频。

接口 接口含义
enableMic 开启/关闭麦克风
getMicState 获取麦克风状态
enableAudioCaptureDevice 开启/关闭采集设备
isAudioCaptureDeviceEnabled 获取采集设备状态
enableAudioSend 开启/关闭音频上行
isAudioSendEnabled 获取音频上行状态
getMicLevel 获取麦克风实时音量
getSendStreamLevel 获取音频上行实时音量
setMicVolume 设置麦克风音量
getMicVolume 获取麦克风音量
enableSpeaker 开启/关闭扬声器
getSpeakerState 获取扬声器状态
enableAudioPlayDevice 开启/关闭播放设备
isAudioPlayDeviceEnabled 获取播放设备状态
enableAudioRecv 开启/关闭音频下行
isAudioRecvEnabled 获取音频下行状态
getSpeakerLevel 获取扬声器实时音量
getRecvStreamLevel 获取房间内其他成员下行实时音量
setSpeakerVolume 设置扬声器音量
getSpeakerVolume 获取扬声器音量
enableLoopBack 开启/关闭耳返

enableMic

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

调用 enableMic 接口,相当于同时调用 enableAudioCaptureDeviceenableAudioSend 两个接口。

函数原型

TencentGME.fn.enableMic = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 若要开启麦克风,则传入的参数为 true
若要关闭麦克风,则传入的参数为 false

示例代码

tencentGME.tencentGMEInst.enableMic(true);

getMicState

此接口用于获取麦克风的状态。

  • 返回值为 0 时表示麦克风处于 关闭 状态。

  • 返回值为 1 时表示麦克风为 开启 状态。

函数原型

TencentGME.fn.getMicState = function() {...}

示例代码

var micState = tencentGME.tencentGMEInst.getMicState();

enableAudioCaptureDevice

此接口用来开启/关闭采集设备。加入房间默认不开启设备。

  • 只能在进房后调用此接口,退房会自动关闭设备。
  • 在移动端,开启采集设备通常会伴随权限申请,音量类型调整等操作。

函数原型

TencentGME.fn.enableAudioCaptureDevice = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 开启采集设备,则传入参数为 true
关闭采集设备,则传入参数为 false

示例代码

tencentGME.tencentGMEInst.enableAudioCaptureDevice(true);

isAudioCaptureDeviceEnabled

此接口用于获取采集设备的状态。

函数原型

TencentGME.fn.isAudioCaptureDeviceEnabled = function() {...}

示例代码

var isAudioCaptureDeviceEnabled = tencentGME.tencentGMEInst.isAudioCaptureDeviceEnabled();

enableAudioSend

此接口用于开启或关闭音频上行。

  • 如果采集设备已经开启,那么会发送采集到的音频数据。
  • 如果采集设备没有开启,那么仍旧无声。

采集设备的开启/关闭,请参考接口 EnableAudioCaptureDevice

函数原型

TencentGME.fn.enableAudioSend = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 若要开启音频上行,则传入的参数为 true
若要关闭音频上行,则参传入的参数为 false

示例代码

tencentGME.tencentGMEInst.enableAudioSend(true);

isAudioSendEnabled

此接口用于获取音频上行的状态。

函数原型

TencentGME.fn.isAudioSendEnabled = function() {...}

示例代码

var isAudioSendEnabled = tencentGME.tencentGMEInst.isAudioSendEnabled();

getMicLevel

此接口用于获取麦克风实时音量,返回值为 number 类型。

函数原型

TencentGME.fn.getMicLevel = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.getMicLevel();

getSendStreamLevel

此接口用于获取音频上行实时音量。返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.getSendStreamLevel = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.getSendStreamLevel();

setMicVolume

此接口用于设置麦克风的音量。参数 volume 用于设置麦克风的音量,默认数值为 100

  • 当数值为 0 时,表示静音。
  • 当数值为 100 时,则表示音量不增不减。

函数原型

TencentGME.fn.setMicVolume = function(volume: number) {...}
参数 类型 含义
vol number 设置音量,范围为 0 ~ 200

示例代码

tencentGME.tencentGMEInst.setMicVolume(100);

getMicVolume

此接口用于获取麦克风的音量,返回值为一个 number 类型数值。

  • 返回值为 1~100 时,表示正常音量。
  • 若返回值为 101,则表示没调用过接口 setMicVolume

函数原型

TencentGME.fn.getMicVolume = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.getMicVolume();

enableSpeaker

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

函数原型

TencentGME.fn.enableSpeaker = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 若要关闭扬声器,则传入的参数为 false
若要开启扬声器,则参数为 true

示例代码

tencentGME.tencentGMEInst.enableSpeaker(true);

getSpeakerState

此接口用于获取扬声器状态。

  • 返回值为 0 时,表示扬声器处于 关闭 状态。
  • 返回值 1 时,表示扬声器为 开启 状态。
  • 返回值为 2 时,表示扬声器处于 正在操作 状态。

函数原型

TencentGME.fn.getSpeakerState = function() {...}

示例代码

var speakerState = tencentGME.tencentGMEInst.getSpeakerState();

enableAudioPlayDevice

此接口用于开启/关闭播放设备。

函数原型

TencentGME.fn.enableAudioPlayDevice = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 若要关闭播放设备,则传入的参数为 false
若要开启播放设备,则传入的参数为 true

示例代码

tencentGME.tencentGMEInst.enableAudioPlayDevice(true);

isAudioPlayDeviceEnabled

此接口用于获取播放设备状态。

函数原型

TencentGME.fn.isAudioPlayDeviceEnabled = function() {...}

示例代码

var isAudioPlayDeviceEnabled = tencentGME.tencentGMEInst.isAudioPlayDeviceEnabled();

enableAudioRecv

此接口用于开启/关闭音频下行。

  • 如果播放设备已经开启,那么会播放房间里其他人的音频数据。
  • 如果播放设备没有开启,那么仍旧无声。

播放设备的开启/关闭请参考接口 EnableAudioPlayDevice

函数原型

TencentGME.fn.enableAudioRecv = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 若要开启音频下行,则传入的参数为 true
若要关闭音频下行,则传入的参数为 false

示例代码

tencentGME.tencentGMEInst.enableAudioRecv(true);

isAudioRecvEnabled

此接口用于获取音频下行状态。

函数原型

TencentGME.fn.isAudioRecvEnabled = function() {...}

示例代码

var isAudioRecvEnabled = tencentGME.tencentGMEInst.isAudioRecvEnabled();

getSpeakerLevel

此接口用于获取扬声器实时音量。返回值为 number 类型数值,表示扬声器实时音量。

函数原型

TencentGME.fn.getSpeakerLevel = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.getSpeakerLevel();

getRecvStreamLevel

此接口用于获取房间内其他成员下行实时音量,返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.getRecvStreamLevel = function(openId: string) {...}
参数 类型 含义
openId string 房间内其他成员的 openId

示例代码

var volume = tencentGME.tencentGMEInst.getRecvStreamLevel();

setSpeakerVolume

此接口用于设置扬声器音量,参数 volume 用于设置扬声器的音量。

  • 当数值为 0 时,表示静音。
  • 当数值为 100 时,表示音量不增不减,默认数值为 100

函数原型

TencentGME.fn.setSpeakerVolume = function(volume: number) {...}
参数 类型 含义
volume number 设置音量,范围为 0 ~ 200

示例代码

tencentGME.tencentGMEInst.setSpeakerVolume(100);

getSpeakerVolume

此接口用于获取扬声器音量。返回值为 number 类型数值。

  • 返回值为 1~100 时,表示正常音量。
  • 若返回值为 101,则代表没调用过接口 setSpeakerVolume
音量类型 参数 音量大小(举例)
实时音量 Level 100
扬声器的音量 Volume 60
最终声音音量 Level * Volume% 100 * 60% = 60

函数原型

TencentGME.fn.getSpeakerVolume = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.getSpeakerVolume();

enableLoopBack

此接口用于开启/关闭耳返。

函数原型

TencentGME.fn.enableLoopBack = function(bEnabled: boolean) {...}
参数 类型 含义
bEnabled boolean 是否启动耳返

示例代码

tencentGME.tencentGMEInst.enableLoopBack(true);

离线语音语音转文字流程图

离线语音

未初始化前,SDK 处于未初始化阶段,需要通过接口 init 初始化 SDK,才可以使用实时语音及离线语音。

使用问题可参考腾讯云官方文档 离线语音相关问题

初始化相关接口

接口 接口含义
init 初始化 SDK
poll 触发事件回调
pause 系统暂停
resume 系统恢复
uninit 反初始化 SDK

离线语音相关接口

接口 接口含义
applyPTTAuthbuffer 鉴权初始化
pttSetMaxMessageLength 限制最大语音信息时长
pttStartRecording 启动流式录音
pttStartRecordingWithStreamingRecognition 启动流式语音识别
pttPauseRecording 暂停录音
pttResumeRecording 恢复录音
pttStopRecording 停止录音
pttCancelRecording 取消录音
pttGetMicLevel 获取离线语音麦克风实时音量
pttSetMicVolume 设置离线语音录制音量
pttGetMicVolume 获取离线语音录制音量
pttGetSpeakerLevel 获取离线语音扬声器实时音量
pttSetSpeakerVolume 设置离线语音播放音量
pttGetSpeakerVolume 获取离线语音播放音量
pttUploadRecordedFile 上传语音文件
pttDownloadRecordedFile 下载语音文件
pttPlayRecordedFile 开始播放语音
pttStopPlayFile 停止播放语音
pttGetFileSize 获取语音文件大小
pttGetVoiceFileDuration 获取语音文件时长
pttSpeechToText 将指定的语音文件翻译成文字

applyPTTAuthbuffer

此接口用于鉴权初始化。在 初始化 SDK 之后调用鉴权初始化。

函数原型

TencentGME.fn.applyPTTAuthbuffer = function() {...}

示例代码

tencentGME.tencentGMEInst.applyPTTAuthbuffer();

pttSetMaxMessageLength

此接口用于限制最大语音消息的长度,最大支持 60 秒。

函数原型

TencentGME.fn.pttSetMaxMessageLength = function(msTime: number) {...}
参数 类型 含义
msTime number 语音时长,单位 ms

示例代码

tencentGME.tencentGMEInst.pttSetMaxMessageLength();

pttStartRecording

此接口用于启动流式录音。需要将录音文件上传后才可以进行语音转文字等操作。

函数原型

TencentGME.fn.pttStartRecording = function(fileDir: string) {...}
参数 类型 含义
fileDir string 存放语音的路径

示例代码

var fileDir = '*****';
tencentGME.tencentGMEInst.pttStartRecording(fileDir);

pttStartRecordingWithStreamingRecognition

此接口用于启动流式语音识别。同时在回调中会有实时的语音转文字返回,可以指定语言进行识别,也可以将语音中识别到的信息翻译成指定的语言返回。

函数原型

TencentGME.fn.pttStartRecordingWithStreamingRecognition = function(fileDir: string, [speechLanguage: string, translateLanguage: string]) {...}
参数 类型 含义
fileDir string 存放的语音路径
speechLanguage (可选) string 识别成指定文字的语言参数,详情请参考 语音转文字的语言参数参考列表
translateLanguage (可选) string 翻译成指定文字的语言参数,详情请参考 语音转文字的语言参数参考列表
注意:此参数 暂不可用,请填写与 speechLanguage 相同的参数

示例代码

var fileDir = '*****';
tencentGME.tencentGMEInst.pttStartRecordingWithStreamingRecognition(fileDir);

pttPauseRecording

此接口用于暂停录音。如需恢复录音请调用接口 ResumeRecording

函数原型

TencentGME.fn.pttPauseRecording = function() {...}

示例代码

tencentGME.tencentGMEInst.pttPauseRecording();

pttResumeRecording

此接口用于恢复录音。

函数原型

TencentGME.fn.pttResumeRecording = function() {...}

示例代码

tencentGME.tencentGMEInst.pttResumeRecording();

pttStopRecording

此接口用于停止录音。此接口为异步接口,停止录音后会有录音完成回调,回调成功之后录音文件才可用。

函数原型

TencentGME.fn.pttStopRecording = function() {...}

示例代码

tencentGME.tencentGMEInst.pttStopRecording();

pttCancelRecording

此接口用于取消录音,取消之后没有回调。

函数原型

TencentGME.fn.pttCancelRecording = function() {...}

示例代码

tencentGME.tencentGMEInst.pttCancelRecording();

pttGetMicLevel

此接口用于获取离线语音麦克风的实时音量,返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttGetMicLevel = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.pttGetMicLevel();

pttSetMicVolume

此接口用于设置离线语音录制的音量,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttSetMicVolume = function(volume: number) {...}
参数 类型 含义
volume number 设置音量,范围为 0 ~ 200

示例代码

tencentGME.tencentGMEInst.pttSetMicVolume(100);

pttGetMicVolume

此接口用于获取离线语音录制的音量。返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttGetMicVolume = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.pttGetMicVolume();

pttGetSpeakerLevel

此接口用于获取离线语音扬声器实时音量。返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttGetSpeakerLevel = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.pttGetSpeakerLevel();

pttSetSpeakerVolume

此接口用于设置离线语音播放音量,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttSetSpeakerVolume = function(volume: number) {...}
参数 类型 含义
volume number 设置音量,范围为 0 ~ 200

示例代码

tencentGME.tencentGMEInst.pttSetSpeakerVolume(100);

pttGetSpeakerVolume

此接口用于获取离线语音播放音量。返回值为 number 类型,取值范围为 0 ~ 100

函数原型

TencentGME.fn.pttGetSpeakerVolume = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.pttGetSpeakerVolume();

pttUploadRecordedFile

此接口用于上传语音文件。

函数原型

TencentGME.fn.pttUploadRecordedFile = function(filePath: string) {...}
参数 类型 含义
filePath string 上传的语音路径

示例代码

var filePath = '*****';
tencentGME.tencentGMEInst.pttUploadRecordedFile(filePath);

pttDownloadRecordedFile

此接口用于下载语音文件。

函数原型

TencentGME.fn.pttDownloadRecordedFile = function(fileId: string, filePath: string) {...}
参数 类型 含义
fileId string 文件的 url 路径,上传文件回调中获取
filePath string 文件的本地保存路径

示例代码

var filePath = '*****';
var fileId = '***';
tencentGME.tencentGMEInst.pttDownloadRecordedFile(fileId, filePath);

pttPlayRecordedFile

此接口用于开始播放语音。

函数原型

TencentGME.fn.pttPlayRecordedFile = function(filePath: string) {...}
参数 类型 含义
filePath string 文件的路径

返回错误码

错误码值 原因 建议方案
20485 播放未开始 确保文件存在,文件路径的合法性

示例代码

var filePath = '*****';
tencentGME.tencentGMEInst.pttPlayRecordedFile(filePath);

pttStopPlayFile

此接口用于停止播放语音。停止播放语音也会有播放完成的回调。

函数原型

TencentGME.fn.pttStopPlayFile = function() {...}

示例代码

var volume = tencentGME.tencentGMEInst.pttStopPlayFile();

pttGetFileSize

此接口用于获取语音文件大小。

函数原型

TencentGME.fn.pttGetFileSize = function(filePath: string) {...}
参数 类型 含义
filePath string 语音文件的路径

示例代码

var filePath = '*****';
tencentGME.tencentGMEInst.pttGetFileSize(filePath);

pttGetVoiceFileDuration

此接口用于获取语音文件时长,单位为 毫秒

函数原型

TencentGME.fn.pttGetVoiceFileDuration = function(filePath: string) {...}
参数 类型 含义
filePath string 语音文件的路径

示例代码

var filePath = '*****';
tencentGME.tencentGMEInst.pttGetVoiceFileDuration(filePath);

pttSpeechToText

此接口用于将指定的语音文件翻译成文字。可以指定语言进行识别,也可以将语音中识别到的信息翻译成指定的语言返回。

函数原型

TencentGME.fn.pttStartRecordingWithStreamingRecognition = function(fileID: string, [speechLanguage: string, translateLanguage: string]) {...}
参数 类型 含义
fileID string 语音文件 url
speechLanguage (可选) string 识别出指定文字的语言参数,具体请参考 语音转文字的语言参数参考列表
translatelanguage (可选) string 翻译成指定文字的语言参数,参数请参考 语音转文字的语言参数参考列表
注意:此参数 暂时无效,填入参数应与 speechLanguage 一致

示例代码

var fileID = '*****';
tencentGME.tencentGMEInst.pttStartRecordingWithStreamingRecognition(fileID);

高级 API

getQualityTips

获取音视频通话的实时通话质量的相关信息。该接口主要用来查看实时通话质量、排查问题等,业务侧可以忽略。

函数原型

TencentGME.fn.getQualityTips = function() {...}

示例代码

var qualityTips = tencentGME.tencentGMEInst.getQualityTips();

getSDKVersion

此接口用于获取版本号。

函数原型

TencentGME.fn.getSDKVersion = function() {...}

示例代码

var version = tencentGME.tencentGMEInst.getSDKVersion();

setLogLevel

此接口用于设置打印日志等级。建议保持默认等级。

函数原型

TencentGME.fn.setLogLevel = function(logLevelWrite: number, logLevelPrint: number) {...}

参数含义

参数 类型 含义
levelWrite ITMG_LOG_LEVEL 设置写入日志的等级,TMG_LOG_LEVEL_NONE 表示不写入
levelPrnumber ITMG_LOG_LEVEL 设置打印日志的等级,TMG_LOG_LEVEL_NONE 表示不打印

示例代码

tencentGME.tencentGMEInst.setLogLevel(4, 4);

setLogLevel

此接口用于设置打印日志路径。各平台的默认路径为:

平台 路径
Windows %appdata%\Tencent\GME\ProcessName
iOS Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/Documents
Android /sdcard/Android/data/xxx.xxx.xxx/files
Mac /Users/username/Library/Containers/xxx.xxx.xxx/Data/Documents

函数原型

TencentGME.fn.setLogLevel = function(logPath: string) {...}
参数 类型 含义
logDir string 路径

示例代码

var logPath = '****';
tencentGME.tencentGMEInst.setLogLevel(logPath);

addAudioBlackList

此接口用于将某个 ID 加入音频数据黑名单。返回值为 0 时表示调用成功。

函数原型

TencentGME.fn.addAudioBlackList = function(openId: string) {...}
参数 类型 含义
openId string 需添加到黑名单的 ID

示例代码

var openId = '****';
tencentGME.tencentGMEInst.addAudioBlackList(openId);

removeAudioBlackList

此接口用于将某个 ID 从音频数据黑名单中移除。返回值为 0 时表示调用成功。

函数原型

TencentGME.fn.removeAudioBlackList = function(openId: string) {...}
参数 类型 含义
openId string 需从黑名单中移除的 ID

示例代码

var openId = '****';
tencentGME.tencentGMEInst.removeAudioBlackList(openId);

回调消息

消息列表

消息 消息代表的含义
ITMG_MAIN_EVENT_TYPE_ENTER_ROOM 进入音频房间消息
ITMG_MAIN_EVENT_TYPE_EXIT_ROOM 退出音频房间消息
ITMG_MAIN_EVENT_TYPE_ROOM_DISCONNECT 房间因为网络等原因断开消息
ITMG_MAIN_EVENT_TYPE_CHANGE_ROOM_TYPE 房间类型变化事件
ITMG_MAIN_EVENT_TYPE_MIC_NEW_DEVICE 新增麦克风设备消息
ITMG_MAIN_EVENT_TYPE_MIC_LOST_DEVICE 丢失麦克风设备消息
ITMG_MAIN_EVENT_TYPE_SPEAKER_NEW_DEVICE 新增扬声器设备消息
ITMG_MAIN_EVENT_TYPE_SPEAKER_LOST_DEVICE 丢失扬声器设备消息
ITMG_MAIN_EVENT_TYPE_ACCOMPANY_FINISH 伴奏结束消息
ITMG_MAIN_EVNET_TYPE_USER_UPDATE 房间成员更新消息
ITMG_MAIN_EVNET_TYPE_PTT_RECORD_COMPLETE PTT 录音完成
ITMG_MAIN_EVNET_TYPE_PTT_UPLOAD_COMPLETE 上传 PTT 完成
ITMG_MAIN_EVNET_TYPE_PTT_DOWNLOAD_COMPLETE 下载 PTT 完成
ITMG_MAIN_EVNET_TYPE_PTT_PLAY_COMPLETE 播放 PTT 完成
ITMG_MAIN_EVNET_TYPE_PTT_SPEECH2TEXT_COMPLETE 语音转文字完成

Data 列表

消息 Data 例子
ITMG_MAIN_EVENT_TYPE
_ENTER_ROOM
result; error_info {"error_info":"","result":0}
ITMG_MAIN_EVENT_TYPE
_EXIT_ROOM
result; error_info {"error_info":"","result":0}
ITMG_MAIN_EVENT_TYPE
_ROOM_DISCONNECT
result; error_info {"error_info":"waiting timeout,
please check your network",
"result":0}
ITMG_MAIN_EVENT_TYPE
_CHANGE_ROOM_TYPE
result; error_info;
sub_event_type;
new_room_type
{"error_info":"","new_room_type":0,
"result":0}
ITMG_MAIN_EVENT_TYPE
_SPEAKER_NEW_DEVICE
result; error_info {"deviceID":"{0.0.0.00000000}.
{a4f1e8be-49fa-43e2-b8cf
-dd00542b47ae}",
"deviceName":"扬声器
(Realtek High Definition Audio)",
"error_info":"",
"isNewDevice":true,
"isUsedDevice":false,
"result":0}
ITMG_MAIN_EVENT_TYPE
_SPEAKER_LOST_DEVICE
result; error_info {"deviceID":"{0.0.0.00000000}
.{a4f1e8be-49fa-43e2
-b8cf-dd00542b47ae}",
"deviceName":"扬声器
(Realtek High Definition Audio)",
"error_info":"","isNewDevice":false,
"isUsedDevice":false,
"result":0}
ITMG_MAIN_EVENT_TYPE
_MIC_NEW_DEVICE
result; error_info {"deviceID":"{0.0.1.00000000}.
{5fdf1a5b-f42d-4ab2
-890a-7e454093f229}",
"deviceName":"麦克风
(Realtek High Definition Audio)",
"error_info":"","isNewDevice":true,
"isUsedDevice":true,
"result":0}
ITMG_MAIN_EVENT_TYPE
_MIC_LOST_DEVICE
result; error_info {"deviceID":"{0.0.1.00000000}.
{5fdf1a5b-f42d-4ab2
-890a-7e454093f229}",
"deviceName":"麦克风
(Realtek High Definition Audio)",
"error_info":"","isNewDevice":false,
"isUsedDevice":true,
"result":0}
ITMG_MAIN_EVNET_TYPE
_USER_UPDATE
user_list; event_id {"event_id":1,"user_list":["0"]}
ITMG_MAIN_EVNET_TYPE
_PTT_RECORD_COMPLETE
result; file_path {"file_path":"","result":0}
ITMG_MAIN_EVNET_TYPE
_PTT_UPLOAD_COMPLETE
result; file_path;
file_id
{"file_id":"","file_path":"","result":0}
ITMG_MAIN_EVNET_TYPE
_PTT_DOWNLOAD
_COMPLETE
result; file_path;
file_id
{"file_id":"","file_path":"","result":0}
ITMG_MAIN_EVNET_TYPE
_PTT_PLAY_COMPLETE
result; file_path {"file_path":"","result":0}
ITMG_MAIN_EVNET_TYPE
_PTT_SPEECH2TEXT
_COMPLETE
result; text;
file_id
{"file_id":"","text":"","result":0}
ITMG_MAIN_EVNET_TYPE
_PTT
_STREAMINGRECOGNITION
_COMPLETE
result; file_path;
text;file_id
{"file_id":"","file_path":","text":"","result":0}

条与 "" 相匹配的结果

    没有与 "" 匹配的结果