类 | 含义 |
ITMGContext | 核心接口 |
ITMGDelegate | 回调相关 |
ITMGRoom | 房间相关接口 |
ITMGRoomManager | |
ITMGAudioCtrl | 音频相关接口 |
ITMGAudioEffectCtrl | 音效及伴奏相关接口 |
ITMGPTT | 语音消息、转文本相关接口 |
接口 | 接口含义 |
Init | 初始化 GME |
Poll | 触发事件回调 |
Pause | 系统暂停 |
Resume | 系统恢复 |
Uninit | 反初始化 GME |
#include "auth_buffer.h"#include "tmg_sdk.h"#include "AdvanceHeaders/tmg_sdk_adv.h"#include <vector>
//在初始化 SDK 时候m_pTmgContext = ITMGContextGetInstance();m_pTmgContext->SetTMGDelegate(this);//在析构函数中CTMGSDK_For_AudioDlg::~CTMGSDK_For_AudioDlg(){ITMGContextGetInstance()->SetTMGDelegate(NULL);}
//头文件中声明virtual void OnEvent(ITMG_MAIN_EVENT_TYPE eventType,const char* data);//示例代码void CTMGSDK_For_AudioDlg::OnEvent(ITMG_MAIN_EVENT_TYPE eventType, const char* data){switch(eventType){case ITMG_MAIN_EVENT_TYPE_XXXX_XXXX:{//对回调进行处理}break;}}
ITMGContext* m_pTmgContext;m_pTmgContext->Init(AppID, OpenID);
ITMGContext virtual int Init(const char* sdkAppId, const char* openId)
返回值 | 处理 |
AV_OK = 0 | 初始化 SDK 成功 |
AV_ERR_SDK_NOT_FULL_UPDATE=7015 | 检查 SDK 文件是否完整,建议删除后重新导入 SDK |
#define SDKAPPID3RD "14000xxxxx"cosnt char* openId="10001";ITMGContext* context = ITMGContextGetInstance();context->Init(SDKAPPID3RD, openId);
class ITMGContext {protected:virtual ~ITMGContext() {}public:virtual void Poll()= 0;}
//头文件中的声明//代码实现void TMGTestScene::update(float delta){ITMGContextGetInstance()->Poll();}
ITMGContext int Pause()
ITMGContext int Resume()
ITMGContext int Uninit()
接口 | 接口含义 |
GenAuthBuffer | 本地鉴权计算 |
EnterRoom | 加入房间 |
ExitRoom | 退出房间 |
IsRoomEntered | 判断是否已经进入房间 |
SwitchRoom | 快速切换房间 |
int QAVSDK_AuthBuffer_GenAuthBuffer(unsigned int dwSdkAppID, const char* strRoomID, const char* strOpenID,const char* strKey, unsigned char* strAuthBuffer, unsigned int bufferLength);
参数 | 类型 | 含义 |
dwSdkAppID | unsigned int | 来自腾讯云控制台的 AppId 号码 |
strRoomID | const char* | 房间号,最大支持127字符 |
strOpenID | const char* | 用户标识。与 Init 时候的 openID相同。 |
strKey | const char* | |
strAuthBuffer | const char* | 返回的 authbuff |
bufferLength | int | 传入的 authbuff 长度,建议为 500 |
unsigned int bufferLen = 512;unsigned char retAuthBuff[512] = {0};QAVSDK_AuthBuffer_GenAuthBuffer(atoi(SDKAPPID3RD), roomId, "10001", AUTHKEY,retAuthBuff,bufferLen);
ITMGContext virtual int EnterRoom(const char* roomID, ITMG_ROOM_TYPE roomType, const char* authBuff, int buffLen)
参数 | 类型 | 含义 |
roomID | const char* | 房间号,最大支持127字符 |
roomType | ITMG_ROOM_TYPE | |
authBuffer | const char* | 鉴权码 |
buffLen | int | 鉴权码长度 |
ITMGContext* context = ITMGContextGetInstance();context->EnterRoom(roomID, ITMG_ROOM_TYPE_FLUENCY, (char*)retAuthBuff,bufferLen);
void TMGTestScene::OnEvent(ITMG_MAIN_EVENT_TYPE eventType,const char* data){switch (eventType) {case ITMG_MAIN_EVENT_TYPE_ENTER_ROOM:{ListMicDevices();ListSpeakerDevices();std::string strText = "EnterRoom complete: ret=";strText += data;m_EditMonitor.SetWindowText(MByteToWChar(strText).c_str());}}}
消息 | Data | 例子 |
ITMG_MAIN_EVENT_TYPE_ENTER_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.ITMG_MAIN_EVENT_TYPE_ROOM_DISCONNECT
,此时 SDK 会自动进行重连,回调是 ITMG_MAIN_EVENT_TYPE_RECONNECT_START
,当重连成功时,会有 ITMG_MAIN_EVENT_TYPE_RECONNECT_SUCCESS
回调。错误码值 | 原因及建议方案 |
7006 | 鉴权失败原因。 AppID 不存在或者错误 authbuff 鉴权错误 鉴权过期 OpenId 不符合规范 |
7007 | 已经在其它房间 |
1001 | 已经在进房过程中,然后又重复了此操作。建议在进房回调返回之前不要再调用进房接口 |
1003 | 已经进房了在房间中,又调用一次进房接口 |
1101 | 确保已经初始化 SDK,确保 OpenId 是否符合规则,或者确保在同一线程调用接口,以及确保 Poll 接口正常调用 |
ITMGContext virtual int ExitRoom()
ITMGContext* context = ITMGContextGetInstance();context->ExitRoom();
void TMGTestScene::OnEvent(ITMG_MAIN_EVENT_TYPE eventType,const char* data){switch (eventType) {case ITMG_MAIN_EVENT_TYPE_EXIT_ROOM:{//进行处理break;}}}
消息 | Data | 例子 |
ITMG_MAIN_EVENT_TYPE_EXIT_ROOM | result; error_info | {"error_info":"","result":0} |
ITMGContext virtual bool IsRoomEntered()
ITMGContext* context = ITMGContextGetInstance();context->IsRoomEntered();
ITMGContext virtual int SwitchRoom(const char* targetRoomID, const char* authBuff, int buffLen);
参数 | 类型 | 含义 |
targetRoomID | const char* | 将要进入的房间号 |
authBuffer | const char* | 用将要进入的房间号生成的新鉴权 |
buffLen | int | 鉴权码长度 |
接口/通知 | 含义 |
ITMG_MAIN_EVNET_TYPE_USER_UPDATE | 成员状态变化通知 |
AddAudioBlackList | 房间中禁言某成员 |
RemoveAudioBlackList | 移除禁言 |
event_id | 含义 | 应用侧维护内容 |
ITMG_EVENT_ID_USER_ENTER | 有成员进入房间,返回此时进房的 openid | 应用侧维护成员列表 |
ITMG_EVENT_ID_USER_EXIT | 有成员退出房间,返回此时退房的 openid | 应用侧维护成员列表 |
ITMG_EVENT_ID_USER_HAS_AUDIO | 有成员发送音频包,返回此时房间内说话的 openid,通过此事件可以判断用户是否说话,并展示声纹效果 | 应用侧维护通话成员列表 |
ITMG_EVENT_ID_USER_NO_AUDIO | 有成员停止发送音频包,返回此时房间内停止说话的 openid | 应用侧维护通话成员列表 |
void TMGTestScene::OnEvent(ITMG_MAIN_EVENT_TYPE eventType,const char* data){switch (eventType) {case ITMG_MAIN_EVNET_TYPE_USER_UPDATE:{//进行处理//开发者对参数进行解析,得到信息 eventID 及 user_listswitch (eventID){case ITMG_EVENT_ID_USER_ENTER://有成员进入房间break;case ITMG_EVENT_ID_USER_EXIT://有成员退出房间break;case ITMG_EVENT_ID_USER_HAS_AUDIO://有成员发送音频包break;case ITMG_EVENT_ID_USER_NO_AUDIO://有成员停止发送音频包break;default:break;}break;}}}
ITMGContext ITMGAudioCtrl int AddAudioBlackList(const char* openId)
参数 | 类型 | 含义 |
openId | char* | 需添加黑名单的用户 openid |
ITMGContextGetInstance()->GetAudioCtrl()->AddAudioBlackList(openId);
ITMGContext ITMGAudioCtrl int RemoveAudioBlackList(const char* openId)
参数 | 类型 | 含义 |
openId | char* | 需移除黑名单的 ID |
ITMGContextGetInstance()->GetAudioCtrl()->RemoveAudioBlackList(openId);
接口 | 接口含义 |
EnableMic | 开关麦克风 |
GetMicState | 获取麦克风状态 |
EnableAudioCaptureDevice | 开关采集设备 |
IsAudioCaptureDeviceEnabled | 获取采集设备状态 |
EnableAudioSend | 打开关闭音频上行 |
IsAudioSendEnabled | 获取音频上行状态 |
GetMicLevel | 获取实时麦克风音量 |
GetSendStreamLevel | 获取音频上行实时音量 |
SetMicVolume | 设置麦克风音量 |
GetMicVolume | 获取麦克风音量 |
ITMGAudioCtrl virtual int EnableMic(bool bEnabled)
参数 | 类型 | 含义 |
bEnabled | bool | 如果需要打开麦克风,则传入的参数为 true,如果关闭麦克风,则参数为 false |
//打开麦克风ITMGContextGetInstance()->GetAudioCtrl()->EnableMic(true);
ITMGAudioCtrl virtual int GetMicState()
ITMGContextGetInstance()->GetAudioCtrl()->GetMicState();
ITMGAudioCtrl virtual int EnableAudioCaptureDevice(bool enable)
参数 | 类型 | 含义 |
enable | bool | 如果需要打开采集设备,则传入的参数为 true,如果关闭采集设备,则参数为 false |
//打开采集设备ITMGContextGetInstance()->GetAudioCtrl()->EnableAudioCaptureDevice(true);
ITMGContext virtual bool IsAudioCaptureDeviceEnabled()
ITMGContextGetInstance()->GetAudioCtrl()->IsAudioCaptureDeviceEnabled();
ITMGContext virtual int EnableAudioSend(bool bEnable)
参数 | 类型 | 含义 |
bEnable | bool | 如果需要打开音频上行,则传入的参数为 true,如果关闭音频上行,则参数为 false |
ITMGContextGetInstance()->GetAudioCtrl()->EnableAudioSend(true);
ITMGContext virtual bool IsAudioSendEnabled()
ITMGContextGetInstance()->GetAudioCtrl()->IsAudioSendEnabled();
ITMGAudioCtrl virtual int GetMicLevel()
ITMGContextGetInstance()->GetAudioCtrl()->GetMicLevel();
ITMGAudioCtrl virtual int GetSendStreamLevel()
ITMGContextGetInstance()->GetAudioCtrl()->GetSendStreamLevel();
ITMGAudioCtrl virtual int SetMicVolume(int vol)
参数 | 类型 | 含义 |
vol | int | 取值范围为 0-200,数值为0的时候表示静音,当数值为100的时候表示音量不增不减,默认数值为100。 |
int micVol = (int)(value * 100);ITMGContextGetInstance()->GetAudioCtrl()->SetMicVolume(vol);
ITMGAudioCtrl virtual int GetMicVolume()
ITMGContextGetInstance()->GetAudioCtrl()->GetMicVolume();
接口 | 接口含义 |
EnableSpeaker | 开关扬声器 |
GetSpeakerState | 获取扬声器状态 |
EnableAudioPlayDevice | 开关播放设备 |
IsAudioPlayDeviceEnabled | 获取播放设备状态 |
EnableAudioRecv | 打开关闭音频下行 |
IsAudioRecvEnabled | 获取音频下行状态 |
GetSpeakerLevel | 获取实时扬声器音量 |
GetRecvStreamLevel | 获取房间内其他成员下行实时音量 |
SetSpeakerVolume | 设置扬声器音量 |
GetSpeakerVolume | 获取扬声器音量 |
ITMGAudioCtrl virtual int EnableSpeaker(bool enable)
参数 | 类型 | 含义 |
enable | bool | 如果需要关闭扬声器,则传入的参数为 false,如果打开扬声器,则参数为 true |
//打开扬声器ITMGContextGetInstance()->GetAudioCtrl()->EnableSpeaker(true);
ITMGAudioCtrl virtual int GetSpeakerState()
ITMGContextGetInstance()->GetAudioCtrl()->GetSpeakerState();
ITMGAudioCtrl virtual int EnableAudioPlayDevice(bool enable)
参数 | 类型 | 含义 |
enable | bool | 如果需要关闭播放设备,则传入的参数为 false,如果打开播放设备,则参数为 true |
ITMGContextGetInstance()->GetAudioCtrl()->EnableAudioPlayDevice(true);
ITMGAudioCtrl virtual bool IsAudioPlayDeviceEnabled()
ITMGContextGetInstance()->GetAudioCtrl()->IsAudioPlayDeviceEnabled();
ITMGAudioCtrl virtual int EnableAudioRecv(bool enable)
参数 | 类型 | 含义 |
enable | bool | 如果需要打开音频下行,则传入的参数为 true,如果关闭音频下行,则参数为 false |
ITMGContextGetInstance()->GetAudioCtrl()->EnableAudioRecv(true);
ITMGAudioCtrl virtual bool IsAudioRecvEnabled()
ITMGContextGetInstance()->GetAudioCtrl()->IsAudioRecvEnabled();
ITMGAudioCtrl virtual int GetSpeakerLevel()
ITMGContextGetInstance()->GetAudioCtrl()->GetSpeakerLevel();
ITMGAudioCtrl virtual int GetRecvStreamLevel(const char* openId)
参数 | 类型 | 含义 |
openId | char* | 房间其他成员的openId |
iter->second.level = ITMGContextGetInstance()->GetAudioCtrl()->GetRecvStreamLevel(iter->second.openid.c_str());
ITMGAudioCtrl virtual int SetSpeakerVolumeByOpenID(const char* openId, int vol) = 0;
参数 | 类型 | 含义 |
openId | const char* | 需要调节音量大小的OpenID |
vol | int | 百分比,建议[0-200],其中100为默认值 |
ITMGAudioCtrl virtual int GetSpeakerVolumeByOpenID(const char* openId) = 0;
参数 | 类型 | 含义 |
openId | const char* | 需要调节音量大小的OpenID |
ITMGAudioCtrl virtual int SetSpeakerVolume(int vol)
参数 | 类型 | 含义 |
vol | int | 设置音量,范围0 - 200,当数值为0时,表示静音,当数值为100时,表示音量不增不减,默认数值为100。 |
int vol = 100;ITMGContextGetInstance()->GetAudioCtrl()->SetSpeakerVolume(vol);
ITMGAudioCtrl virtual int GetSpeakerVolume()
ITMGContextGetInstance()->GetAudioCtrl()->GetSpeakerVolume();
EnableLoopBack + EnableSpeaker
才可以听到自己声音。ITMGAudioCtrl virtual int EnableLoopBack(bool enable)
参数 | 类型 | 含义 |
enable | bool | 设置是否启动 |
ITMGContextGetInstance()->GetAudioCtrl()->EnableLoopBack(true);
class ITMGRoom {public:virtual ~ITMGRoom() {} ;virtual int GetRoomType() = 0;};
ITMGContext* context = ITMGContextGetInstance();ITMGContextGetInstance()->GetRoom()->GetRoomType();
ITMGRoom virtual int GetRoomID(char* pBuffer, int nLength) = 0;
参数 | 类型 | 含义 |
pBuffer | char* | 用于接收返回的 roomid |
nLength | int | pBuffer 长度,在 128 - 256 之间 |
IITMGContext TMGRoom public int ChangeRoomType((ITMG_ROOM_TYPE roomType)
参数 | 类型 | 含义 |
roomType | ITMG_ROOM_TYPE | 房间切换成的目标类型,房间音频类型参考 EnterRoom 接口 |
ITMGContext* context = ITMGContextGetInstance();ITMGContextGetInstance()->GetRoom()->ChangeRoomType(ITMG_ROOM_TYPE_FLUENCY);
消息 | Data | 例子 |
ITMG_MAIN_EVENT_TYPE_CHANGE_ROOM_TYPE | result; error_info; new_room_type | {"error_info":"","new_room_type":0,"result":0} |
事件子类型 | 代表参数 | 含义 |
ITMG_ROOM_CHANGE_EVENT_ENTERROOM | 1 | 表示在进房的过程中,自带的音频类型与房间不符合,被修改为所进入房间的音频类型。 |
ITMG_ROOM_CHANGE_EVENT_START | 2 | 表示已经在房间内,音频类型开始切换(例如调用 ChangeRoomType 接口后切换音频类型)。 |
ITMG_ROOM_CHANGE_EVENT_COMPLETE | 3 | 表示已经在房间,音频类型切换完成。 |
ITMG_ROOM_CHANGE_EVENT_REQUEST | 4 | 表示房间成员调用 ChangeRoomType 接口,请求切换房间音频类型。 |
void TMGTestScene::OnEvent(ITMG_MAIN_EVENT_TYPE eventType,const char* data) {if (ITMGContext.ITMG_MAIN_EVENT_TYPE.ITMG_MAIN_EVENT_TYPE_CHANGE_ROOM_TYPE == type){//对房间类型事件进行处理}}
参数 | 类型 | 含义 |
weight | int | 范围是1 - 50,数值为50是音质评分极好,数值为1是音质评分很差,几乎不能使用,数值为0代表初始值,无含义。一般数值在30以下就可以提醒用户网络较差,建议切换网络。 |
loss | double | 上行丢包率。 |
delay | int | 音频触达延迟时间(ms)。 |
ITMGContext virtual const char* GetSDKVersion()
ITMGContextGetInstance()->GetSDKVersion();
ITMGContext virtual ITMG_CHECK_MIC_STATUS CheckMic() = 0;
返回值 | 含义 | 处理 |
ITMG_CHECK_MIC_STATUS_AVAILABLE = 0 | 正常可用 | 无需处理 |
ITMG_CHECK_MIC_STATUS_NO_GRANTED = 2 | 未获得/拒绝授权权限 | 需要在打开麦克风之前获取下权限 |
ITMG_CHECK_MIC_STATUS_INVALID_MIC = 3 | 没有可用的设备 | 一般是 PC 设备上,没有可用的麦克风设备会报此错误,请提示插入耳机或麦克风 |
ITMG_CHECK_MIC_STATUS_NOT_INIT = 5 | 没有初始化 | 在Init之后调用 EnableMic 接口 |
ITMGContext int SetLogLevel(ITMG_LOG_LEVEL levelWrite, ITMG_LOG_LEVEL levelPrint)
参数 | 类型 | 含义 |
levelWrite | ITMG_LOG_LEVEL | 设置写入日志的等级,TMG_LOG_LEVEL_NONE 表示不写入,默认为 TMG_LOG_LEVEL_INFO |
levelPrint | ITMG_LOG_LEVEL | 设置打印日志的等级,TMG_LOG_LEVEL_NONE 表示不打印,默认为 TMG_LOG_LEVEL_ERROR |
ITMG_LOG_LEVEL | 含义 |
TMG_LOG_LEVEL_NONE | 不打印日志 |
TMG_LOG_LEVEL_ERROR | 打印错误日志(默认) |
TMG_LOG_LEVEL_INFO | 打印提示日志 |
TMG_LOG_LEVEL_DEBUG | 打印开发调试日志 |
TMG_LOG_LEVEL_VERBOSE | 打印高频日志 |
ITMGContextGetInstance()->SetLogLevel(TMG_LOG_LEVEL_INFO,TMG_LOG_LEVEL_INFO);
平台 | 路径 |
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 |
ITMGContext virtual int SetLogPath(const char* logDir)
参数 | 类型 | 含义 |
logDir | const char* | 路径 |
cosnt char* logDir = ""//自行设置路径ITMGContext* context = ITMGContextGetInstance();context->SetLogPath(logDir);
ITMGContext virtual const char* GetLogPath() = 0;
ITMGRoom virtual const char* GetQualityTips()
ITMGContextGetInstance()->GetRoom()->GetQualityTips();
消息 | 含义 | 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_EVNET_TYPE_USER_UPDATE | 房间成员更新消息 | user_list; event_id | {"event_id":1,"user_list":["0"]} |
ITMG_MAIN_EVENT_TYPE_RECONNECT_START | 房间重连开始消息 | result; error_info | {"error_info":"","result":0} |
ITMG_MAIN_EVENT_TYPE_RECONNECT_SUCCESS | 房间重连成功消息 | result; error_info | {"error_info":"","result":0} |
ITMG_MAIN_EVENT_TYPE_SWITCH_ROOM | 快速切换房间消息 | result; error_info | {"error_info":"","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_ROOM_SHARING_START | 开始跨房连麦消息 | result; | {"result":0} |
ITMG_MAIN_EVENT_TYPE_ROOM_SHARING_STOP | 跨房连麦停止消息 | result; | {"result":0} |
ITMG_MAIN_EVENT_TYPE_SPEAKER_DEFAULT_DEVICE_CHANGED | 默认扬声器设备修改消息 | 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_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_EVENT_TYPE_MIC_DEFAULT_DEVICE_CHANGED | 默认麦克风设备修改消息 | 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_EVENT_TYPE_CHANGE_ROOM_QUALITY | 房间质量消息 | weight; loss; delay | {"weight":5,"loss":0.1,"delay":1} |
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} |
ITMG_MAIN_EVNET_TYPE_PTT_STREAMINGRECOGNITION_IS_RUNNING | 语音消息正在流式转文本中 | result; file_path; text;file_id | {"file_id":"","file_path":","text":"","result":0} |
ITMG_MAIN_EVNET_TYPE_PTT_TEXT2SPEECH_COMPLETE | 文本转语音完成消息 | result; text;file_id | {"file_id":"","text":"","result":0} |
ITMG_MAIN_EVNET_TYPE_PTT_TRANSLATE_TEXT_COMPLETE | 文本翻译完成消息 | result; text;file_id | {"file_id":"","text":"","result":0} |
本页内容是否解决了您的问题?