ZigZag Sin
登 陆
上一篇:stsz Box 下一篇:stsc Box

stco Box

Time
2022-2-21 11:39 阅读 1473

具体 Box 分析

Stco Box

官方定义

image-20211231221710376

传送门:MP4 文档 P31页

介绍

这个 Box 包含的信息是对应 Chunk 的在文件里的偏移量,然后根据其它表的关联关系就可以读取每个 Sample 的数据。

结构图:

![](./assets/Stco Box.png)

工具分析

image-20211231222221462

这里对应 count 就是总的 Chunk 数量,里面对应的是每一个 Chunk Offset。

image-20211231223709016

其中该 Box 是 Full Box,后面有四字节的 version 和 flag 字段,其中 flag 默认值用0,这里分析略过,这里就直接解析 Data 的字段。

字段大小实际值(16进制)含义
entry count400 00 00 62chunk的总个数
chunk offset4 每个chunk在文件中的偏移量(这里的偏移量不是相对的,都是与开头的偏移量)

代码定义

// BaseBox.h  

// ...
// 其他 Box 的定义

class TimeStcoBox : public BaseBox {
public:
    Timebyte version = 0;
    Timebyte flags = 0;
    unsigned int entry_count=0; // chunk的总个数
    unsigned int chunk_offset = 0; 

    TimeStcoBox(BoxHeader h, Timebyte * d): BaseBox(h, d){};
};

实现

// TimeStcoBox.cpp



上一篇:stsz Box 下一篇:stsc Box
给我买个键盘吧。。。求打赏。。。
欢迎加群,一起交流~~~