tencentLiveRoom

## 腾讯云连麦互动直播

该插件可以实现腾讯云连麦互动,支持主播创建新的直播间开播,观众进入直播间观看、主播和观众进行视频连麦互动、两个不同房间的主播 PK 互动,每一个直播间都有一个不限制房间人数的聊天室,支持发送各种文本消息和自定义消息,自定义消息可用于实现弹幕、点赞和礼物。

技术支持

扫码获取技术支持,引导您跑通Demo和插件接入:

技术支持

技术支持微信号: ruanyunkeji006

论坛示例

论坛中有我们的使用教程以及示例代码,您可以Demo进入查看详情,联系上方我们技术支持协助接入。

## 接口列表

初始化与监听

接口列表 功能
init 初始化
setLiveRoomListener 设置监听
removeLiveRoomListener 移除监听
destroy 销毁

登录与登出

接口列表 功能
login 登录
logout 登出
setSelfProfile 修改个人信息

房间相关

接口列表 功能
getRoomList 获取房间列表
getAudienceList 获取观众列表
createRoom 创建房间
enterRoom 进入房间(观众调用)
exitRoom 离开房间
setCustomInfo 设置当前房间的扩展信息字段
getCustomInfo 获取当前房间的扩展字段信息

主播和观众连麦

接口列表 功能
setLinkMicListener 设置连麦监听
removeLinkMicListener 移除连麦监听
joinAnchor 观众请求连麦
responseJoinAnchor 主播处理连麦请求
joinAnchor 进入连麦状态
quitJoinAnchor 观众退出连麦
kickoutJoinAnchor 主播踢除连麦观众

主播跨房间PK

接口列表 功能
setRoomPKListener 设置主播PK监听
removeRoomPKListener 移除主播PK监听
requestRoomPK 请求跨房PK
responseRoomPK 响应跨房PK请求
quitRoomPK 退出跨房PK

视频相关

接口列表 功能
startLocalPreview 开启本地视频的预览画面
stopLocalPreview 停止本地视频采集及预览
setRemotePlayListener 设置远程播放监听
removeRemotePlayListener 移除远程播放监听
startRemoteView 启动渲染远端视频画面
stopRemoteView 停止渲染远端视频画面
setMirror 设置观众端镜像效

音频相关

接口列表 功能
muteLocalAudio 是否屏蔽本地音频
muteRemoteAudio 设置指定用户是否静音
muteAllRemoteAudio 设置所有远端用户是否静音

摄像头控制

接口列表 功能
switchCamera 切换前后摄像头
setCameraMuteImage 主播屏蔽摄像头期间需要显示的等待图片
setZoom 调整焦距
enableTorch 打开闪关灯
setFocusPosition 设置手动对焦区域

美颜滤镜

接口列表 功能
setBeautyStyle 设置美颜类型
setBeautyLevel 设置美颜级别
setWhitenessLevel 设置美白级别
setRuddyLevel 设置红润级别
setFilter 设置指定素材滤镜特效
setFilterStrength 设置滤镜浓度

消息发送

接口列表 功能
sendRoomTextMsg 发送文本消息
sendRoomCustomMsg 发送自定义文本消息

背景混音

接口列表 功能
setBGMListener 设置背景音乐监听
removeBGMListener 移除背景音乐监听
playBGM 播放背景音乐
stopBGM 停止播放背景音乐
pauseBGM 暂停播放背景音乐
getMusicDuration 获取音乐总时长
setBGMVolume 设置背景音乐的音量大小
setBGMPitch 调整背景音乐的音调高低
setReverbType 设置混响效果
setVoiceChangerType 设置变声类型

插件接口

init

初始化

init({params}, ret)

params

licence:

  • 类型: JSON对象
  • 描述: (必填项) 许可证信息
  • 内部字段:
{
    key: '00e374e0xxxxx60e8cbb',
    url: 'http://license.vod2.myqcloud.com/license/v1/66xxxx73baa1/TXLiveSDK.licence'
}
  • 字段详情:

key:

  • 类型: 字符串类型
  • 描述: (可选项) 许可证的key

url:

  • 类型: 字符串类型
  • 描述: (可选项) 许可证的地址

docPath:

  • 类型: 字符串类型
  • 描述: (必填项) doc目录路径
  • 默认值: plus.io.convertLocalFileSystemURL('_doc')

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

代码示例

liveRoom.init({
    isServerAuth: true,
    sdkAppId: 140xxxx797,
    licence: {
        url: 'http://license.vod2.myqcloud.com/license/v1/661xxxaa1/TXLiveSDK.licence',
        key: '00e374e07xxx60e8cbb'
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

setLiveRoomListener

设置推流监听

setLiveRoomListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}

回调事件:

{
    eventType: 'onAnchorEnter'
}

eventType:

  • 类型: 字符串类型
  • 描述: 推流事件

通用事件回调:

  • onError: 错误回调

房间事件回调:

  • onRoomDestroy: 房间被销毁的回调
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

##代码示例

liveRoom.setLiveRoomListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#removeLiveRoomListener

移除推流监听器

removeLiveRoomListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.removeLiveRoomListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#destroy

销毁

destroy({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.destroy({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#login

开启摄像头预览

login({params}, ret)

params

sdkAppId:

  • 类型: 整数类型
  • 描述: (必填项) 应用Id

userId:

  • 类型: 字符串类型
  • 描述: (必填项) 用户Id

userSig:

  • 类型: 字符串类型
  • 描述: (可选项) 用户签名

userName:

  • 类型: 字符串类型
  • 描述: (必填项) 用户名

avatarUrl:

  • 类型: 字符串类型
  • 描述: (必填项) 头像地址

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.login({
    sdkAppId: 1400xxx797, 
    userId: 'test001', 
    userSig: 'afdas123xxxxxdfs12', 
    userName: 'lucy', 
    avatarUrl: 'https://jcq-1251049911.cos.ap-guangzhou.myqcloud.com/avatar001.jpg'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#logout

更新推流视图界面

logout({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.logout({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setSelfProfile

摄像头推流

setSelfProfile({params}, ret)

params

userName:

  • 类型: 字符串类型
  • 描述: (可选项) 用户昵称

avatarUrl:

  • 类型: 字符串类型
  • 描述: (可选项) 头像地址

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setSelfProfile({
    userName: 'Lucy', 
    avatarUrl: 'http://xxx.xxx.xxx/avatar001.png'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#getRoomList

获取房间列表

getRoomList({params}, ret)

params

index:

  • 类型: 整数类型
  • 描述: (必填项) 房间开始索引,从0开始计算

count:

  • 类型: 整数类型
  • 描述: (必填项) 希望后台返回的房间个数

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true, 	// 布尔类型, true表示操作成功
    roomInfoList: [
        roomInfo,
        ...
    ]
}
  • 字段详情:

roomInfo:

  • 类型: JSON对象
  • 描述: 房间信息
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.getRoomList({
    index: 0, 
    count: 10
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#getAudienceList

获取观众列表

getAudienceList({params}, ret)

params

roomId:

  • 类型: 字符串类型
  • 描述: (必填项) 房间标识

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.getAudienceList({
    roomId: 'room001'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#createRoom

创建房间(主播调用)

createRoom({params}, ret)

params

roomId:

  • 类型: 字符串类型
  • 描述: (必填项) 房间标识,推荐做法是用主播的 userID 作为房间的 roomID,这样省去了后台映射的成本。room ID 可以填空,此时由后台生成

roomInfo:

  • 类型: 字符串类型
  • 描述: (非必填) 房间信息,用于房间描述的信息,如房间名称,允许使用 JSON 格式作为房间信息

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.createRoom({
    roomId: 'room001',
    roomInfo: 'This is room info'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#enterRoom

进入房间(观众调用)

enterRoom({params}, ret)

params

roomId:

  • 类型: 字符串类型
  • 描述: (必填项) 房间标识

rect:

  • 类型: JSON对象
  • 描述: (必填项) 视频的位置和大小

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.enterRoom({
    roomId: self.remoteUserId, 
    rect: {
        x: 0, 
        y: 0, 
        w: self.playerWidth, 
        h: self.playerHeight
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#exitRoom

离开房间

exitRoom({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.exitRoom({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

#setCustomInfo

设置当前房间的扩展信息字段

setCustomInfo({params}, ret)

params

op:

  • 类型: 整数类型
  • 描述: (必填项) 执行动作

key:

  • 类型: 字符串类型
  • 描述: (必填项) 自定义键

value:

  • 类型: 字符串或整数类型
  • 描述: (必填项) 键值

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setCustomInfo({
    op: self.op, 
    key: self.key, 
    value: self.value
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#getCustomInfo

获取当前房间的扩展信息字段

getCustomInfo({params}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.getCustomInfo({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setLinkMicListener

观众设置连麦监听

setLinkMicListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setLinkMicListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#removeLinkMicListener

移除观众连麦监听

removeLinkMicListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

##代码示例

liveRoom.removeLinkMicListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#requestJoinAnchor

观众请求连麦

requestJoinAnchor({params}, ret)

主播和观众的连麦流程可以简单描述为如下几个步骤:

  1. 观众调用 requestJoinAnchor 向主播发起连麦请求。
  2. 主播会收到 setLiveRoomListener的 onRequestJoinAnchor 的回调通知。
  3. 主播调用 responseJoinAnchor 确定是否接受观众的连麦请求。
  4. 观众调用setLinkMicListener会收到 requestJoinAnchor 传入的回调通知,可以得知请求是否被同意。
  5. 观众如果请求被同意,则调用 startLocalPreview 开启本地摄像头,如果 App 还没有取得摄像头和麦克风权限,会触发 UI 提示。
  6. 观众然后调用 joinAnchor 正式进入连麦状态。
  7. 主播一旦观众进入连麦状态,主播就会收到 setLiveRoomListener的 onAnchorEnter 通知。
  8. 主播调用 startRemoteView 就可以看到连麦观众的视频画面。
  9. 观众如果直播间里已经有其他观众正在跟主播进行连麦,那么新加入的这位连麦观众也会收到 setLiveRomListener的 onAnchorJoin 通知,用于展示(startRemoteView)其他连麦者的视频画面。

params

reason:

  • 类型: 字符串类型
  • 描述: (必填项) 连麦原因

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.requestJoinAnchor({
    reason: self.reason
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#responseJoinAnchor

主播处理连麦请求

responseJoinAnchor({params}, ret)

主播在收到 setLiveRoomListener的 onRequestJoinAnchor 回调之后会需要调用此接口来处理观众的连麦请求。

params

userId:

  • 类型: 字符串类型
  • 描述: (必填项) 观众Id

isAgree:

  • 类型: 布尔类型
  • 描述: (必填项) true表示同意, false表示拒绝

reason:

  • 类型: 字符串类型
  • 描述: (必填项) 同意/拒绝连麦的原因描述

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误描述' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.responseJoinAnchor({
    userId: 'test002', 
    isAgree: true, 
    reason: 'This is a reason'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#joinAnchor

进入连麦状态

joinAnchor({}, ret)

进入连麦成功后,主播和其他连麦观众会收到 setLiveRoomListener的 onAnchorEnter 通知

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.joinAnchor({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#quitJoinAnchor

观众退出连麦

quitJoinAnchor({}, ret)

退出连麦成功后,主播和其他连麦观众会收到 setLiveRoomListener的 onAnchorExit 通知

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.quitJoinAnchor({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#kickoutJoinAnchor

主播踢除连麦观众

kickoutJoinAnchor({params}, ret)

params

userId:

  • 类型: 字符串类型
  • 描述: (必填项) 连麦小主播Id

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.kickoutJoinAnchor({
    userId: 'test002'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setRoomPKListener

设置主播跨房间PK监听

setRoomPKListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setRoomPKListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#removeRoomPKListener

移除主播PK监听

removeRoomPKListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true, 	// 布尔类型, true表示操作成功
    isFront: true
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.removeRoomPKListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
 });

可用性

iOS系统

可提供的1.0.0及更高版本

#requestRoomPK

请求跨房 PK

requestRoomPK({params}, ret)

主播和主播之间可以跨房间 PK,两个正在直播中的主播 A 和 B,他们之间的跨房 PK 流程如下:

  1. 主播 A 调用 requestRoomPK 向主播 B 发起连麦请求。
  2. 主播 B 会收到 setLiveRoomListener 的 onRequestRoomPK 回调通知。
  3. 主播 B 调用 responseRoomPK 确定是否接受主播 A 的 PK 请求。
  4. 主播 B 如果接受了主播 A 的要求,可以直接调用 startRemoteView 来显示主播 A 的视频画面。
  5. 主播 A 会通过setRoomPKListener 收到回调通知,可以得知请求是否被同意。
  6. 主播 A 如果请求被同意,则可以调用 startRemoteView 显示主播 B 的视频画面。

params

userId:

  • 类型: 字符串类型
  • 描述: (必填项) 被邀约主播Id

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.requestRoomPK({
    userId: 'test002'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#responseRoomPK

响应跨房 PK 请求

responseRoomPK({params}, ret)

params

anchor:

  • 类型: JSON对象
  • 描述: (必填项) 发起 PK 请求的主播

isAgree:

  • 类型: 布尔类型
  • 描述: (必填项) true表示同意,false表示拒绝

reason:

  • 类型: 字符串类型
  • 描述: (必填项) 同意或拒绝 PK 的原因描述

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.responseRoomPK({
    anchor: {
        userId: 'test002', 
        userName: 'Lily', 
        userAvatar: 'http://xxxx.xxx.xxx/xxx.png',
        accelerateUrl: 'http://xxx.xxx.xxx/xxx'
    },
    isAgree: true,
    reason: 'This is a reason'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

#quitRoomPK

获取摄像头支持的焦距

quitRoomPK({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	  // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.quitRoomPK({
    anchor: {
        userId: 'test002', 
        userName: 'Lily', 
        userAvatar: 'http://xxxx.xxx.xxx/xxx.png',
        accelerateUrl: 'http://xxx.xxx.xxx/xxx'
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

Android系统

可提供的1.0.0及更高版本

#startLocalPreview

开启本地视频的预览画面

startLocalPreview({params}, ret)

params

isFront:

  • 类型: 布尔类型
  • 描述: (必填项) true前置摄像头, false后置摄像头

rect:

  • 类型: JSON对象
  • 描述: (必填项) 视频显示的位置和大小

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	  // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

##代码示例

liveRoom.startLocalPreview({
    isFront: true, 
    rect: {
        x: 0, 
        y: 0, 
        w: self.playerWidth / 2, 
        h: self.playerHeight / 2
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#stopLocalPreview

停止本地视频采集及预览

stopLocalPreview({params}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.stopLocalPreview({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setRemotePlayListener

设置远端播放监听

setRemotePlayListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

##示范代码

liveRoom.setRemotePlayListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#removeRemotePlayListener

移除远程播放监听

removeRemotePlayListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911,    	// 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.removeRemotePlayListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#startRemoteView

启动渲染远端视频画面

startRemoteView({params}, ret)

params

anchor:

  • 类型: JSON对象
  • 描述: (必填项) 对方的用户信息

rect:

  • 类型: JSON对象
  • 描述: (必填项) 显示区域的位置和大小

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}

err:

  • 类型: JSON对象
  • 内部字段:
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.startRemoteView({
    anchor: {
        userId: 'test002', 
        userName: 'Lily', 
        userAvatar: 'http://xxxx.xxx.xxx/xxx.png',
        accelerateUrl: 'http://xxx.xxx.xxx/xxx'
    },
    rect: {
        x: 0, 
        y: 0, 
        w: self.playerWidth, 
        h: self.playerHeight
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#stopRemoteView

停止渲染远端视频画面

stopRemoteView({params}, ret)

params

anchor:

  • 类型: JSON对象
  • 描述: (必填项) 对方的用户

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.stopRemoteView({
    anchor: {
        userId: 'test002', 
        userName: 'Lily', 
        userAvatar: 'http://xxxx.xxx.xxx/xxx.png',
        accelerateUrl: 'http://xxx.xxx.xxx/xxx'
    }
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setMirror

设置观众端镜像效果

setMirror({params}, ret)

由于前置摄像头采集的画面是取自手机的观察视角,将采集到的画面直接展示给观众是没有问题的,但如果将采集到的画面也直接显示给主播,会让主播感受到和照镜子时完全相反的体验,主播会感到很奇怪。 因此,SDK 会默认开启本地摄像头预览画面的镜像效果,让主播直播时感受到和照镜子一样的体验效果。 setMirror 所影响的是观众端看到的视频效果,如果想要保持观众端看到的效果跟主播端保持一致,需要开启镜像; 如果想要让观众端看到正常的未经处理过的画面(如主播弹吉他的时候有类似需求),则可以关闭镜像。

说明: 仅当前使用前置摄像头时,setMirror 接口才会生效,在使用后置摄像头时此接口无效。

params

isMirror:

  • 类型: 布尔类型
  • 描述: (必填项) true表示播放端看到的是镜像画面;false表示播放端看到的是非镜像画面

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setMirror({
    isMirror: true
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#muteLocalAudio

是否屏蔽本地音频

muteLocalAudio({params}, ret)

params

isMute:

  • 类型: 布尔类型
  • 描述: (必填项) true表示屏蔽;false表示开启

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.muteLocalAudio({
    isMute: true
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#muteRemoteAudio

设置指定用户是否静音

muteRemoteAudio({params}, ret)

params

userId:

  • 类型: 字符串类型
  • 描述: (必填项) 对方的用户标识

isMute:

  • 类型: 布尔类型
  • 描述: (必填项) true表示静音, false表示非静音

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911,    	// 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.muteRemoteAudio({
    userId: 'test002', 
    isMute: true
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#muteAllRemoteAudio

设置所有远端用户是否静音

muteAllRemoteAudio({params}, ret)

params

isMute:

  • 类型: 布尔类型
  • 描述: (必填项) true表示静音, false表示非静音

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.muteAllRemoteAudio({
    isMute: true
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#switchCamera

切换前后摄像头

switchCamera({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.switchCamera({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setCameraMuteImage

主播屏蔽摄像头期间需要显示的等待图片

setCameraMuteImage({params}, ret)

当主播屏蔽摄像头,或者由于 App 切入后台无法使用摄像头的时候,我们需要使用一张等待图片来提示观众“主播暂时离开,请不要走开”。

params

img:

  • 类型: 字符串类型
  • 描述: (必填项) 等待图片

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

##代码示例

liveRoom.setCameraMuteImage({
    img: '/xxxx/xxxx/xxx.png'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setZoom

调整焦距

setZoom({params}, ret)

说明: 当为1的时候为最远视角(正常镜头),当为5的时候为最近视角(放大镜头),这里最大值推荐为5,超过5后视频数据会变得模糊不清。

params

distance:

  • 类型: 浮点数类型
  • 描述: (必填项) 焦距大小
  • 取值范围: 1 - 5

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

##代码示例

liveRoom.setZoom({
    distance: 3
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#enableTorch

打开闪关灯

enableTorch({params}, ret)

params

enable:

  • 类型: 布尔类型
  • 描述: (必填项) true表示打开, false表示关闭

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.enableTorch({
    enable: true
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setFocusPosition

设置手动对焦区域

setFocusPosition({params}, ret)

介绍

SDK 默认使用摄像头自动对焦功能,您也可以通过 TXLivePushConfig 中的 touchFocus 选项关闭自动对焦,改用手动对焦。 改用手动对焦之后,需要由主播自己单击摄像头预览画面上的某个区域,来手动指导摄像头对焦。

params

x:

  • 类型: 整数类型
  • 描述: (必填项) x坐标

y:

  • 类型: 整数类型
  • 描述: (必填项) y坐标

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setFocusPosition({
    x: 5, 
    y: 5
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统

可提供的1.0.0及更高版本

#setBeautyStyle

设置美颜类型

setBeautyStyle({params}, ret)

params

style:

  • 类型: 整数类型
  • 描述: (必填项) 美颜类型

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setBeautyStyle({
    style: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setBeautyLevel

设置美颜级别

setBeautyLevel({params}, ret)

params

level:

  • 类型: 浮点数类型
  • 描述: (必填项) 美颜级别。0表示关闭,1 - 9值越大,效果越明显。
  • 取值范围: [0 - 9]

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setBeautyLevel({
    level: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setWhitenessLevel

设置美白级别

setWhitenessLevel({params}, ret)

params

level:

  • 类型: 浮点数类型
  • 描述: (必填项) 美白级别;0表示关闭,1 - 9值越大,效果越明显。
  • 取值范围: [0 - 9]

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setWhitenessLevel({
    level: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setRuddyLevel

设置红润级别

setRuddyLevel({params}, ret)

params

level:

  • 类型: 浮点数类型
  • 描述: (必填项) 红润级别;0表示关闭,1 - 9值越大,效果越明显。
  • 取值范围: [0 - 9]

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true // 布尔类型, true表示操作成功
    duration: 11000
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setRuddyLevel({
    level: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setFilter

设置指定素材滤镜特效

setFilter({params}, ret)

params

img:

  • 类型: 字符串类型
  • 描述: (必填项) 指定素材,即颜色查找表图片

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setFilter({
    img: '/xxx/xxx/xxx.png'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setFilterStrength

设置滤镜浓度

setFilterStrength({params}, ret)

params

strength:

  • 类型: 浮点数类型
  • 描述: (必填项) 从0到1,越大滤镜效果越明显
  • 默认值: 0.5

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setFilterStrength({
    strength: 0.6
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#sendRoomTextMsg

发送文本消息

sendRoomTextMsg({params}, ret)

params

msg:

  • 类型: 字符串类型
  • 描述: (必填项) 文本消息

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.sendRoomTextMsg({
    msg: 'This is a message'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#sendRoomCustomMsg

发送自定义文本消息

sendRoomCustomMsg({params}, ret)

params

cmd:

  • 类型: 字符串类型
  • 描述: (必填项) 命令字,由开发者自定义,主要用于区分不同消息类型

msg:

  • 类型: 字符串类型
  • 描述: (必填项) 文本消息

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.sendRoomCustomMsg({
    cmd: 'This is a cmd', 
    msg: 'This is a message'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setBGMListener

设置背景音乐监听

setBGMListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setBGMListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#removeBGMListener

移除背景音乐监听

removeBGMListener({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.removeBGMListener({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#stopBGM

停止播放背景音乐

stopBGM({params}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.stopBGM({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#pauseBGM

暂停播放背景音乐

pauseBGM({}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.pauseBGM({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#resumeBGM

继续播放背景音乐

resumeBGM({params}, ret)

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.resumeBGM({}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#getMusicDuration

获取音乐文件总时长,单位毫秒

getMusicDuration({params}, ret)\

params

path:

  • 类型: 字符串类型
  • 描述: (可选项) 音乐文件路径,如果不传入,那么返回当前正在播放的背景音乐时长

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.getMusicDuration({
    path: 'http://bgm.xxxxx.com/keluodiya.mp3'
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setMicVolume

设置麦克风的音量大小,播放背景音乐混音时使用,用来控制麦克风音量大小

setMicVolume({params}, ret)

params

volume:

  • 类型: 浮点数类型
  • 描述: (必填项) 音量大小,1.0 为正常音量; 建议值为0.0 - 2.0

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setMicVolume({
    volume: 1.0
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setBGMVolume

设置背景音乐的音量大小,播放背景音乐混音时使用,用来控制背景音音量大小

setBGMVolume({params}, ret)

params

volume:

  • 类型: 浮点数类型
  • 描述: (必填项) 音量大小,1.0为正常音量,建议值为0.0 - 2.0

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setBGMVolume({
    volume: 0.8
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setBGMPitch

调整背景音乐的音调高低

setBGMPitch({params}, ret)

params

pitch:

  • 类型: 浮点数类型
  • 描述: (必填项) 音调
  • 取值范围: [-1 - 1]
  • 默认值: 0.0

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setBGMPitch({
    pitch: 0.2
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setReverbType

设置混响效果

setReverbType({params}, ret)

params

type:

  • 类型: 整数类型
  • 描述: (必填项) 混响类型
  • 取值范围:
    • 0: 关闭混响
    • 1: KTV
    • 2: 小房间
    • 3: 大会堂
    • 4: 低沉
    • 5: 洪亮
    • 6: 金属声
    • 7: 磁性

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setReverbType({
    type: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

#setVoiceChangerType

设置变声类型

setVoiceChangerType({params}, ret)

params

type:

  • 类型: 整数类型
  • 描述: (必填项) 混响类型
  • 取值范围:
    • 0: 关闭变声
    • 1: 熊孩子
    • 2: 萝莉
    • 3: 大叔
    • 4: 重金属
    • 5: 感冒
    • 6: 外国人
    • 7: 困兽
    • 8: 死肥仔
    • 9: 强电流
    • 10: 重机械
    • 11: 空灵

callback

ret:

  • 类型: JSON对象
  • 内部字段:
{
    status: true 	// 布尔类型, true表示操作成功
}
{
    code: -911, 	   // 整数类型, 错误码
    msg: '错误信息' 	// 字符串类型, 错误信息
}

示例代码

liveRoom.setVoiceChangerType({
    type: 1
}, ret => {
    if (ret) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS系统,Android系统

可提供的1.0.0及更高版本

##更多功能

更多功能,请联系我们。

技术支持

技术支持微信号: ruanyunkeji006

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18