* 添加字段&优化格式 * 添加获取直播间信息
34 KiB
直播间基本信息
获取直播间信息
请求方式: GET
URL参数:
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
room_id | num | 直播间号 | 必要 | 可以为短号 |
json回复:
根对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 返回值 | 0:成功 1:不存在 |
message | str | 错误信息 | |
msg | str | 错误信息 | |
data | obj | 信息本体 |
data
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
uid | num | 主播mid | |
room_id | num | 直播间长号 | |
short_id | num | 直播间短号 | 为0是无短号 |
attention | num | 关注数量 | |
online | num | 观看人数 | |
is_portrait | bool | 是否竖屏 | |
description | str | 描述 | |
live_status | num | 直播状态 | 0:未开播 1:直播中 2:轮播中 |
area_id | num | 分区id | |
parent_area_id | num | 父分区id | |
parent_area_name | str | 父分区名称 | |
old_area_id | num | 旧版分区id | |
background | str | 背景图片链接 | |
title | str | 标题 | |
user_cover | str | 封面 | |
keyframe | str | 关键帧 | 用于网页端悬浮展示 |
is_strict_room | bool | 未知 | 未知 |
live_time | str | 直播开始时间 | YYYY-MM-DD HH:mm:ss |
tags | str | 标签 | ','分隔 |
is_anchor | num | 未知 | 未知 |
room_silent_type | str | 禁言状态 | |
room_silent_level | num | 禁言等级 | |
room_silent_second | num | 禁言时间 | 单位是秒 |
area_name | str | 分区名称 | |
pardants | str | 未知 | 未知 |
area_pardants | str | 未知 | 未知 |
hot_words | list(str) | 热词 | |
hot_words_status | num | 热词状态 | |
verify | str | 未知 | 未知 |
new_pendants | obj | 头像框\大v | |
up_session | str | 未知 | |
pk_status | num | pk状态 | |
pk_id | num | pk id | |
battle_id | num | 未知 | |
allow_change_area_time | num | ||
allow_upload_cover_time | num | ||
studio_info | obj |
new_pendants
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
frame | obj | 头像框 | |
mobile_frame | obj | 同上 | 手机版, 结构一致, 可能null |
badge | obj | 大v | |
mobile_badge | obj | 同上 | 手机版, 结构一致, 可能null |
frame
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
name | str | 名称 | |
value | str | 值 | |
position | num | 位置 | |
desc | str | 描述 | |
area | num | 分区 | |
area_old | num | 旧分区 | |
bg_color | str | 背景色 | |
bg_pic | str | 背景图 | |
use_old_area | bool | 是否旧分区号 |
badge
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
name | str | 类型 | v_person: 个人认证(黄) v_company: 企业认证(蓝) |
position | num | 位置 | |
value | str | 值 | |
desc | str | 描述 |
studio_info
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
status | num | ||
master_list | array |
示例:
查询直播间room_id=1
信息
curl -G 'https://api.live.bilibili.com/room/v1/Room/get_info' \
--data-urlencode 'room_id=1'
查看响应示例:
{
"code": 0,
"msg": "ok",
"message": "ok",
"data": {
"uid": 9617619,
"room_id": 5440,
"short_id": 1,
"attention": 11919499,
"online": 0,
"is_portrait": false,
"description": "欢迎加入bilibili《快乐运动研究社》,和B站UP主们一起探讨有关运动的经历感受,解决身体和情绪的“疑难杂症”,寻找适合自己的运动,一起跟练!本期我们一起探讨:运动健身能缓解社交恐惧吗?",
"live_status": 2,
"area_id": 145,
"parent_area_id": 1,
"parent_area_name": "娱乐",
"old_area_id": 6,
"background": "",
"title": "快乐运动研究社",
"user_cover": "https://i0.hdslb.com/bfs/live/new_room_cover/96943b8d106a777a34cf796421bb4254163b30e1.jpg",
"keyframe": "https://i0.hdslb.com/bfs/live-key-frame/keyframe08121926000000005440np0q7a.jpg",
"is_strict_room": false,
"live_time": "0000-00-00 00:00:00",
"tags": "",
"is_anchor": 0,
"room_silent_type": "",
"room_silent_level": 1,
"room_silent_second": 0,
"area_name": "视频聊天",
"pendants": "",
"area_pendants": "",
"hot_words": [
"2333333",
"喂,妖妖零吗",
"红红火火恍恍惚惚",
"FFFFFFFFFF",
"Yooooooo",
"啪啪啪啪啪",
"666666666",
"老司机带带我",
"你为什么这么熟练啊",
"gg",
"prprpr",
"向大佬低头",
"请大家注意弹幕礼仪哦!",
"还有这种操作!",
"囍",
"打call",
"你气不气?",
"队友呢?"
],
"hot_words_status": 0,
"verify": "",
"new_pendants": {
"frame": {
"name": "",
"value": "",
"position": 0,
"desc": "",
"area": 0,
"area_old": 0,
"bg_color": "",
"bg_pic": "",
"use_old_area": false
},
"badge": {
"name": "v_company",
"position": 3,
"value": "",
"desc": "哔哩哔哩直播官方账号"
},
"mobile_frame": {
"name": "",
"value": "",
"position": 0,
"desc": "",
"area": 0,
"area_old": 0,
"bg_color": "",
"bg_pic": "",
"use_old_area": false
},
"mobile_badge": null
},
"up_session": "",
"pk_status": 0,
"pk_id": 0,
"battle_id": 0,
"allow_change_area_time": 0,
"allow_upload_cover_time": 0,
"studio_info": {
"status": 0,
"master_list": []
}
}
}
获取用户对应的直播间状态
请求方式:GET
url参数:
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
mid | num | 目标用户mid | 必要 |
json回复:
根对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 返回值 | 0:成功 -400:请求错误 |
message | str | 错误信息 | 默认为0 |
ttl | num | 1 | |
data | obj | 信息本体 |
data
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
roomStatus | num | 直播间状态 | 0:无房间 1:有房间 |
roundStatus | num | 轮播状态 | 0:未轮播 1:轮播 |
live_status | num | 直播状态 | 0:未开播 1:直播中 |
url | str | 直播间网页url | |
title | str | 直播间标题 | |
cover | str | 直播间封面url | |
online | num | 直播间人气 | 值为上次直播时刷新 |
roomid | num | 直播间id(短号) | |
broadcast_type | num | 0 | |
online_hidden | num | 0 |
示例:
查询用户mid=322892
的直播间信息
curl -G 'https://api.live.bilibili.com/room/v1/Room/getRoomInfoOld' \
--data-urlencode 'mid=322892'
查看响应示例:
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"roomStatus": 1,
"roundStatus": 0,
"live_status": 1,
"url": "https://live.bilibili.com/5441",
"title": "好久没当黑铁主播了",
"cover": "http://i0.hdslb.com/bfs/live/room_cover/833f7ff506bac17c06010e8834922993657505b2.jpg",
"online": 268602,
"roomid": 5441,
"broadcast_type": 0,
"online_hidden": 0
}
}
获取房间页初始化信息
请求方式:GET
url参数:
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
id | num | 目标直播间号(短号) | 必要 |
json回复:
根对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 返回值 | 0:成功 60004:直播间不存在 |
msg | str | 错误信息 | 默认为ok |
message | str | 错误信息 | 默认为ok |
data | obj | 信息本体 |
data
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
room_id | num | 直播间真实id | |
short_id | num | 直播间id(短号) | |
uid | num | 主播用户mid | |
need_p2p | num | 是否p2p | |
is_hidden | bool | 是否隐藏 | |
is_locked | bool | 是否锁定 | |
is_portrait | bool | 是否竖屏 | |
live_status | num | 直播状态 | 0:未开播 1:直播中 2:轮播中 |
hidden_till | num | 隐藏时间戳 | |
lock_till | num | 锁定时间戳 | |
encrypted | bool | 是否加密 | |
pwd_verified | bool | 加密房间是否通过密码验证 | encrypted =true时才有意义 |
live_time | num | 开播时间 | 未开播时为-62170012800 |
room_shield | num | 未知 | |
is_sp | num | 是否为特殊直播间 | 0:普通直播间 1:付费直播间 |
special_type | num | 特殊直播间标志 | 0:普通直播间 1:付费直播间 2:拜年祭直播间 |
示例:
查询直播间id=76
的直播间信息
curl -G 'https://api.live.bilibili.com/room/v1/Room/room_init' \
--data-urlencode 'id=76'
查看响应示例:
{
"code": 0,
"msg": "ok",
"message": "ok",
"data": {
"room_id": 14073662,
"short_id": 76,
"uid": 50333369,
"need_p2p": 0,
"is_hidden": false,
"is_locked": false,
"is_portrait": false,
"live_status": 1,
"hidden_till": 0,
"lock_till": 0,
"encrypted": false,
"pwd_verified": false,
"live_time": 1602151186,
"room_shield": 1,
"is_sp": 0,
"special_type": 0
}
}
获取主播信息
请求方式:GET
url参数:
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
uid | num | 目标用户mid | 必要 |
json回复:
根对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 返回值 | 0:成功 1:参数错误 |
msg | str | 错误信息 | 默认为空 |
message | str | 错误信息 | 默认为空 |
data | obj | 信息本体 |
data
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
info | obj | 主播信息 | |
exp | obj | 经验等级 | |
follower_num | num | 主播粉丝数 | |
room_id | num | 直播间id(短号) | |
medal_name | str | 粉丝勋章名 | |
glory_count | num | 主播荣誉数 | |
pendant | str | 直播间头像框url | |
link_group_num | num | 0 | 作用尚不明确 |
room_news | obj | 主播公告 |
info
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
uid | num | 主播mid | |
uname | str | 主播用户名 | |
face | str | 主播头像url | |
official_verify | obj | 认证信息 | |
gender | num | 主播性别 | -1:保密 0:女 1:男 |
info
中的official_verify
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
type | num | 主播认证类型 | -1:无 0:个人认证 1:机构认证 |
desc | str | 主播认证信息 |
exp
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
master_level | obj | 主播等级 |
exp
中的master_level
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
level | num | 当前等级 | |
color | num | 等级框颜色 | |
current | array | 当前等级信息 | |
next | array | 下一等级信息 |
master_level
中的current
数组:
项 | 类型 | 内容 | 备注 |
---|---|---|---|
0 | num | 升级积分 | |
1 | num | 总积分 |
master_level
中的next
数组:
项 | 类型 | 内容 | 备注 |
---|---|---|---|
0 | num | 升级积分 | |
1 | num | 总积分 |
room_news
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
content | str | 公告内容 | |
ctime | str | 公告时间 | |
ctime_text | str | 公告日期 |
示例:
查询直播间mid=76
的主播信息
curl -G 'https://api.live.bilibili.com/live_user/v1/Master/info' \
--data-urlencode 'uid=2'
查看响应示例:
{
"code": 0,
"msg": "",
"message": "",
"data": {
"info": {
"uid": 2,
"uname": "碧诗",
"face": "https://i0.hdslb.com/bfs/face/ef0457addb24141e15dfac6fbf45293ccf1e32ab.jpg",
"official_verify": {
"type": 0,
"desc": "bilibili个人认证:bilibili创始人(站长)"
},
"gender": 1
},
"exp": {
"master_level": {
"level": 30,
"color": 10512625,
"current": [
2870000,
11883810
],
"next": [
3730000,
15613810
]
}
},
"follower_num": 926624,
"room_id": 1024,
"medal_name": "逸国",
"glory_count": 0,
"pendant": "",
"link_group_num": 0,
"room_news": {
"content": "",
"ctime": "",
"ctime_text": ""
}
}
}
批量查询直播间状态
https://api.live.bilibili.com/room/v1/Room/get_status_info_by_uids
请求方式:GET/POST
认证方式:无 (无需添加Cookie)
url参数 (GET方式):
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
uids[] | array | 要查询的主播 mid | 必要 |
正文参数 (POST方式):
参数名 | 类型 | 内容 | 必要性 | 备注 |
---|---|---|---|---|
uids | nums | 要查询的主播 mid | 必要 |
json回复:
根对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 返回值 | 0:成功 -111:csrf校验失败 |
message | str | 错误信息 | 默认为success |
msg | str | 错误信息 | 默认为success |
ttl | num | 1 | |
data | obj | 信息本体 |
data
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
uid | str | 直播间信息 | 实际字段为主播mid |
uid
对象:
字段 | 类型 | 内容 | 备注 |
---|---|---|---|
title | str | 直播间标题 | |
room_id | num | 直播间房间号 | 直播间实际房间号 |
uid | num | 主播mid | |
online | num | 直播间在线人数 | |
live_time | num | 直播持续时长 | |
live_status | num | 直播间开播状态 | 0:未开播 1:正在直播 2:轮播中 |
short_id | num | 直播间房间号 | 直播间短房间号,常见于签约主播 |
area | num | 直播间分区id | |
area_name | str | 直播间分区名 | |
area_v2_id | num | 直播间新版分区id | |
area_v2_name | str | 直播间新版分区名 | |
area_v2_parent_id | num | 直播间父分区id | |
area_v2_parent_name | str | 直播间父分区名 | |
uname | str | 主播用户名 | |
face | str | 主播头像url | |
tag_name | str | 直播间标签 | |
tags | str | 直播间自定标签 | |
cover_from_user | str | 直播间封面url | |
keyframe | str | 直播间关键帧url | |
lock_till | str | 直播间封禁信息 | |
hidden_till | str | 直播间隐藏信息 | |
broadcast_type | num | 直播类型 | 0:普通直播 1:手机直播 |
示例:
查询用户`mid=672328094的直播间信息
# GET方式
curl -G 'https://api.live.bilibili.com/room/v1/Room/get_status_info_by_uids'
--data-urlencode 'uids[]=672328094'
# POST方式
curl 'https://api.live.bilibili.com/room/v1/Room/get_status_info_by_uids' \
-H "Content-Type: application/json" \
-d "{\"uids\": [672328094]}"
查看响应示例:
{
"code": 0,
"msg": "success",
"message": "success",
"data": {
"672328094": {
"title": "【B限】玩个毛线",
"room_id": 22637261,
"uid": 672328094,
"online": 4087370,
"live_time": 0,
"live_status": 2,
"short_id": 0,
"area": 6,
"area_name": "生活娱乐",
"area_v2_id": 371,
"area_v2_name": "虚拟主播",
"area_v2_parent_name": "虚拟主播",
"area_v2_parent_id": 9,
"uname": "嘉然今天吃什么",
"face": "http://i2.hdslb.com/bfs/face/d399d6f5cf7943a996ae96999ba3e6ae2a2988de.jpg",
"tag_name": "日常,学习,萌宠,厨艺,手机直播",
"tags": "",
"cover_from_user": "http://i0.hdslb.com/bfs/live/new_room_cover/f3ed7a782c13086e536ec8bc6e9593bb4918f905.jpg",
"keyframe": "http://i0.hdslb.com/bfs/live-key-frame/keyframe041722000000226372619dr3m8.jpg",
"lock_till": "0000-00-00 00:00:00",
"hidden_till": "0000-00-00 00:00:00",
"broadcast_type": 0
}
}
}
清晰度代码
代码 | 说明 |
---|---|
30000 | 杜比 |
20000 | 4K |
10000 | 原画 |
400 | 蓝光 |
250 | 超清 |
150 | 高清 |
80 | 流畅 |
获取直播间信息
https://api.live.bilibili.com/xlive/web-room/v2/index/getRoomPlayInfo
请求方式:GET
认证方式:无 (无需添加Cookie)
url参数 (GET方式):
参数名 | 类型 | 内容 | 必填 | 备注 |
---|---|---|---|---|
room_id | num | 直播间id | 必要 | |
protocol | str | 直播协议 | 必要 | 0:http_stream 1:http_hls 可多选, 使用英文逗号分隔 |
format | str | 格式 | 必要 | 0:flv 1:ts 2:fmp4 可多选, 使用英文逗号分隔 |
codec | str | 编码格式 | 必要 | 0:AVC 1:HEVC 可多选, 使用英文逗号分隔 |
qn | num | 清晰度编码 | 默认150 清晰度代码 |
|
platform | str | web |
||
ptype | num | 8 |
||
dolby | num | 5 |
||
panorama | num | 1 |
json回复:
根对象:
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
code | num | 响应码 | 0:成功 1002002:参数错误 |
message | str | 0 | |
ttl | num | 1 | |
data | obj | 信息本体 |
data
对象:
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
room_id | num | 直播间id | |
short_id | num | 直播间短id | |
uid | num | 主播uid | |
is_hidden | bool | 直播间是否被隐藏 | |
is_locked | bool | 直播间是否被锁定 | |
is_portrait | bool | 是否竖屏 | |
live_status | num | 直播状态 | 0:未开播 1:直播中 2:轮播中 |
hidden_till | num | 隐藏结束时间 | |
lock_till | num | 封禁结束时间 | 秒级时间戳 |
encrypted | bool | 直播间为加密直播间 | |
pwd_verified | bool | 是否通过密码验证 | 当encrypted 为true 时才有意义 |
live_time | num | 本次开播时间 | 秒级时间戳 |
room_shield | num | ||
all_special_types | array | ||
playurl_info | obj | 直播流信息 |
playurl_info
对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
conf_json | str | ||
playurl | obj |
playurl
对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
cid | num | 直播间id | |
g_qn_desc | array | 清晰度列表 | |
stream | array | 直播流信息 | |
p2p_data | obj | ||
dolby_qn |
g_qn_desc
数组中的对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
qn | num | 清晰度代码 | 清晰度代码 |
desc | str | 清晰度描述 | |
hdr_desc | str | ||
attr_desc |
stream
数组中的对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
protocol_name | str | 协议名 | |
format | array | 格式列表 |
format
数组中的对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
format_name | str | 格式名 | |
codec | array | 编码列表 |
codec
数组中的对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
codec_name | str | 编码名 | |
current_qn | num | 当前清晰度编码 | 清晰度代码 |
accept_qn | array | 可用清晰度编码列表 | 清晰度代码 |
base_url | str | 播放源路径 | |
url_info | array | 域名信息列表 | |
hdr_qn | null | ||
dolby_type | num | ||
attr_name | str |
url_info
数组中的对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
host | str | 域名 | |
extra | str | URL参数 | |
stream_ttl | num |
p2p_data
对象
字段名 | 类型 | 内容 | 备注 |
---|---|---|---|
p2p | bool | ||
p2p_type | num | ||
m_p2p | bool | ||
m_servers | null |
示例:
查询room_id=3的直播间信息
curl -L -X GET 'https://api.live.bilibili.com/xlive/web-room/v2/index/getRoomPlayInfo?room_id=3&protocol=0,1&format=0,1,2&codec=0,1&qn=10000'
查看响应示例:
{
"code": 0,
"message": "0",
"ttl": 1,
"data": {
"room_id": 23058,
"short_id": 3,
"uid": 11153765,
"is_hidden": false,
"is_locked": false,
"is_portrait": false,
"live_status": 1,
"hidden_till": 0,
"lock_till": 0,
"encrypted": false,
"pwd_verified": true,
"live_time": 1671425336,
"room_shield": 1,
"all_special_types": [],
"playurl_info": {
"conf_json": "{\"cdn_rate\":10000,\"report_interval_sec\":150}",
"playurl": {
"cid": 23058,
"g_qn_desc": [
{
"qn": 30000,
"desc": "杜比",
"hdr_desc": "",
"attr_desc": null
},
{
"qn": 20000,
"desc": "4K",
"hdr_desc": "",
"attr_desc": null
},
{
"qn": 10000,
"desc": "原画",
"hdr_desc": "",
"attr_desc": null
},
{
"qn": 400,
"desc": "蓝光",
"hdr_desc": "HDR",
"attr_desc": null
},
{
"qn": 250,
"desc": "超清",
"hdr_desc": "HDR",
"attr_desc": null
},
{
"qn": 150,
"desc": "高清",
"hdr_desc": "",
"attr_desc": null
},
{
"qn": 80,
"desc": "流畅",
"hdr_desc": "",
"attr_desc": null
}
],
"stream": [
{
"protocol_name": "http_stream",
"format": [
{
"format_name": "flv",
"codec": [
{
"codec_name": "avc",
"current_qn": 10000,
"accept_qn": [
10000,
150
],
"base_url": "/live-bvc/462997/live_11153765_9369560.flv?",
"url_info": [
{
"host": "https://cn-hbcd-cu-02-20.bilivideo.com",
"extra": "expires=1674103815&pt=web&deadline=1674103815&len=0&oi=1963941079&platform=web&qn=10000&trid=1000061f434c07ac4f4184820bfb141e75e8&uipk=100&uipv=100&nbs=1&uparams=cdn,deadline,len,oi,platform,qn,trid,uipk,uipv,nbs&cdn=cn-gotcha01&upsig=f494aa9e92e24943061fe5082494ec44&sk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
"stream_ttl": 3600
}
],
"hdr_qn": null,
"dolby_type": 0,
"attr_name": ""
}
]
}
]
},
{
"protocol_name": "http_hls",
"format": [
{
"format_name": "ts",
"codec": [
{
"codec_name": "avc",
"current_qn": 10000,
"accept_qn": [
10000,
150
],
"base_url": "/live-bvc/462997/live_11153765_9369560.m3u8?",
"url_info": [
{
"host": "https://cn-hbcd-cu-02-20.bilivideo.com",
"extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1003061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha01&sign=4f9bcec18e3afdca04b31ffb285ec915&sk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
"stream_ttl": 3600
}
],
"hdr_qn": null,
"dolby_type": 0,
"attr_name": ""
}
]
},
{
"format_name": "fmp4",
"codec": [
{
"codec_name": "avc",
"current_qn": 10000,
"accept_qn": [
10000,
150
],
"base_url": "/live-bvc/462997/live_11153765_9369560/index.m3u8?",
"url_info": [
{
"host": "https://cn-hbcd-cu-02-20.bilivideo.com",
"extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1007061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha01&sign=cc57dce528316d8389f2f34e7bd15f5c&sk=a99391b8b4d5779b2e32e41dbc989d2d&flvsk=33541455720f64c7671bc1480acfb176&p2p_type=1&src=57345&sl=1&free_type=0&sid=cn-hbcd-cu-02-20&chash=1&sche=ban&bvchls=1&score=12&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=1",
"stream_ttl": 3600
},
{
"host": "https://c1--cn-gotcha208.bilivideo.com",
"extra": "expires=1674103815&len=0&oi=1963941079&pt=web&qn=10000&trid=1007061f434c07ac4f4184820bfb141e75e8&sigparams=cdn,expires,len,oi,pt,qn,trid&cdn=cn-gotcha208&sign=2ff96adf5056c8dbee546955260fc2df&sk=a99391b8b4d5779b2e32e41dbc989d2d&p2p_type=1&src=57345&sl=1&free_type=0&pp=rtmp&machinezone=jd&source=onetier&trace=0&site=92e80b6f3ebfd393e7d1c1e2e648d9c1&order=2",
"stream_ttl": 3600
}
],
"hdr_qn": null,
"dolby_type": 0,
"attr_name": ""
}
]
}
]
}
],
"p2p_data": {
"p2p": true,
"p2p_type": 1,
"m_p2p": false,
"m_servers": null
},
"dolby_qn": null
}
}
}
}