diff --git a/bangumi/videostream_url.md b/bangumi/videostream_url.md index 25aaa0a..f2d6ed5 100644 --- a/bangumi/videostream_url.md +++ b/bangumi/videostream_url.md @@ -17,20 +17,20 @@ B站的番剧视频为http流媒体,需要对应的api以视频id获取取流u **注:该值在dash模式且非下载模式时无效** -| 值 | 含义 | 备注 | -| ---- | -------------- | ------------------------------------------------------------ | -| 6 | 240P 极速 | 仅mp4方式支持 | -| 16 | 360P 流畅 | | -| 32 | 480P 清晰 | | -| 64 | 720P 高清 | web端默认值
B站前端需要登录才能选择,但是直接发送请求可以不登录就拿到720P的取流地址
**无720P时则为720P60** | -| 74 | 720P60 高帧率 | 需要认证登录账号 | -| 80 | 1080P 高清 | TV端与APP端默认值
需要认证登录账号 | -| 112 | 1080P+ 高码率 | 大多情况需求认证大会员账号 | -| 116 | 1080P60 高帧率 | 大多情况需求认证大会员账号 | -| 120 | 4K 超清 | 需要`fnval&128=128`且`fourk=1`
大多情况需求认证大会员账号 | -| 125 | HDR 真彩色 | 仅支持dash方式
需要`fnval&64=64`
大多情况需求认证大会员账号 | -| 126 | 杜比视界 | 仅支持dash方式
需要`fnval&512=512`
大多情况需求认证大会员账号 | -| 127 | 8K 超高清 | 仅支持dash方式
需要`fnval&1024=1024`
大多情况需求认证大会员账号 | +| 值 | 含义 | 备注 | +|-----|-------------|-----------------------------------------------------------------------------| +| 6 | 240P 极速 | 仅mp4方式支持 | +| 16 | 360P 流畅 | | +| 32 | 480P 清晰 | | +| 64 | 720P 高清 | web端默认值
B站前端需要登录才能选择,但是直接发送请求可以不登录就拿到720P的取流地址
**无720P时则为720P60** | +| 74 | 720P60 高帧率 | 需要认证登录账号 | +| 80 | 1080P 高清 | TV端与APP端默认值
需要认证登录账号 | +| 112 | 1080P+ 高码率 | 大多情况需求认证大会员账号 | +| 116 | 1080P60 高帧率 | 大多情况需求认证大会员账号 | +| 120 | 4K 超清 | 需要`fnval&128=128`且`fourk=1`
大多情况需求认证大会员账号 | +| 125 | HDR 真彩色 | 仅支持dash方式
需要`fnval&64=64`
大多情况需求认证大会员账号 | +| 126 | 杜比视界 | 仅支持dash方式
需要`fnval&512=512`
大多情况需求认证大会员账号 | +| 127 | 8K 超高清 | 仅支持dash方式
需要`fnval&1024=1024`
大多情况需求认证大会员账号 | 例如:请求1080P+的视频,则`qn=112` @@ -42,24 +42,32 @@ B站的番剧视频为http流媒体,需要对应的api以视频id获取取流u 该代码为二进制属性位,如需组合功能需要使用`OR`运算结合一下数值 -| 值 | 含义 | 备注 | -| ---- | ------------------ | ------------------------------------------------------------ | -| 0 | flv格式 | 仅H.264编码
部分老视频存在分段现象
与mp4格式及dash格式互斥 | -| 1 | mp4格式 | 仅H.264编码
不存在视频分段
与flv格式及dash格式互斥 | -| 16 | dash格式 | H.264编码或H.265编码
部分老视频的清晰度上限低于flv格式
与mp4格式及flv格式互斥 | -| 64 | 是否需求 HDR 视频 | 必须为dash格式
需要`qn=125`
大多情况需求认证大会员账号 | -| 128 | 是否需求 4K 分辨率 | 该值与`fourk`字段协同作用
需要`qn=120`
大多情况需求认证大会员账号 | -| 256 | 是否需求杜比音频 | 必须为dash格式
大多情况需求认证大会员账号 | -| 512 | 是否需求杜比视界 | 必须为dash格式
大多情况需求认证大会员账号 | -| 1024 | 是否需求 8K 分辨率 | 必须为dash格式
需要`qn=127`
大多情况需求认证大会员账号 | -| 2048 | 是否需求 av1 编码 | 必须为dash格式 | +| 值 | 含义 | 备注 | +|------|-------------|-------------------------------------------------------------| +| 0 | flv格式 | 仅H.264编码
部分老视频存在分段现象
与mp4格式及dash格式互斥 | +| 1 | mp4格式 | 仅H.264编码
不存在视频分段
与flv格式及dash格式互斥 | +| 16 | dash格式 | H.264编码或H.265编码
部分老视频的清晰度上限低于flv格式
与mp4格式及flv格式互斥 | +| 64 | 是否需求 HDR 视频 | 必须为dash格式
需要`qn=125`
大多情况需求认证大会员账号 | +| 128 | 是否需求 4K 分辨率 | 该值与`fourk`字段协同作用
需要`qn=120`
大多情况需求认证大会员账号 | +| 256 | 是否需求杜比音频 | 必须为dash格式
大多情况需求认证大会员账号 | +| 512 | 是否需求杜比视界 | 必须为dash格式
大多情况需求认证大会员账号 | +| 1024 | 是否需求 8K 分辨率 | 必须为dash格式
需要`qn=127`
大多情况需求认证大会员账号 | +| 2048 | 是否需求 av1 编码 | 必须为dash格式 | 例如:请求dash格式且需要HDR的视频流,则`fnval=16|64=80` +## 视频编码代码 + +| 值 | 含义 | 备注 | +|-----|--------|----------| +| 7 | AVC编码 | 8K视频无此格式 | +| 12 | HEVC编码 | | +| 13 | AV1编码 | | + ## 视频伴音音质代码 -| 值 | 含义 | -| ----- | ---- | +| 值 | 含义 | +|-------|------| | 30216 | 64K | | 30232 | 132K | | 30280 | 192K | @@ -92,17 +100,19 @@ B站的番剧视频为http流媒体,需要对应的api以视频id获取取流u **url参数:** -| 参数名 | 类型 | 内容 | 必要性 | 备注 | -| ------ | ---- | ---------------- | ------------ | ------------------------------------------------------------ | -| avid | num | 稿件avid | 非必要 | | -| bvid | str | 稿件bvid | 非必要 | | -| ep_id | num | 稿件epid | 必要(可选) | ep_id与cid任选一个 | -| cid | num | 视频cid | 必要(可选) | ep_id与cid任选一个 | -| qn | num | 视频清晰度选择 | 非必要 | 未登录默认32(480P)
登录默认64(720P)
**值含义见上表**
注:dash方式无效 | -| fnval | num | 视频获取方式选择 | 非必要 | 默认为0
0 2:flv方式(可能会有分段)
1:低清mp4方式(仅240P与360P,且限速65K/s)
16 80:dash方式(音视频分流,支持H.265) | -| fnver | num | 0 | 非必要 | 固定为0 | -| fourk | num | 是否允许4K视频 | 非必要 | 默认为0
画质最高1080P:0
画质最高4K:1 | -| session | str | | 非必要 | 从视频播放页的网页源码中获取 | +| 参数名 | 类型 | 内容 | 必要性 | 备注 | +|---------------|-----|----------|--------|--------------------------------------------------------------------------------------------------| +| avid | num | 稿件avid | 非必要 | | +| bvid | str | 稿件bvid | 非必要 | | +| ep_id | num | 稿件epid | 必要(可选) | ep_id与cid任选一个 | +| cid | num | 视频cid | 必要(可选) | ep_id与cid任选一个 | +| qn | num | 视频清晰度选择 | 非必要 | 未登录默认32(480P)
登录默认64(720P)
**值含义见上表**
注:dash方式无效 | +| fnval | num | 视频获取方式选择 | 非必要 | 默认为0
0 2:flv方式(可能会有分段)
1:低清mp4方式(仅240P与360P,且限速65K/s)
16 80:dash方式(音视频分流,支持H.265) | +| fnver | num | 0 | 非必要 | 固定为0 | +| fourk | num | 是否允许4K视频 | 非必要 | 默认为0
画质最高1080P:0
画质最高4K:1 | +| session | str | | 非必要 | 从视频播放页的网页源码中获取 | +| from_client | str | BROWSER | 非必要 | | +| drm_tech_type | num | 2 | 非必要 | | @@ -110,74 +120,99 @@ B站的番剧视频为http流媒体,需要对应的api以视频id获取取流u 根对象: -| 字段 | 类型 | 内容 | 备注 | -| ------- | ----------------------------- | -------- | ---------------------------------------------- | -| code | num | 返回值 | 0:成功
-400:请求错误
-404:无视频 | -| message | str | 错误信息 | 成功为success | -| result | 有效时:obj
无效时:null | 数据本体 | | +| 字段 | 类型 | 内容 | 备注 | +|---------|-----------------------|------|------------------------------------| +| code | num | 返回值 | 0:成功
-400:请求错误
-404:无视频 | +| message | str | 错误信息 | 成功为success | +| result | 有效时:obj
无效时:null | 数据本体 | | `result`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------------ | ------ | ------------------------ | ---------------------------------------- | -| from | str | local | 作用尚不明确 | -| result | str | suee | 作用尚不明确 | -| message | str | 空 | 作用尚不明确 | -| quality | num | 当前的视频分辨率代码 | **值含义见上表** | -| format | str | 视频格式 | | -| timelength | num | 视频长度 | 单位为毫秒
不同分辨率/格式可能有略微差异 | -| accept_format | str | 视频支持的全部格式 | 每项用`,`分隔 | -| accept_description | array | 视频支持的分辨率列表 | | -| accept_quality | array | 视频支持的分辨率代码列表 | **值含义见上表** | -| video_codecid | num | 固定值:7 | 作用尚不明确 | -| seek_param | str | 固定值:start | 作用尚不明确 | -| seek_type | str | 固定值:offset | 作用尚不明确 | -| durl | array | 视频分段 | **注:仅flv/mp4存在此项** | -| dash | obj | dash音视频流信息 | **注:仅dash存在此项** | -| support_formats | array | 支持格式的详细信息 | | +| 字段 | 类型 | 内容 | 备注 | +|--------------------|-------|-----------------------------------|----------------------------| +| code | num | 0 | 作用尚不明确 | +| is_preview | num | 0 | 作用尚不明确 | +| fnver | num | 请求时提供的fnver | | +| fnval | num | 请求时提供的fnval | | +| video_project | bool | true | | +| type | str | 视频流类型 | DASH | +| bp | num | 是否可以承包 | 0 | +| vip_type | num | 当前用户大会员类型 | | +| vip_status | num | 当前用户大会员状态 | | +| is_drm | bool | false | | +| no_rexcode | num | 0 | | +| has_paid | bool | false | | +| status | num | 2 | | +| from | str | local | 作用尚不明确 | +| result | str | suee | 作用尚不明确 | +| message | str | 空 | 作用尚不明确 | +| quality | num | 当前的视频分辨率代码 | **值含义见上表** | +| format | str | 视频格式 | | +| timelength | num | 视频长度 | 单位为毫秒
不同分辨率/格式可能有略微差异 | +| accept_format | str | 视频支持的全部格式 | 每项用`,`分隔 | +| accept_description | array | 视频支持的分辨率列表 | | +| accept_quality | array | 视频支持的分辨率代码列表 | **值含义见上表** | +| video_codecid | num | 默认选择视频流的编码id | 见**视频编码代码** | +| seek_param | str | 固定值:start | 作用尚不明确 | +| seek_type | str | offset(dash、flv)
second(mp4) | 作用尚不明确 | +| durl | array | 视频分段 | **注:仅flv/mp4存在此项** | +| dash | obj | dash音视频流信息 | **注:仅dash存在此项** | +| support_formats | array | 支持格式的详细信息 | | +| clip_info_list | array | | 空,待补充 | +| record_info | obj | | 备案信息 | `result`中的`accept_description`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | ---- | -| 0 | str | 分辨率名称1 | | -| n | str | 分辨率名称(n+1) | | -| …… | str | …… | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|------------|-----| +| 0 | str | 分辨率名称1 | | +| n | str | 分辨率名称(n+1) | | +| …… | str | …… | | `result`中的`accept_quality`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | ---- | -| 0 | str | 分辨率代码1 | | -| n | str | 分辨率代码(n+1) | | -| …… | str | …… | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|------------|-----| +| 0 | str | 分辨率代码1 | | +| n | str | 分辨率代码(n+1) | | +| …… | str | …… | | `result`中的`support_formats`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | ---- | -| 0 | obj | 播放格式详细信息1 | | -| n | obj | 播放格式详细信息(n+1) | | -| …… | obj | …… | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|---------------|-----| +| 0 | obj | 播放格式详细信息1 | | +| n | obj | 播放格式详细信息(n+1) | | +| …… | obj | …… | | `support_formats`数组中的对象: -| 字段 | 类型 | 内容 | 备注 | -| ---------- | ------ | ------------ | ---------------------------------- | -| quality | num | 视频清晰度代码 | | -| format | str | 视频格式 | | -| new_description | str | 格式描述 | | -| display_desc | str | 格式描述 | | -| superscript | str | (?) | | -| codecs | array | (?) | | +| 字段 | 类型 | 内容 | 备注 | +|-----------------|-------|---------|-----| +| quality | num | 视频清晰度代码 | | +| format | str | 视频格式 | | +| new_description | str | 格式描述 | | +| description | str | 格式描述 | | +| display_desc | str | 格式描述 | | +| superscript | str | (?) | | +| codecs | array | 编码格式列表 | | +| need_login | bool | 需要登录 | | +| need_vip | bool | 需要大会员 | | +| quality | num | 清晰度编号 | | `support_formats`中的`codecs`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | --------------- | ---- | -| 0 | str | (?) | | -| 1 | str | (?) | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|------|-----------------------------| +| 0 | str | 编码格式 | 如:avc1.640032,意为AVC编码 | +| 1 | str | 编码格式 | 如:hev1.1.6.L153.90,意为HEVC编码 | +`result`中的`record_info`对象: + +| 项 | 类型 | 内容 | 备注 | +|-------------|-----|------|-----------------------| +| record_icon | str | | | +| record | str | 显示文案 | 登记号:10417060172092207 | --- @@ -185,30 +220,30 @@ B站的番剧视频为http流媒体,需要对应的api以视频id获取取流u `result`中的`durl`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ----------------- | ------------------------- | -| 0 | obj | 视频分段1信息 | **注:仅flv方式具有分段** | -| n | obj | 视频分段(n+1)信息 | | -| …… | obj | …… | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|-------------|------------------| +| 0 | obj | 视频分段1信息 | **注:仅flv方式具有分段** | +| n | obj | 视频分段(n+1)信息 | | +| …… | obj | …… | | `durl`数组中的对象: -| 字段 | 类型 | 内容 | 备注 | -| ---------- | ------ | ------------ | ---------------------------------- | -| order | num | 视频分段序号 | 某些视频会分为多个片段(从1顺序增长) | -| length | num | 视频长度 | 单位为毫秒 | -| size | num | 视频大小 | 单位为Byte | -| vhead | str | 空 | 作用尚不明确 | -| url | str | 视频流url | **注:url内容存在转义符**
有效时间为120min | -| backup_url | array | 备用视频流 | | +| 字段 | 类型 | 内容 | 备注 | +|------------|-------|--------|-----------------------------------| +| order | num | 视频分段序号 | 某些视频会分为多个片段(从1顺序增长) | +| length | num | 视频长度 | 单位为毫秒 | +| size | num | 视频大小 | 单位为Byte | +| vhead | str | 空 | 作用尚不明确 | +| url | str | 视频流url | **注:url内容存在转义符**
有效时间为120min | +| backup_url | array | 备用视频流 | | `durl`数组中的对象中的`backup_url`数组: -| 项 | 类型 | 内容 | 备注 | -| ---- | ---- | ------------------- | ----------------------------------------------- | -| 0 | str | 备用视频流url 1 | **注:url内容存在转义符**
有效时间为120min | -| n | str | 备用视频流url (n+1) | | -| …… | str | …… | | +| 项 | 类型 | 内容 | 备注 | +|-----|-----|----------------|-----------------------------------| +| 0 | str | 备用视频流url 1 | **注:url内容存在转义符**
有效时间为120min | +| n | str | 备用视频流url (n+1) | | +| …… | str | …… | | **示例:** diff --git a/video/videostream_url.md b/video/videostream_url.md index 677c090..866bb30 100644 --- a/video/videostream_url.md +++ b/video/videostream_url.md @@ -129,26 +129,26 @@ B站的视频为http流媒体,需要对应的api以视频id获取取流url, `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------------ | ------ | ------------------------ | ---------------------------------------- | -| from | str | local | 作用尚不明确 | -| result | str | suee | 作用尚不明确 | -| message | str | 空 | 作用尚不明确 | -| quality | num | 当前的视频分辨率代码 | **值含义见上表** | -| format | str | 视频格式 | | -| timelength | num | 视频长度(毫秒值) | 单位为毫秒
不同分辨率/格式可能有略微差异 | -| accept_format | str | 视频支持的全部格式 | 每项用`,`分隔 | -| accept_description | array | 视频支持的分辨率列表 | | -| accept_quality | array | 视频支持的分辨率代码列表 | **值含义见上表** | -| video_codecid | num | 固定值:7 | 作用尚不明确 | -| seek_param | str | 固定值:start | 作用尚不明确 | -| seek_type | str | offset(dash、flv)
second(mp4) | 作用尚不明确 | -| durl | array | 视频分段**注:仅flv、mp4存在此项** | **注:仅flv/mp4存在此项** | -| dash | obj | dash音视频流信息 | **注:仅dash存在此项** | -| support_formats | array | 支持格式的详细信息 | | -| high_format | | null | | -| last_play_time | num | 上次播放进度 | 毫秒值 | -| last_play_cid | num | 上次播放分p的cid | | +| 字段 | 类型 | 内容 | 备注 | +|--------------------|-------|-----------------------------------|----------------------------| +| from | str | local | 作用尚不明确 | +| result | str | suee | 作用尚不明确 | +| message | str | 空 | 作用尚不明确 | +| quality | num | 当前的视频分辨率代码 | **值含义见上表** | +| format | str | 视频格式 | | +| timelength | num | 视频长度(毫秒值) | 单位为毫秒
不同分辨率/格式可能有略微差异 | +| accept_format | str | 视频支持的全部格式 | 每项用`,`分隔 | +| accept_description | array | 视频支持的分辨率列表 | | +| accept_quality | array | 视频支持的分辨率代码列表 | **值含义见上表** | +| video_codecid | num | 默认选择视频流的编码id | 见**视频编码代码** | +| seek_param | str | 固定值:start | 作用尚不明确 | +| seek_type | str | offset(dash、flv)
second(mp4) | 作用尚不明确 | +| durl | array | 视频分段 | **注:仅flv/mp4存在此项** | +| dash | obj | dash音视频流信息 | **注:仅dash存在此项** | +| support_formats | array | 支持格式的详细信息 | | +| high_format | | null | | +| last_play_time | num | 上次播放进度 | 毫秒值 | +| last_play_cid | num | 上次播放分p的cid | | `data`中的`accept_description`数组: