注意:GME 3.x 版本暂不支持实时语音角色设置功能。
为方便开发者调试和接入腾讯云游戏多媒体引擎产品 API,本文向您介绍游戏多媒体引擎国战语音模式的接入流程。
使用场景
在国战游戏场景中,GME 提供主播以及听众两种角色,如果在进房前设置为主播,则进房之后可以打开麦克风发言以及打开扬声器听房间内的交流声音;如果使用听众角色进入房间,进房之后即使打开了麦克风也无法在房间内发言。
前提条件
已完成 GME 应用创建,并获取 SDK AppID 和 Key。请参考 服务开通指引。 接入步骤
接入国战语音模式流程如下:
步骤1:使用 GME 服务
步骤2:设置角色
在进房 EnterRoom 接口调用之前,需要调用设置角色接口,设置本端在实时语音中的角色。
函数原型
public abstract int SetAudioRole(ITMG_AUDIO_MEMBER_ROLE role);
|
| | ITMG_AUDIO_MEMBER_ROLE_ANCHOR 代表主播,在房间内可以打开麦克风及扬声器 ITMG_AUDIO_MEMBER_ROLE_AUDIENCE 代表听众,在房间内只能打开扬声器收听 |
示例代码
ITMGContext.GetInstance().SetAudioRole(ITMG_AUDIO_MEMBER_ROLE.ITMG_AUDIO_MEMBER_ROLE_AUDIENCE);
步骤3:使用实时语音服务
调用 EnterRoom 接口进入实时语音房间。
步骤4:打开麦克风
如果角色是主播,可以正常调用 EnableMic 接口以及 EnableSpeaker 接口打开麦克风以及扬声器。
如果角色是听众,可以正常使用 EnableSpeaker 接口打开扬声器,但是调用 EnableMic 接口时会返回 AV_ERR_INVALID_ARGUMENT(1004)错误码,提示此时是听众模式,打开麦克风无效。
步骤5:改变角色
在房间中可以调用 SetAudioRole 改变角色,如果此时:
未设置角色,则会转变成新设置的角色。
已经设置了角色,则会转变为新设置的角色。
如果此时未设置角色或者是主播角色,已经开启了麦克风正常通话,改变为听众角色后,麦克风依然是打开状态,此时建议业务层调用 EnableMic 接口修改麦克风状态,同时修改麦克风 UI 状态。
步骤6:退出房间
调用 ExitRoom 接口退出实时语音房间后,角色状态失效,需要重新设置角色。
本页内容是否解决了您的问题?