增加 DASH 方式下部分域的说明 (#277)

* 增加 DASH 方式下部分域的说明

* 修改 DASH 中的部分描述,使其更加明确

* -
This commit is contained in:
∀Z 2021-11-14 17:06:12 +08:00 committed by GitHub
parent 2f57550ac4
commit de0cf01a36
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -393,12 +393,12 @@ curl -G 'http://api.bilibili.com/x/player/playurl' \
| height | num | 视频高度 | 单位为像素<br />仅视频有效 |
| frameRate | str | 视频帧率 | 仅视频有效 |
| frame_rate | str | **同上** | |
| sar | str | 1:1 | 作用尚不明确 |
| startWithSap | num | 1 | 作用尚不明确 |
| sar | str | 1:1 | Sample Aspect Ratio单个像素的宽高比 |
| startWithSap | num | 1 | Stream Access Point |
| start_with_sap | num | **同上** | |
| SegmentBase | obj | | 作用尚不明确 |
| SegmentBase | obj | 见下表 | url 对应 m4s 文件中,头部的位置 |
| segment_base | obj | **同上** | |
| codecid | num | 7 | 作用尚不明确 |
| codecid | num | 视频: 7或12<br />音频: 0 | 7=AVC12=HEVC <br />出处是 FLV 格式里 VideoTag 中的 CodecId 域;<br />FLV 标准不支持 HEVC但 codecId 值为 12 是各厂共识 |
`video`数组中的对象中的`backup_url`数组:
@ -408,12 +408,15 @@ curl -G 'http://api.bilibili.com/x/player/playurl' \
| n | str | 备用视频/音频流url (n+1) | |
| …… | str | …… | |
`video`数组中的对象中的`backup_url`对象:
`video`数组中的对象中的`SegmentBase`对象:
| 字段 | 类型 | 内容 | 备注 |
| -------------- | ---- | --------------------------------------------- | ------------------------------------------------------------ |
| initialization | str | \<init-first\>-\<init-last\><br />0-821 | ftyp (file type) box 加上 moov box 在 m4s 文件中的范围(单位为 bytes<br />如 0-821 表示开头 820 个字节 |
| index_range | str | \<sidx-first\>-\<sidx-last\><br />822-1309 | sidx (segment index) box 在 m4s 文件中的范围(单位为 bytes<br />sidx 的核心是一个数组,记录了各关键帧的时间戳及其在文件中的位置,<br />其作用是索引 (拖进度条) |
> 常规 MP4 文件的索引信息放在 moov box 中,其中包含每一帧 (不止是关键帧) 的一些信息。在 DASH 方式下,关键帧信息移到了 sidx box 里,其他的则分散到了各个 moof (movie fragment) box 中。<br>对这里的文件结构感兴趣的,可以参考标准文档 ISO/IEC 14496-12如果不想那么深入的话可以百度「MP4 文件结构」。
| 字段 | 类型 | 内容 | 备注 |
| -------------- | ---- | ------ | ------------ |
| index_range | str | | 作用尚不明确 |
| initialization | str | | 作用尚不明确 |
**示例:**