开发 技术接口总览 直播弹幕技术基础能力 玩法主播双人连屏功能
# 快手直播弹幕玩法主播双人连屏文档
更新时间:2024-11-22 14:44:20
# 文档更新记录:
2023年08月04日10:36:27
1.由于推流的特殊原因,连线配置摄像头宽度和高度设置必须是偶数。
2023年08月01日14:44:13
1.连线配置要求更新,现在允许在一定范围内调整视频连线窗口大小了。
摄像头尺寸规范:最小宽高160x160px,最大宽高444x444px,即width, height ∈ [160,444]
建议4种比例尺寸:
方形230x230px
横屏282x160px
竖屏160x282px
方形444x444px(推荐):能够获得更多的流量
原则,同屏出现的多个摄像头比例必须一致
2.功能已支持间内用户跳转到pk方(对面)主播直播间,需要更新快手app至最新版本。
2023年07月24日15:21:36
1.补充伴侣版本要求:最低要求伴侣版本4.47.0
2023年06月25日16:54:36
1.心跳及结束协议需要带上本次连线的roomCode
# 功能简介:
弹幕玩法语音是一种常见的能力,此外,主播之间的隔空喊话,可以起到引导直播间氛围,拉动观众参与度的能力。快手在普通语音连线的基础上,对外开放快手直播独特的视频连线能力,实现弹幕玩法内主播同屏,进一步提升间内对抗氛围,提升观众参与度。
业务表现
目前支持两种连线方式:
# 1.弹幕玩法内pk发起连线。
在主播弹幕玩法内匹配到对手开始pk时,快手会为当前两个主播建立视频连线。
此模式下,视频连线的生命周期与弹幕玩法pk生命周期一致,即当弹幕玩法开始pk时,连线会被发起,弹幕玩法pk结束时,连线结束,生命周期中,使用心跳兜底保证状态的最终一致。
此外,cp服务可根据游戏特点决定stop调用时机,比如玩法内pk结束后,延迟一定的时间调用stop,以给予一定的时间让主播进行战后交流。
由于弹幕玩法多样性,具体两个主播所在位置由弹幕玩法服务器决定,具体交互方式见下方接口。
# 2.主播伴侣发起连线。
主播在直播伴侣发起连线,主播可以选择当前正在玩同款弹幕玩法的主播进行连线,此时弹幕玩法内pk对象可能与连线对象并不一样,弹幕玩法可根据需要灵活开发玩法功能。
注意:两个子功能是互斥关系,即某个主播在同一时刻只能使用其中一种方式连线,且不会被另一个方式中断。
# 版本要求:
pc直播伴侣:4.47.0版本及以上
# 具体接口:
# 连线:
使用弹幕玩法内发起连线或者伴侣发起连线,均需要上传连线配置。连线配置中包含配置的版本号及连线窗口id及位置信息。调用时机推荐在本场直播开始时,可参考礼物置顶的调用时机。
# 请求地址
Method: POST
URL: https://open.kuaishou.com/openapi/developer/live/data/interactive/action/chat
"Content-Type": "application/json;charset=UTF-8"
# 请求参数
字段名 | 数据类型 | 是否必填 | 是否参与签名 | 说明 |
roomCode | string | 是 | 是 | 快手直播间绑定码,主播在打开弹幕玩法详情时可以获取 |
timestamp | int(64) | 是 | 是 | 建立连接时间戳,单位毫秒 |
sign | string | 是 | 否 | 开发者对核心字段签名,签名方式见 附录 注意: app_id需要参与签名 app_secret直接追加在最后 签名的参数需要按首字母排序 |
bizType | string | 是 | 是 | 业务类型:chat:连线,和url后缀一致 |
method | string | 是 | 是 | 业务方法: config:连线配置上传,调用时机可参考礼物置顶 start: 开始连线,发起连线方调用即可 heartbeat:保活心跳。如果间隔20秒还未收到心跳,将断开连线,建议5-10秒发一次请求,发起连线方调用即可 stop: 结束连线,发起连线方调用即可 |
data | string | 是 | 是 | 业务参数,见下表 |
# 各method及data字段说明:
method | 请求示例 | 字段说明 |
config |
| data转义前
|
start |
| data转义前
hostAuthor2Layout举例:
|
heartbeat |
| data转义前
|
stop |
| data转义前
|
# 请求response示例
{
"result": 1,
// 如果result 不是 1, 会有error_msg
"errorMsg": "xxxx"
}
# 错误码
错误码 | 错误文案 |
21 | access-token校验失败 无权限访问该路径 未接入的appId 房间码不合法 直播不存在 直播已关播 |
220361 | 系统异常 |
220362 | 操作频繁 |
220363 | APP限流 |
220365 | 无弹幕玩法中记录 |
220368 | appId与弹幕玩法记录不一致 |
220931 | 连线配置错误 |
220932 | 连线配置不存在 |
220933 | 所有的roomCode无效 |
220934 | 意料外错误,请联系快手接口人 |
220935 | 连线roomCode或cpPkId错误 |
220936 | 连线类型错误 |
220937 | 关闭连线失败,请稍后重试 |
220938 | 开启连线失败,请稍后重试 |
220939 | 连线已关闭 |
220940 | 主播连线配置不同 |
220941 | 服务异常 |
220942 | 直播和连线不匹配 |
220943 | 不是占位连线 |
220944 | 未开启弹幕玩法 |
220945 | 伴侣版本不支持 |
220946 | 主播正在连线 |
220947 | 主播正在其他互动,无法连线 |
220948 | 连线参数检验失败 |
220949 | 未知method |
220950 | 未知Biz |
220951 | 不允许连线,详情请联系快手对接人 |
220952 | cpPkId重复 |
# FAQ
心跳需要连线双方都发吗?
答:不需要,连线发起方发起心跳即可
心跳正常但连线断开常见原因有哪些?
答:可能原因如下
a. 两个主播其中一个主动关闭了连线
b. 主播进入自己的直播间触发连线关闭(概率性)
c. 任意一方直播异常断开
d. 心跳时间过长
e. 并行请求心跳,会有一个失败
平台是否支持多人连屏能力?
答:目前平台支持的基础功能,双人连屏能力。暂未支持多人连屏。
连屏使用场景有哪些?
双人pk场景
两方主播共同合作模式等
具体使用场景,可根据玩法内容进行相关设计